@continuumdao/continuum-node-sdk 1.3.28 → 1.3.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-host-catalog.json +2 -0
- package/dist/core/chart/analysis/analysis-agent-view.d.ts.map +1 -1
- package/dist/core/chart/analysis/analysis-agent-view.js +34 -0
- package/dist/core/chart/analysis/analysis-agent-view.js.map +1 -1
- package/dist/core/chart/analysis/analysis-catalog.d.ts.map +1 -1
- package/dist/core/chart/analysis/analysis-catalog.js +16 -0
- package/dist/core/chart/analysis/analysis-catalog.js.map +1 -1
- package/dist/core/chart/analysis/analyze-tools.d.ts +47 -0
- package/dist/core/chart/analysis/analyze-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/analyze-tools.js +28 -9
- package/dist/core/chart/analysis/analyze-tools.js.map +1 -1
- package/dist/core/chart/analysis/bollinger-analyze-tools.d.ts +101 -0
- package/dist/core/chart/analysis/bollinger-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/bollinger-analyze-tools.js +289 -0
- package/dist/core/chart/analysis/bollinger-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/bollinger-highlight.d.ts +29 -0
- package/dist/core/chart/analysis/bollinger-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/bollinger-highlight.js +39 -0
- package/dist/core/chart/analysis/bollinger-highlight.js.map +1 -0
- package/dist/core/chart/analysis/candlestick-patterns-tools.d.ts +2 -0
- package/dist/core/chart/analysis/candlestick-patterns-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/candlestick-patterns-tools.js +16 -2
- package/dist/core/chart/analysis/candlestick-patterns-tools.js.map +1 -1
- package/dist/core/chart/analysis/chart-patterns-drawings-tools.d.ts +1 -0
- package/dist/core/chart/analysis/chart-patterns-drawings-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/chart-patterns-tools.d.ts +2 -0
- package/dist/core/chart/analysis/chart-patterns-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/chart-patterns-tools.js +2 -0
- package/dist/core/chart/analysis/chart-patterns-tools.js.map +1 -1
- package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts +1 -0
- package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/key-fib-drawings-tools.js +48 -3
- package/dist/core/chart/analysis/key-fib-drawings-tools.js.map +1 -1
- package/dist/core/chart/analysis/key-level-drawings-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/key-level-drawings-tools.js +12 -1
- package/dist/core/chart/analysis/key-level-drawings-tools.js.map +1 -1
- package/dist/core/chart/analysis/moving-averages-analyze-tools.d.ts +116 -0
- package/dist/core/chart/analysis/moving-averages-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/moving-averages-analyze-tools.js +205 -0
- package/dist/core/chart/analysis/moving-averages-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/moving-averages-highlight.d.ts +30 -0
- package/dist/core/chart/analysis/moving-averages-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/moving-averages-highlight.js +77 -0
- package/dist/core/chart/analysis/moving-averages-highlight.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.d.ts +77 -0
- package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.js +163 -0
- package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.js +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/build-trade.d.ts +4 -1
- package/dist/core/chart/analysis/trade-setups/build-trade.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/build-trade.js +36 -12
- package/dist/core/chart/analysis/trade-setups/build-trade.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.d.ts +3 -3
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.js +12 -14
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/chart-data-purpose.d.ts +20 -0
- package/dist/core/chart/analysis/trade-setups/chart-data-purpose.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/chart-data-purpose.js +207 -0
- package/dist/core/chart/analysis/trade-setups/chart-data-purpose.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.d.ts +7 -1
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.js +24 -2
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/entry-proximity-atr.d.ts +3 -0
- package/dist/core/chart/analysis/trade-setups/entry-proximity-atr.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/entry-proximity-atr.js +32 -0
- package/dist/core/chart/analysis/trade-setups/entry-proximity-atr.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/index.d.ts +3 -0
- package/dist/core/chart/analysis/trade-setups/index.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/index.js +3 -0
- package/dist/core/chart/analysis/trade-setups/index.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.d.ts +8 -0
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.js +33 -5
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.d.ts +7 -0
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.js +47 -20
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.d.ts +110 -0
- package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.js +330 -0
- package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.d.ts +10 -1
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.js +75 -34
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/shared.d.ts +1 -1
- package/dist/core/chart/analysis/trade-setups/shared.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/shared.js +4 -0
- package/dist/core/chart/analysis/trade-setups/shared.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.d.ts +8 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.js +9 -1
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.d.ts +16 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.js +24 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.d.ts +9 -5
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.js +24 -8
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts +21 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.js +52 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-idea.d.ts +20 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-idea.js +20 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.d.ts +2 -0
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.js +5 -0
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.d.ts +122 -0
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.js +231 -0
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.js +12 -3
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.js.map +1 -1
- package/dist/core/chart/analysis/trend-line-menu-summary.d.ts +9 -2
- package/dist/core/chart/analysis/trend-line-menu-summary.d.ts.map +1 -1
- package/dist/core/chart/analysis/trend-line-menu-summary.js +74 -6
- package/dist/core/chart/analysis/trend-line-menu-summary.js.map +1 -1
- package/dist/core/chart/display-downsample.d.ts +1 -1
- package/dist/core/chart/display-downsample.d.ts.map +1 -1
- package/dist/core/chart/display-downsample.js +21 -0
- package/dist/core/chart/display-downsample.js.map +1 -1
- package/dist/core/chart/overlay-schemas.d.ts +3 -0
- package/dist/core/chart/overlay-schemas.d.ts.map +1 -1
- package/dist/core/chart/overlay-schemas.js +2 -0
- package/dist/core/chart/overlay-schemas.js.map +1 -1
- package/dist/core/chart/overlays.d.ts.map +1 -1
- package/dist/core/chart/overlays.js +21 -0
- package/dist/core/chart/overlays.js.map +1 -1
- package/dist/core/chart/prepare-core.d.ts.map +1 -1
- package/dist/core/chart/prepare-core.js +20 -1
- package/dist/core/chart/prepare-core.js.map +1 -1
- package/dist/core/chart/prepare-from-rows.d.ts +2 -0
- package/dist/core/chart/prepare-from-rows.d.ts.map +1 -1
- package/dist/core/chart/schemas.d.ts +9 -0
- package/dist/core/chart/schemas.d.ts.map +1 -1
- package/dist/core/chart/schemas.js +1 -1
- package/dist/core/chart/schemas.js.map +1 -1
- package/dist/core/chart-patterns/recommendation.d.ts +1 -0
- package/dist/core/chart-patterns/recommendation.d.ts.map +1 -1
- package/dist/core/chart-patterns/recommendation.js +7 -1
- package/dist/core/chart-patterns/recommendation.js.map +1 -1
- package/dist/core/chart-patterns/scan.d.ts.map +1 -1
- package/dist/core/chart-patterns/scan.js +4 -1
- package/dist/core/chart-patterns/scan.js.map +1 -1
- package/dist/core/chart-patterns/types.d.ts +2 -0
- package/dist/core/chart-patterns/types.d.ts.map +1 -1
- package/dist/core/mpc/schemas.d.ts +4 -0
- package/dist/core/mpc/schemas.d.ts.map +1 -1
- package/dist/core/mpc/schemas.js +3 -0
- package/dist/core/mpc/schemas.js.map +1 -1
- package/dist/core/mpc/sign-request-utils.d.ts +6 -0
- package/dist/core/mpc/sign-request-utils.d.ts.map +1 -1
- package/dist/core/mpc/sign-request-utils.js +47 -0
- package/dist/core/mpc/sign-request-utils.js.map +1 -1
- package/dist/core/mpc/sign-result-summary.d.ts.map +1 -1
- package/dist/core/mpc/sign-result-summary.js +5 -1
- package/dist/core/mpc/sign-result-summary.js.map +1 -1
- package/dist/core/mpc/types.d.ts +4 -0
- package/dist/core/mpc/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/agent-environment-variables.js +1 -1
- package/dist/mcp/agent-environment-variables.js.map +1 -1
- package/dist/mcp/chart.d.ts.map +1 -1
- package/dist/mcp/chart.js +14 -0
- package/dist/mcp/chart.js.map +1 -1
- package/dist/mcp/deferred/tool-group-map.d.ts.map +1 -1
- package/dist/mcp/deferred/tool-group-map.js +2 -0
- package/dist/mcp/deferred/tool-group-map.js.map +1 -1
- package/dist/mcp/defi/defi-protocol-fetch-meta.d.ts +3 -0
- package/dist/mcp/defi/defi-protocol-fetch-meta.d.ts.map +1 -1
- package/dist/mcp/defi/defi-protocol-fetch-meta.js +26 -18
- package/dist/mcp/defi/defi-protocol-fetch-meta.js.map +1 -1
- package/dist/mcp/defi/discovery.js +1 -1
- package/dist/mcp/defi/discovery.js.map +1 -1
- package/dist/mcp/defi/handler.d.ts.map +1 -1
- package/dist/mcp/defi/handler.js +13 -2
- package/dist/mcp/defi/handler.js.map +1 -1
- package/dist/mcp/defi/register-protocol-tools.d.ts.map +1 -1
- package/dist/mcp/defi/register-protocol-tools.js +4 -1
- package/dist/mcp/defi/register-protocol-tools.js.map +1 -1
- package/dist/mcp/defi/the-graph-api-key.d.ts +17 -0
- package/dist/mcp/defi/the-graph-api-key.d.ts.map +1 -0
- package/dist/mcp/defi/the-graph-api-key.js +82 -0
- package/dist/mcp/defi/the-graph-api-key.js.map +1 -0
- package/dist/mcp/defi/uniswap-v4-ohlcv-chains.d.ts +7 -0
- package/dist/mcp/defi/uniswap-v4-ohlcv-chains.d.ts.map +1 -0
- package/dist/mcp/defi/uniswap-v4-ohlcv-chains.js +11 -0
- package/dist/mcp/defi/uniswap-v4-ohlcv-chains.js.map +1 -0
- package/dist/mcp/mpc.js +2 -2
- package/dist/mcp/mpc.js.map +1 -1
- package/dist/mcp/ohlcv-session-wrapper.d.ts.map +1 -1
- package/dist/mcp/ohlcv-session-wrapper.js +1 -0
- package/dist/mcp/ohlcv-session-wrapper.js.map +1 -1
- package/dist/mcp/resources/chart-analysis.md +4 -1
- package/dist/mcp/resources/chart.md +3 -2
- package/dist/mcp/trade-tools.d.ts.map +1 -1
- package/dist/mcp/trade-tools.js +9 -1
- package/dist/mcp/trade-tools.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trade-idea.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-idea.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AAE3E,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,8BAA8B,CAAC;AAExE,OAAO,KAAK,EAAC,4BAA4B,EAAC,MAAM,wCAAwC,CAAC;AAEzF,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,6BAA6B,CAAC;AAErE,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAElE,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,mCAAmC,CAAC;AAEjF,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EAEN,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EAGrB,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,kBAAkB,GAC3B;IAAC,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,EAAE,sBAAsB,CAAA;CAAC,GACtD;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,qBAAqB,CAAA;CAAC,GACnD;IAAC,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAA;CAAC,GAChD;IAAC,IAAI,EAAE,qBAAqB,CAAC;IAAC,KAAK,EAAE,4BAA4B,CAAA;CAAC,GAClE;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,kBAAkB,CAAA;CAAC,GAC7C;IAAC,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,yBAAyB,CAAA;CAAC,GAC5D;IAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,wBAAwB,CAAA;CAAC,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,sBAAsB,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"trade-idea.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-idea.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,11 @@ import { applyKeyLevelFibSideVariant } from './key-level-fib-retrace-trade-setup
|
|
|
5
5
|
import { normalizeKeyLevelsTradeSetup } from './key-levels-trade-setup.js';
|
|
6
6
|
import { normalizeMomentumTradeSetup } from './momentum-trade-setup.js';
|
|
7
7
|
import { normalizeRangeVolatilityTradeSetup } from './range-volatility-trade-setup.js';
|
|
8
|
+
import { bollingerTradeIdeaContextFromSetup, normalizeBollingerTradeSetup } from './bollinger-trade-setup.js';
|
|
9
|
+
import { normalizeMovingAveragesTradeSetup, } from './moving-averages-trade-setup.js';
|
|
8
10
|
import { normalizeTrendStructureTradeSetup } from './trend-structure-trade-setup.js';
|
|
11
|
+
import { extractTradeSetupSelection, } from './trade-setup-selection.js';
|
|
12
|
+
import { chartDataPurposeContextFromAnalysisMeta } from './chart-data-purpose.js';
|
|
9
13
|
import { ANALYZE_TOOL_SETUP_FIELDS, deriveCompleteness, toolNameForAnalysisKind, } from './shared.js';
|
|
10
14
|
function normalizeKeyLevelFibTradeSetup(setup) {
|
|
11
15
|
return {
|
|
@@ -44,6 +48,12 @@ function normalizeFromSetup(setup) {
|
|
|
44
48
|
case 'range_volatility':
|
|
45
49
|
raw = normalizeRangeVolatilityTradeSetup(setup.setup);
|
|
46
50
|
break;
|
|
51
|
+
case 'bollinger_bands':
|
|
52
|
+
raw = normalizeBollingerTradeSetup(setup.setup);
|
|
53
|
+
break;
|
|
54
|
+
case 'moving_averages':
|
|
55
|
+
raw = normalizeMovingAveragesTradeSetup(setup.setup);
|
|
56
|
+
break;
|
|
47
57
|
case 'trend_structure':
|
|
48
58
|
raw = normalizeTrendStructureTradeSetup(setup.setup);
|
|
49
59
|
break;
|
|
@@ -84,6 +94,11 @@ export function symbolFromOhlcvMeta(meta) {
|
|
|
84
94
|
export function wrapAnalysisTradeSetup(setup, meta = {}) {
|
|
85
95
|
const normalized = normalizeFromSetup(setup);
|
|
86
96
|
const analysisType = setup.kind;
|
|
97
|
+
const bollingerContext = setup.kind === 'bollinger_bands'
|
|
98
|
+
? bollingerTradeIdeaContextFromSetup(setup.setup)
|
|
99
|
+
: undefined;
|
|
100
|
+
const tradeSetupSelection = extractTradeSetupSelection(setup);
|
|
101
|
+
const chartData = chartDataPurposeContextFromAnalysisMeta(meta.ohlcvMeta, meta.fetchPayload, meta.fetchToolName, meta.loadedProtocolId);
|
|
87
102
|
return {
|
|
88
103
|
id: meta.id ?? randomUUID(),
|
|
89
104
|
source: {
|
|
@@ -91,6 +106,7 @@ export function wrapAnalysisTradeSetup(setup, meta = {}) {
|
|
|
91
106
|
toolName: meta.toolName ?? toolNameForAnalysisKind(analysisType),
|
|
92
107
|
...(meta.stepId ? { stepId: meta.stepId } : {}),
|
|
93
108
|
...(meta.taskId ? { taskId: meta.taskId } : {}),
|
|
109
|
+
...(chartData ? { chartData } : {}),
|
|
94
110
|
},
|
|
95
111
|
...(meta.protocolId ? { protocolId: meta.protocolId } : {}),
|
|
96
112
|
...(meta.symbol ? { symbol: meta.symbol } : {}),
|
|
@@ -103,6 +119,8 @@ export function wrapAnalysisTradeSetup(setup, meta = {}) {
|
|
|
103
119
|
...(normalized.target ? { target: normalized.target } : {}),
|
|
104
120
|
...(normalized.invalidation ? { invalidation: normalized.invalidation } : {}),
|
|
105
121
|
analysisSetup: setup,
|
|
122
|
+
...(tradeSetupSelection ? { tradeSetupSelection } : {}),
|
|
123
|
+
...(bollingerContext ? { bollingerContext } : {}),
|
|
106
124
|
...(normalized.unclearReason ? { unclearReason: normalized.unclearReason } : {}),
|
|
107
125
|
createdAtSec: meta.createdAtSec ?? Math.floor(Date.now() / 1000),
|
|
108
126
|
};
|
|
@@ -173,6 +191,7 @@ export function tradeIdeaWithFibSideOverride(idea, side) {
|
|
|
173
191
|
}
|
|
174
192
|
const setup = applyKeyLevelFibSideVariant(idea.analysisSetup.setup, side);
|
|
175
193
|
const normalized = normalizeKeyLevelFibTradeSetup(setup);
|
|
194
|
+
const tradeSetupSelection = extractTradeSetupSelection({ kind: 'key_level_fibonacci', setup });
|
|
176
195
|
return {
|
|
177
196
|
...idea,
|
|
178
197
|
side: setup.side,
|
|
@@ -182,6 +201,7 @@ export function tradeIdeaWithFibSideOverride(idea, side) {
|
|
|
182
201
|
status: setup.status,
|
|
183
202
|
...(setup.unclearReason ? { unclearReason: setup.unclearReason } : {}),
|
|
184
203
|
analysisSetup: { kind: 'key_level_fibonacci', setup },
|
|
204
|
+
...(tradeSetupSelection ? { tradeSetupSelection } : {}),
|
|
185
205
|
};
|
|
186
206
|
}
|
|
187
207
|
//# sourceMappingURL=trade-idea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trade-idea.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-idea.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAC,+BAA+B,EAAC,MAAM,gCAAgC,CAAC;AAE/E,OAAO,EAAC,8BAA8B,EAAC,MAAM,8BAA8B,CAAC;AAE5E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AAEnF,OAAO,EAAC,4BAA4B,EAAC,MAAM,6BAA6B,CAAC;AAEzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAAC,kCAAkC,EAAC,MAAM,mCAAmC,CAAC;AAErF,OAAO,EAAC,iCAAiC,EAAC,MAAM,kCAAkC,CAAC;AACnF,OAAO,EACN,yBAAyB,EAMzB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"trade-idea.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-idea.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ChartPatternId } from '../../../chart-patterns/types.js';
|
|
2
2
|
import type { EntryOffsetMode, PatternEntryPhase } from './pattern-limit-entry.js';
|
|
3
|
+
import { type TradeChartDataPurposeContext } from './chart-data-purpose.js';
|
|
3
4
|
export type TradePurposeProtocol = 'gmx' | 'hl' | 'uni';
|
|
4
5
|
export declare function tradeSetupPurposeCode(input: {
|
|
5
6
|
analysisType: 'chart_pattern' | 'key_levels' | 'momentum' | 'candlestick' | 'trend_structure';
|
|
@@ -19,6 +20,7 @@ export type TradePurposeMetaCtm1Input = {
|
|
|
19
20
|
symbolShort: string;
|
|
20
21
|
entryBase?: number;
|
|
21
22
|
patternFailureBase?: number;
|
|
23
|
+
chartData?: TradeChartDataPurposeContext;
|
|
22
24
|
};
|
|
23
25
|
export type TradePurposeMetaCtm1 = {
|
|
24
26
|
meta: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trade-purpose-format.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-purpose-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAC,eAAe,EAAE,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"trade-purpose-format.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-purpose-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAC,eAAe,EAAE,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AACjF,OAAO,EAEN,KAAK,4BAA4B,EACjC,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AA4BxD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC5C,YAAY,EAAE,eAAe,GAAG,YAAY,GAAG,UAAU,GAAG,aAAa,GAAG,iBAAiB,CAAC;IAC9F,SAAS,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC;IACpC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACtC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,cAAc,GAAG,aAAa,GAAG,eAAe,GAAG,kBAAkB,CAAC;CAClH,GAAG,MAAM,CA8BT;AAOD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAc7D;AAED,MAAM,MAAM,yBAAyB,GAAG;IACvC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAAC;IACxC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,4BAA4B,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,yBAAyB,GAAG,oBAAoB,CA0BjG;AAaD,MAAM,MAAM,0BAA0B,GAAG;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI,CAmDzF;AAED,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,SAAa,EAC1B,QAAQ,SAAM,GACZ;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAoBhC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { formatChartDataPurposeTokens, } from './chart-data-purpose.js';
|
|
1
2
|
const SETUP_CODE_MAX_RUNES = 10;
|
|
2
3
|
const PATTERN_SETUP_PREFIX = {
|
|
3
4
|
falling_wedge: 'fw',
|
|
@@ -84,6 +85,7 @@ export function formatTradePurposeMetaCtm1(input) {
|
|
|
84
85
|
if (input.patternFailureEffective != null && Number.isFinite(input.patternFailureEffective)) {
|
|
85
86
|
parts.push(`pfE=${formatCompactHumanPrice(input.patternFailureEffective)}`);
|
|
86
87
|
}
|
|
88
|
+
parts.push(...formatChartDataPurposeTokens(input.chartData));
|
|
87
89
|
parts.push(sym);
|
|
88
90
|
let meta = parts.join('|');
|
|
89
91
|
const withBases = [...parts];
|
|
@@ -138,6 +140,9 @@ export function parseTradePurposeMetaCtm1(text) {
|
|
|
138
140
|
continue;
|
|
139
141
|
}
|
|
140
142
|
const key = segment.slice(0, eq);
|
|
143
|
+
if (key === 'ds' || key === 'iv' || key === 'n') {
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
141
146
|
const val = Number(segment.slice(eq + 1));
|
|
142
147
|
if (!Number.isFinite(val)) {
|
|
143
148
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trade-purpose-format.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-purpose-format.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trade-purpose-format.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-purpose-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { AnalysisTradeSetup } from './trade-idea.js';
|
|
3
|
+
import type { AnalysisTradeSetupKind } from './shared.js';
|
|
4
|
+
/** Analysis-dependent identity for the menu row / geometry used to build a trade idea. */
|
|
5
|
+
export type TrendStructureTradeSetupSelection = {
|
|
6
|
+
kind: 'trend_structure';
|
|
7
|
+
trendLineNumber: number;
|
|
8
|
+
};
|
|
9
|
+
export type KeyLevelsTradeSetupSelection = {
|
|
10
|
+
kind: 'key_levels';
|
|
11
|
+
levelNumber: number;
|
|
12
|
+
framing: 'bounce' | 'break';
|
|
13
|
+
brokenLevelNumber?: number;
|
|
14
|
+
};
|
|
15
|
+
export type KeyLevelFibonacciTradeSetupSelection = {
|
|
16
|
+
kind: 'key_level_fibonacci';
|
|
17
|
+
fibPairNumber: number;
|
|
18
|
+
side: 'long' | 'short';
|
|
19
|
+
lowLevelNumber: number;
|
|
20
|
+
highLevelNumber: number;
|
|
21
|
+
framing?: 'retrace' | 'break';
|
|
22
|
+
brokenLevelNumber?: number;
|
|
23
|
+
};
|
|
24
|
+
export type ChartPatternTradeSetupSelection = {
|
|
25
|
+
kind: 'chart_pattern';
|
|
26
|
+
patternNumber: number;
|
|
27
|
+
patternId: string;
|
|
28
|
+
};
|
|
29
|
+
export type CandlestickTradeSetupSelection = {
|
|
30
|
+
kind: 'candlestick';
|
|
31
|
+
patternId: string;
|
|
32
|
+
barIndex: number;
|
|
33
|
+
};
|
|
34
|
+
export type BollingerBandsTradeSetupSelection = {
|
|
35
|
+
kind: 'bollinger_bands';
|
|
36
|
+
period: number;
|
|
37
|
+
stdDev: number;
|
|
38
|
+
setupPurposeCode: string;
|
|
39
|
+
};
|
|
40
|
+
export type MovingAveragesTradeSetupSelection = {
|
|
41
|
+
kind: 'moving_averages';
|
|
42
|
+
strategy: 'crossover' | 'proximity_retest';
|
|
43
|
+
fastPeriod: number;
|
|
44
|
+
slowPeriod: number;
|
|
45
|
+
maType: 'sma' | 'ema';
|
|
46
|
+
setupPurposeCode: string;
|
|
47
|
+
};
|
|
48
|
+
export type MomentumTradeSetupSelection = {
|
|
49
|
+
kind: 'momentum';
|
|
50
|
+
rsiPeriod: number;
|
|
51
|
+
};
|
|
52
|
+
export type RangeVolatilityTradeSetupSelection = {
|
|
53
|
+
kind: 'range_volatility';
|
|
54
|
+
};
|
|
55
|
+
export type TradeSetupSelection = TrendStructureTradeSetupSelection | KeyLevelsTradeSetupSelection | KeyLevelFibonacciTradeSetupSelection | ChartPatternTradeSetupSelection | CandlestickTradeSetupSelection | BollingerBandsTradeSetupSelection | MovingAveragesTradeSetupSelection | MomentumTradeSetupSelection | RangeVolatilityTradeSetupSelection;
|
|
56
|
+
export declare const TradeSetupSelectionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
57
|
+
kind: z.ZodLiteral<"trend_structure">;
|
|
58
|
+
trendLineNumber: z.ZodNumber;
|
|
59
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
60
|
+
kind: z.ZodLiteral<"key_levels">;
|
|
61
|
+
levelNumber: z.ZodNumber;
|
|
62
|
+
framing: z.ZodEnum<{
|
|
63
|
+
bounce: "bounce";
|
|
64
|
+
break: "break";
|
|
65
|
+
}>;
|
|
66
|
+
brokenLevelNumber: z.ZodOptional<z.ZodNumber>;
|
|
67
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
68
|
+
kind: z.ZodLiteral<"key_level_fibonacci">;
|
|
69
|
+
fibPairNumber: z.ZodNumber;
|
|
70
|
+
side: z.ZodEnum<{
|
|
71
|
+
long: "long";
|
|
72
|
+
short: "short";
|
|
73
|
+
}>;
|
|
74
|
+
lowLevelNumber: z.ZodNumber;
|
|
75
|
+
highLevelNumber: z.ZodNumber;
|
|
76
|
+
framing: z.ZodOptional<z.ZodEnum<{
|
|
77
|
+
break: "break";
|
|
78
|
+
retrace: "retrace";
|
|
79
|
+
}>>;
|
|
80
|
+
brokenLevelNumber: z.ZodOptional<z.ZodNumber>;
|
|
81
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
82
|
+
kind: z.ZodLiteral<"chart_pattern">;
|
|
83
|
+
patternNumber: z.ZodNumber;
|
|
84
|
+
patternId: z.ZodString;
|
|
85
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
86
|
+
kind: z.ZodLiteral<"candlestick">;
|
|
87
|
+
patternId: z.ZodString;
|
|
88
|
+
barIndex: z.ZodNumber;
|
|
89
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
90
|
+
kind: z.ZodLiteral<"bollinger_bands">;
|
|
91
|
+
period: z.ZodNumber;
|
|
92
|
+
stdDev: z.ZodNumber;
|
|
93
|
+
setupPurposeCode: z.ZodString;
|
|
94
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
95
|
+
kind: z.ZodLiteral<"moving_averages">;
|
|
96
|
+
strategy: z.ZodEnum<{
|
|
97
|
+
crossover: "crossover";
|
|
98
|
+
proximity_retest: "proximity_retest";
|
|
99
|
+
}>;
|
|
100
|
+
fastPeriod: z.ZodNumber;
|
|
101
|
+
slowPeriod: z.ZodNumber;
|
|
102
|
+
maType: z.ZodEnum<{
|
|
103
|
+
sma: "sma";
|
|
104
|
+
ema: "ema";
|
|
105
|
+
}>;
|
|
106
|
+
setupPurposeCode: z.ZodString;
|
|
107
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
108
|
+
kind: string;
|
|
109
|
+
rsiPeriod: z.ZodNumber;
|
|
110
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
111
|
+
kind: z.ZodLiteral<"range_volatility">;
|
|
112
|
+
}, z.core.$strict>], "kind">;
|
|
113
|
+
export declare function extractTradeSetupSelection(setup: AnalysisTradeSetup): TradeSetupSelection | undefined;
|
|
114
|
+
/** Partial analyze_* tool args to re-bind the same menu/geometry on refresh. */
|
|
115
|
+
export declare function analyzeArgsFromTradeSetupSelection(selection: TradeSetupSelection | null | undefined): Record<string, unknown>;
|
|
116
|
+
export declare function tradeSetupSelectionForAnalysisType(ideas: {
|
|
117
|
+
source: {
|
|
118
|
+
analysisType: AnalysisTradeSetupKind;
|
|
119
|
+
};
|
|
120
|
+
tradeSetupSelection?: TradeSetupSelection;
|
|
121
|
+
}[], analysisType: AnalysisTradeSetupKind): TradeSetupSelection | undefined;
|
|
122
|
+
//# sourceMappingURL=trade-setup-selection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trade-setup-selection.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-setup-selection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
const trendStructureSelectionSchema = z
|
|
3
|
+
.object({
|
|
4
|
+
kind: z.literal('trend_structure'),
|
|
5
|
+
trendLineNumber: z.number().int().min(1),
|
|
6
|
+
})
|
|
7
|
+
.strict();
|
|
8
|
+
const keyLevelsSelectionSchema = z
|
|
9
|
+
.object({
|
|
10
|
+
kind: z.literal('key_levels'),
|
|
11
|
+
levelNumber: z.number().int().min(1),
|
|
12
|
+
framing: z.enum(['bounce', 'break']),
|
|
13
|
+
brokenLevelNumber: z.number().int().min(1).optional(),
|
|
14
|
+
})
|
|
15
|
+
.strict();
|
|
16
|
+
const keyLevelFibonacciSelectionSchema = z
|
|
17
|
+
.object({
|
|
18
|
+
kind: z.literal('key_level_fibonacci'),
|
|
19
|
+
fibPairNumber: z.number().int().min(1),
|
|
20
|
+
side: z.enum(['long', 'short']),
|
|
21
|
+
lowLevelNumber: z.number().int().min(1),
|
|
22
|
+
highLevelNumber: z.number().int().min(1),
|
|
23
|
+
framing: z.enum(['retrace', 'break']).optional(),
|
|
24
|
+
brokenLevelNumber: z.number().int().min(1).optional(),
|
|
25
|
+
})
|
|
26
|
+
.strict();
|
|
27
|
+
const chartPatternSelectionSchema = z
|
|
28
|
+
.object({
|
|
29
|
+
kind: z.literal('chart_pattern'),
|
|
30
|
+
patternNumber: z.number().int().min(1),
|
|
31
|
+
patternId: z.string().min(1),
|
|
32
|
+
})
|
|
33
|
+
.strict();
|
|
34
|
+
const candlestickSelectionSchema = z
|
|
35
|
+
.object({
|
|
36
|
+
kind: z.literal('candlestick'),
|
|
37
|
+
patternId: z.string().min(1),
|
|
38
|
+
barIndex: z.number().int().min(0),
|
|
39
|
+
})
|
|
40
|
+
.strict();
|
|
41
|
+
const bollingerSelectionSchema = z
|
|
42
|
+
.object({
|
|
43
|
+
kind: z.literal('bollinger_bands'),
|
|
44
|
+
period: z.number().int().min(1),
|
|
45
|
+
stdDev: z.number().positive(),
|
|
46
|
+
setupPurposeCode: z.string().min(1),
|
|
47
|
+
})
|
|
48
|
+
.strict();
|
|
49
|
+
const movingAveragesSelectionSchema = z
|
|
50
|
+
.object({
|
|
51
|
+
kind: z.literal('moving_averages'),
|
|
52
|
+
strategy: z.enum(['crossover', 'proximity_retest']),
|
|
53
|
+
fastPeriod: z.number().int().min(1),
|
|
54
|
+
slowPeriod: z.number().int().min(1),
|
|
55
|
+
maType: z.enum(['sma', 'ema']),
|
|
56
|
+
setupPurposeCode: z.string().min(1),
|
|
57
|
+
})
|
|
58
|
+
.strict();
|
|
59
|
+
const momentumSelectionSchema = z
|
|
60
|
+
.object({
|
|
61
|
+
kind: 'momentum',
|
|
62
|
+
rsiPeriod: z.number().int().min(1),
|
|
63
|
+
})
|
|
64
|
+
.strict();
|
|
65
|
+
const rangeVolatilitySelectionSchema = z
|
|
66
|
+
.object({
|
|
67
|
+
kind: z.literal('range_volatility'),
|
|
68
|
+
})
|
|
69
|
+
.strict();
|
|
70
|
+
export const TradeSetupSelectionSchema = z.discriminatedUnion('kind', [
|
|
71
|
+
trendStructureSelectionSchema,
|
|
72
|
+
keyLevelsSelectionSchema,
|
|
73
|
+
keyLevelFibonacciSelectionSchema,
|
|
74
|
+
chartPatternSelectionSchema,
|
|
75
|
+
candlestickSelectionSchema,
|
|
76
|
+
bollingerSelectionSchema,
|
|
77
|
+
movingAveragesSelectionSchema,
|
|
78
|
+
momentumSelectionSchema,
|
|
79
|
+
rangeVolatilitySelectionSchema,
|
|
80
|
+
]);
|
|
81
|
+
export function extractTradeSetupSelection(setup) {
|
|
82
|
+
switch (setup.kind) {
|
|
83
|
+
case 'trend_structure': {
|
|
84
|
+
const n = setup.setup.trendLineNumber;
|
|
85
|
+
return n != null && n >= 1 ? { kind: 'trend_structure', trendLineNumber: n } : undefined;
|
|
86
|
+
}
|
|
87
|
+
case 'key_levels': {
|
|
88
|
+
const s = setup.setup;
|
|
89
|
+
if (s.levelNumber == null || s.levelNumber < 1) {
|
|
90
|
+
return undefined;
|
|
91
|
+
}
|
|
92
|
+
const alt = s.breakRetestAlternative;
|
|
93
|
+
if (s.framing === 'break' && alt?.brokenLevelNumber != null) {
|
|
94
|
+
return {
|
|
95
|
+
kind: 'key_levels',
|
|
96
|
+
levelNumber: s.levelNumber,
|
|
97
|
+
framing: 'break',
|
|
98
|
+
brokenLevelNumber: alt.brokenLevelNumber,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
kind: 'key_levels',
|
|
103
|
+
levelNumber: s.levelNumber,
|
|
104
|
+
framing: s.framing,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
case 'key_level_fibonacci': {
|
|
108
|
+
const s = setup.setup;
|
|
109
|
+
const alt = s.breakRetestAlternative;
|
|
110
|
+
if (alt?.brokenLevelNumber != null) {
|
|
111
|
+
return {
|
|
112
|
+
kind: 'key_level_fibonacci',
|
|
113
|
+
fibPairNumber: s.fibPairNumber,
|
|
114
|
+
side: s.side === 'long' || s.side === 'short' ? s.side : 'long',
|
|
115
|
+
lowLevelNumber: s.lowLevelNumber,
|
|
116
|
+
highLevelNumber: s.highLevelNumber,
|
|
117
|
+
framing: 'break',
|
|
118
|
+
brokenLevelNumber: alt.brokenLevelNumber,
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
return {
|
|
122
|
+
kind: 'key_level_fibonacci',
|
|
123
|
+
fibPairNumber: s.fibPairNumber,
|
|
124
|
+
side: s.side === 'long' || s.side === 'short' ? s.side : 'long',
|
|
125
|
+
lowLevelNumber: s.lowLevelNumber,
|
|
126
|
+
highLevelNumber: s.highLevelNumber,
|
|
127
|
+
framing: 'retrace',
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
case 'chart_pattern':
|
|
131
|
+
return {
|
|
132
|
+
kind: 'chart_pattern',
|
|
133
|
+
patternNumber: setup.setup.patternNumber,
|
|
134
|
+
patternId: setup.setup.patternId,
|
|
135
|
+
};
|
|
136
|
+
case 'candlestick':
|
|
137
|
+
return {
|
|
138
|
+
kind: 'candlestick',
|
|
139
|
+
patternId: setup.setup.patternId,
|
|
140
|
+
barIndex: setup.setup.barIndex,
|
|
141
|
+
};
|
|
142
|
+
case 'bollinger_bands': {
|
|
143
|
+
const s = setup.setup;
|
|
144
|
+
if (!s.setupPurposeCode) {
|
|
145
|
+
return undefined;
|
|
146
|
+
}
|
|
147
|
+
return {
|
|
148
|
+
kind: 'bollinger_bands',
|
|
149
|
+
period: s.period,
|
|
150
|
+
stdDev: s.stdDev,
|
|
151
|
+
setupPurposeCode: s.setupPurposeCode,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
case 'moving_averages': {
|
|
155
|
+
const s = setup.setup;
|
|
156
|
+
return {
|
|
157
|
+
kind: 'moving_averages',
|
|
158
|
+
strategy: s.strategy,
|
|
159
|
+
fastPeriod: s.fastPeriod,
|
|
160
|
+
slowPeriod: s.slowPeriod,
|
|
161
|
+
maType: s.maType,
|
|
162
|
+
setupPurposeCode: s.setupPurposeCode,
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
case 'momentum':
|
|
166
|
+
return {
|
|
167
|
+
kind: 'momentum',
|
|
168
|
+
rsiPeriod: setup.setup.rsiPeriod,
|
|
169
|
+
};
|
|
170
|
+
case 'range_volatility':
|
|
171
|
+
return { kind: 'range_volatility' };
|
|
172
|
+
default:
|
|
173
|
+
return undefined;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/** Partial analyze_* tool args to re-bind the same menu/geometry on refresh. */
|
|
177
|
+
export function analyzeArgsFromTradeSetupSelection(selection) {
|
|
178
|
+
if (!selection) {
|
|
179
|
+
return {};
|
|
180
|
+
}
|
|
181
|
+
switch (selection.kind) {
|
|
182
|
+
case 'trend_structure':
|
|
183
|
+
return { tradeTrendLineNumber: selection.trendLineNumber };
|
|
184
|
+
case 'key_levels':
|
|
185
|
+
return {
|
|
186
|
+
tradeLevelNumber: selection.levelNumber,
|
|
187
|
+
...(selection.framing === 'break' && selection.brokenLevelNumber != null
|
|
188
|
+
? { tradeBrokenLevelNumber: selection.brokenLevelNumber }
|
|
189
|
+
: {}),
|
|
190
|
+
};
|
|
191
|
+
case 'key_level_fibonacci':
|
|
192
|
+
return {
|
|
193
|
+
fibPairNumber: selection.fibPairNumber,
|
|
194
|
+
tradeFibSide: selection.side,
|
|
195
|
+
};
|
|
196
|
+
case 'chart_pattern':
|
|
197
|
+
return { tradePatternNumber: selection.patternNumber };
|
|
198
|
+
case 'candlestick':
|
|
199
|
+
return {
|
|
200
|
+
tradePatternId: selection.patternId,
|
|
201
|
+
tradeBarIndex: selection.barIndex,
|
|
202
|
+
};
|
|
203
|
+
case 'bollinger_bands':
|
|
204
|
+
return {
|
|
205
|
+
period: selection.period,
|
|
206
|
+
stdDev: selection.stdDev,
|
|
207
|
+
};
|
|
208
|
+
case 'moving_averages':
|
|
209
|
+
return {
|
|
210
|
+
fastPeriod: selection.fastPeriod,
|
|
211
|
+
slowPeriod: selection.slowPeriod,
|
|
212
|
+
maType: selection.maType,
|
|
213
|
+
};
|
|
214
|
+
case 'momentum':
|
|
215
|
+
return { rsiPeriod: selection.rsiPeriod };
|
|
216
|
+
case 'range_volatility':
|
|
217
|
+
return {};
|
|
218
|
+
default:
|
|
219
|
+
return {};
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
export function tradeSetupSelectionForAnalysisType(ideas, analysisType) {
|
|
223
|
+
for (let i = ideas.length - 1; i >= 0; i -= 1) {
|
|
224
|
+
const idea = ideas[i];
|
|
225
|
+
if (idea.source.analysisType === analysisType && idea.tradeSetupSelection) {
|
|
226
|
+
return idea.tradeSetupSelection;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return undefined;
|
|
230
|
+
}
|
|
231
|
+
//# sourceMappingURL=trade-setup-selection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trade-setup-selection.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-setup-selection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trend-structure-trade-setup.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trend-structure-trade-setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAGlE,MAAM,MAAM,wBAAwB,GAAG;IACtC,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC;IAC5C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wFAAwF;IACxF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,QAAQ,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAwBF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACpD,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IAClC,QAAQ,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IACjC,gBAAgB,EAAE,SAAS,GAAG,IAAI,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,wBAAwB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"trend-structure-trade-setup.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trend-structure-trade-setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAGlE,MAAM,MAAM,wBAAwB,GAAG;IACtC,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC;IAC5C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wFAAwF;IACxF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,QAAQ,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAwBF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACpD,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IAClC,QAAQ,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IACjC,gBAAgB,EAAE,SAAS,GAAG,IAAI,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,wBAAwB,GAAG,IAAI,CAqGlC;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,wBAAwB;;;;;;;;;;;;;;;;;;EAoBhF"}
|
|
@@ -45,17 +45,26 @@ export function buildTrendStructureTradeSetup(input) {
|
|
|
45
45
|
else if (side === 'long' && line.kind !== 'support') {
|
|
46
46
|
unclearReason = 'Bullish bias expects a support trend line for a long limit entry.';
|
|
47
47
|
}
|
|
48
|
-
else if (side === 'short' && line.kind !== 'resistance') {
|
|
49
|
-
unclearReason = 'Bearish bias expects a resistance trend line for a short limit entry.';
|
|
48
|
+
else if (side === 'short' && line.kind !== 'resistance' && line.kind !== 'support') {
|
|
49
|
+
unclearReason = 'Bearish bias expects a resistance or broken-support trend line for a short limit entry.';
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
52
52
|
const linePrice = trendLinePriceAtLastBar(line, input.bars);
|
|
53
53
|
if (linePrice == null || !isFiniteTradePrice(linePrice)) {
|
|
54
54
|
unclearReason = 'Could not project trade trend line to the current bar.';
|
|
55
55
|
}
|
|
56
|
+
else if (side === 'short' && line.kind === 'support' && linePrice <= close * 1.001) {
|
|
57
|
+
unclearReason =
|
|
58
|
+
'Bearish short needs broken support above last close for a retest entry — support line sits at or below spot.';
|
|
59
|
+
}
|
|
56
60
|
else {
|
|
57
61
|
triggerPrice = linePrice;
|
|
58
|
-
|
|
62
|
+
if (side === 'short' && line.kind === 'support') {
|
|
63
|
+
triggerLabel = 'broken support retest';
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
triggerLabel = `${line.kind} trend retest`;
|
|
67
|
+
}
|
|
59
68
|
if (side === 'long' && input.swingLow) {
|
|
60
69
|
invalidationPrice = input.swingLow.price;
|
|
61
70
|
invalidationLabel = 'recent swing low';
|