@continuumdao/continuum-node-sdk 1.3.37 → 1.3.38
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 +9 -0
- package/dist/core/chart/analysis/analysis-agent-view.d.ts.map +1 -1
- package/dist/core/chart/analysis/analysis-agent-view.js +33 -4
- 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 +47 -1
- package/dist/core/chart/analysis/analysis-catalog.js.map +1 -1
- package/dist/core/chart/analysis/analyze-tools.d.ts +167 -11
- package/dist/core/chart/analysis/analyze-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/analyze-tools.js +47 -55
- package/dist/core/chart/analysis/analyze-tools.js.map +1 -1
- package/dist/core/chart/analysis/divergence/detect.d.ts +21 -0
- package/dist/core/chart/analysis/divergence/detect.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence/detect.js +223 -0
- package/dist/core/chart/analysis/divergence/detect.js.map +1 -0
- package/dist/core/chart/analysis/divergence/index.d.ts +4 -0
- package/dist/core/chart/analysis/divergence/index.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence/index.js +4 -0
- package/dist/core/chart/analysis/divergence/index.js.map +1 -0
- package/dist/core/chart/analysis/divergence/peaks.d.ts +11 -0
- package/dist/core/chart/analysis/divergence/peaks.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence/peaks.js +108 -0
- package/dist/core/chart/analysis/divergence/peaks.js.map +1 -0
- package/dist/core/chart/analysis/divergence/types.d.ts +30 -0
- package/dist/core/chart/analysis/divergence/types.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence/types.js +2 -0
- package/dist/core/chart/analysis/divergence/types.js.map +1 -0
- package/dist/core/chart/analysis/divergence-analyze-tools.d.ts +239 -0
- package/dist/core/chart/analysis/divergence-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence-analyze-tools.js +283 -0
- package/dist/core/chart/analysis/divergence-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/divergence-drawings-tools.d.ts +457 -0
- package/dist/core/chart/analysis/divergence-drawings-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence-drawings-tools.js +380 -0
- package/dist/core/chart/analysis/divergence-drawings-tools.js.map +1 -0
- package/dist/core/chart/analysis/divergence-highlight.d.ts +19 -0
- package/dist/core/chart/analysis/divergence-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/divergence-highlight.js +39 -0
- package/dist/core/chart/analysis/divergence-highlight.js.map +1 -0
- package/dist/core/chart/analysis/donchian-analyze-tools.d.ts +113 -0
- package/dist/core/chart/analysis/donchian-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/donchian-analyze-tools.js +218 -0
- package/dist/core/chart/analysis/donchian-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/donchian-highlight.d.ts +31 -0
- package/dist/core/chart/analysis/donchian-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/donchian-highlight.js +41 -0
- package/dist/core/chart/analysis/donchian-highlight.js.map +1 -0
- package/dist/core/chart/analysis/elliott-waves-analyze-tools.d.ts +33 -0
- package/dist/core/chart/analysis/elliott-waves-analyze-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/ichimoku-analyze-tools.d.ts +124 -0
- package/dist/core/chart/analysis/ichimoku-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/ichimoku-analyze-tools.js +243 -0
- package/dist/core/chart/analysis/ichimoku-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/ichimoku-highlight.d.ts +36 -0
- package/dist/core/chart/analysis/ichimoku-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/ichimoku-highlight.js +40 -0
- package/dist/core/chart/analysis/ichimoku-highlight.js.map +1 -0
- package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts +2 -6
- package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts.map +1 -1
- package/dist/core/chart/analysis/key-fib-drawings-tools.js +5 -17
- package/dist/core/chart/analysis/key-fib-drawings-tools.js.map +1 -1
- package/dist/core/chart/analysis/key-level-drawings-shared.d.ts +3 -12
- package/dist/core/chart/analysis/key-level-drawings-shared.d.ts.map +1 -1
- package/dist/core/chart/analysis/key-level-drawings-shared.js +6 -36
- package/dist/core/chart/analysis/key-level-drawings-shared.js.map +1 -1
- package/dist/core/chart/analysis/key-level-menu-summary.d.ts +15 -22
- package/dist/core/chart/analysis/key-level-menu-summary.d.ts.map +1 -1
- package/dist/core/chart/analysis/key-level-menu-summary.js +63 -124
- package/dist/core/chart/analysis/key-level-menu-summary.js.map +1 -1
- package/dist/core/chart/analysis/key-levels-dataset.d.ts +1 -0
- package/dist/core/chart/analysis/key-levels-dataset.d.ts.map +1 -1
- package/dist/core/chart/analysis/key-levels-dataset.js +4 -7
- package/dist/core/chart/analysis/key-levels-dataset.js.map +1 -1
- package/dist/core/chart/analysis/supertrend-analyze-tools.d.ts +112 -0
- package/dist/core/chart/analysis/supertrend-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/supertrend-analyze-tools.js +214 -0
- package/dist/core/chart/analysis/supertrend-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/supertrend-highlight.d.ts +25 -0
- package/dist/core/chart/analysis/supertrend-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/supertrend-highlight.js +37 -0
- package/dist/core/chart/analysis/supertrend-highlight.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/build-trade.js +23 -5
- package/dist/core/chart/analysis/trade-setups/build-trade.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.d.ts +78 -0
- package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.js +184 -0
- package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.d.ts +133 -0
- package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.js +419 -0
- package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.d.ts +154 -0
- package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.js +396 -0
- package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/index.d.ts +5 -0
- package/dist/core/chart/analysis/trade-setups/index.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/index.js +5 -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 +7 -41
- 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 -235
- 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 +2 -8
- 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 +0 -27
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.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 +10 -0
- package/dist/core/chart/analysis/trade-setups/shared.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.d.ts +119 -0
- package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.js +301 -0
- package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.d.ts +34 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.js +43 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts +15 -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 +89 -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 +32 -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 +32 -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 -2
- 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 +2 -6
- 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 +42 -8
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.d.ts.map +1 -1
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.js +72 -17
- package/dist/core/chart/analysis/trade-setups/trade-setup-selection.js.map +1 -1
- package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.d.ts +89 -0
- package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.js +195 -0
- package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/z-score-analyze-tools.d.ts +111 -0
- package/dist/core/chart/analysis/z-score-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/z-score-analyze-tools.js +240 -0
- package/dist/core/chart/analysis/z-score-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/z-score-highlight.d.ts +29 -0
- package/dist/core/chart/analysis/z-score-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/z-score-highlight.js +39 -0
- package/dist/core/chart/analysis/z-score-highlight.js.map +1 -0
- package/dist/core/chart/customization-catalog.d.ts.map +1 -1
- package/dist/core/chart/customization-catalog.js +36 -0
- package/dist/core/chart/customization-catalog.js.map +1 -1
- package/dist/core/chart/display-downsample.d.ts.map +1 -1
- package/dist/core/chart/display-downsample.js +4 -14
- package/dist/core/chart/display-downsample.js.map +1 -1
- package/dist/core/chart/overlay-schemas.d.ts +496 -0
- package/dist/core/chart/overlay-schemas.d.ts.map +1 -1
- package/dist/core/chart/overlay-schemas.js +137 -0
- package/dist/core/chart/overlay-schemas.js.map +1 -1
- package/dist/core/chart/overlays.d.ts +2 -0
- package/dist/core/chart/overlays.d.ts.map +1 -1
- package/dist/core/chart/overlays.js +620 -2
- package/dist/core/chart/overlays.js.map +1 -1
- package/dist/core/chart/prepare-from-rows.d.ts +143 -0
- package/dist/core/chart/prepare-from-rows.d.ts.map +1 -1
- package/dist/core/chart/schemas.d.ts +491 -0
- package/dist/core/chart/schemas.d.ts.map +1 -1
- package/dist/core/coinmarketcap/schemas.d.ts +5 -5
- package/dist/mcp/agent-host-catalog.d.ts +1 -1
- package/dist/mcp/agent-host-catalog.d.ts.map +1 -1
- package/dist/mcp/agent-host-catalog.js +1 -0
- package/dist/mcp/agent-host-catalog.js.map +1 -1
- package/dist/mcp/chart.d.ts.map +1 -1
- package/dist/mcp/chart.js +61 -2
- 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 +8 -0
- package/dist/mcp/deferred/tool-group-map.js.map +1 -1
- package/dist/mcp/ohlcv-session-wrapper.d.ts.map +1 -1
- package/dist/mcp/ohlcv-session-wrapper.js +8 -0
- package/dist/mcp/ohlcv-session-wrapper.js.map +1 -1
- package/dist/mcp/resources/chart-analysis.md +9 -0
- package/dist/mcp/resources/chart.md +3 -0
- package/dist/mcp/trade-tools.d.ts.map +1 -1
- package/dist/mcp/trade-tools.js +2 -0
- package/dist/mcp/trade-tools.js.map +1 -1
- package/package.json +1 -1
- package/dist/core/agent/mcp-servers-catalog.d.ts +0 -15
- package/dist/core/agent/mcp-servers-catalog.d.ts.map +0 -1
- package/dist/core/agent/mcp-servers-catalog.js +0 -125
- package/dist/core/agent/mcp-servers-catalog.js.map +0 -1
- package/dist/core/agent/webhooks-catalog.d.ts +0 -10
- package/dist/core/agent/webhooks-catalog.d.ts.map +0 -1
- package/dist/core/agent/webhooks-catalog.js +0 -19
- package/dist/core/agent/webhooks-catalog.js.map +0 -1
- package/dist/mcp/resources/trade-defaults-skill.md +0 -69
- package/dist/mcp/ta/resources/indicators.md +0 -86
|
@@ -20,8 +20,7 @@ const keyLevelFibonacciSelectionSchema = z
|
|
|
20
20
|
side: z.enum(['long', 'short']),
|
|
21
21
|
lowLevelNumber: z.number().int().min(1),
|
|
22
22
|
highLevelNumber: z.number().int().min(1),
|
|
23
|
-
framing: z.
|
|
24
|
-
brokenLevelNumber: z.number().int().min(1).optional(),
|
|
23
|
+
framing: z.literal('retrace').optional(),
|
|
25
24
|
})
|
|
26
25
|
.strict();
|
|
27
26
|
const chartPatternSelectionSchema = z
|
|
@@ -46,6 +45,23 @@ const bollingerSelectionSchema = z
|
|
|
46
45
|
setupPurposeCode: z.string().min(1),
|
|
47
46
|
})
|
|
48
47
|
.strict();
|
|
48
|
+
const donchianSelectionSchema = z
|
|
49
|
+
.object({
|
|
50
|
+
kind: z.literal('donchian_breakout'),
|
|
51
|
+
period: z.number().int().min(1),
|
|
52
|
+
entryMode: z.enum(['retest', 'immediate']),
|
|
53
|
+
setupPurposeCode: z.string().min(1),
|
|
54
|
+
})
|
|
55
|
+
.strict();
|
|
56
|
+
const zScoreSelectionSchema = z
|
|
57
|
+
.object({
|
|
58
|
+
kind: z.literal('z_score'),
|
|
59
|
+
period: z.number().int().min(1),
|
|
60
|
+
entryZ: z.number().positive(),
|
|
61
|
+
exitZ: z.number().min(0),
|
|
62
|
+
setupPurposeCode: z.string().min(1),
|
|
63
|
+
})
|
|
64
|
+
.strict();
|
|
49
65
|
const movingAveragesSelectionSchema = z
|
|
50
66
|
.object({
|
|
51
67
|
kind: z.literal('moving_averages'),
|
|
@@ -62,6 +78,13 @@ const momentumSelectionSchema = z
|
|
|
62
78
|
rsiPeriod: z.number().int().min(1),
|
|
63
79
|
})
|
|
64
80
|
.strict();
|
|
81
|
+
const divergenceSelectionSchema = z
|
|
82
|
+
.object({
|
|
83
|
+
kind: z.literal('divergence'),
|
|
84
|
+
oscillator: z.enum(['rsi', 'stochasticrsi']).nullable(),
|
|
85
|
+
primaryKind: z.string().nullable(),
|
|
86
|
+
})
|
|
87
|
+
.strict();
|
|
65
88
|
const rangeVolatilitySelectionSchema = z
|
|
66
89
|
.object({
|
|
67
90
|
kind: z.literal('range_volatility'),
|
|
@@ -80,8 +103,11 @@ export const TradeSetupSelectionSchema = z.discriminatedUnion('kind', [
|
|
|
80
103
|
chartPatternSelectionSchema,
|
|
81
104
|
candlestickSelectionSchema,
|
|
82
105
|
bollingerSelectionSchema,
|
|
106
|
+
donchianSelectionSchema,
|
|
107
|
+
zScoreSelectionSchema,
|
|
83
108
|
movingAveragesSelectionSchema,
|
|
84
109
|
momentumSelectionSchema,
|
|
110
|
+
divergenceSelectionSchema,
|
|
85
111
|
rangeVolatilitySelectionSchema,
|
|
86
112
|
elliottWavesSelectionSchema,
|
|
87
113
|
]);
|
|
@@ -113,18 +139,6 @@ export function extractTradeSetupSelection(setup) {
|
|
|
113
139
|
}
|
|
114
140
|
case 'key_level_fibonacci': {
|
|
115
141
|
const s = setup.setup;
|
|
116
|
-
const alt = s.breakRetestAlternative;
|
|
117
|
-
if (alt?.brokenLevelNumber != null) {
|
|
118
|
-
return {
|
|
119
|
-
kind: 'key_level_fibonacci',
|
|
120
|
-
fibPairNumber: s.fibPairNumber,
|
|
121
|
-
side: s.side === 'long' || s.side === 'short' ? s.side : 'long',
|
|
122
|
-
lowLevelNumber: s.lowLevelNumber,
|
|
123
|
-
highLevelNumber: s.highLevelNumber,
|
|
124
|
-
framing: 'break',
|
|
125
|
-
brokenLevelNumber: alt.brokenLevelNumber,
|
|
126
|
-
};
|
|
127
|
-
}
|
|
128
142
|
return {
|
|
129
143
|
kind: 'key_level_fibonacci',
|
|
130
144
|
fibPairNumber: s.fibPairNumber,
|
|
@@ -158,6 +172,31 @@ export function extractTradeSetupSelection(setup) {
|
|
|
158
172
|
setupPurposeCode: s.setupPurposeCode,
|
|
159
173
|
};
|
|
160
174
|
}
|
|
175
|
+
case 'donchian_breakout': {
|
|
176
|
+
const s = setup.setup;
|
|
177
|
+
if (!s.setupPurposeCode) {
|
|
178
|
+
return undefined;
|
|
179
|
+
}
|
|
180
|
+
return {
|
|
181
|
+
kind: 'donchian_breakout',
|
|
182
|
+
period: s.period,
|
|
183
|
+
entryMode: s.entryMode,
|
|
184
|
+
setupPurposeCode: s.setupPurposeCode,
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
case 'z_score': {
|
|
188
|
+
const s = setup.setup;
|
|
189
|
+
if (!s.setupPurposeCode) {
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
return {
|
|
193
|
+
kind: 'z_score',
|
|
194
|
+
period: s.period,
|
|
195
|
+
entryZ: s.entryZ,
|
|
196
|
+
exitZ: s.exitZ,
|
|
197
|
+
setupPurposeCode: s.setupPurposeCode,
|
|
198
|
+
};
|
|
199
|
+
}
|
|
161
200
|
case 'moving_averages': {
|
|
162
201
|
const s = setup.setup;
|
|
163
202
|
return {
|
|
@@ -174,6 +213,12 @@ export function extractTradeSetupSelection(setup) {
|
|
|
174
213
|
kind: 'momentum',
|
|
175
214
|
rsiPeriod: setup.setup.rsiPeriod,
|
|
176
215
|
};
|
|
216
|
+
case 'divergence':
|
|
217
|
+
return {
|
|
218
|
+
kind: 'divergence',
|
|
219
|
+
oscillator: setup.setup.oscillator,
|
|
220
|
+
primaryKind: setup.setup.primaryKind,
|
|
221
|
+
};
|
|
177
222
|
case 'range_volatility':
|
|
178
223
|
return { kind: 'range_volatility' };
|
|
179
224
|
case 'elliott_waves': {
|
|
@@ -195,9 +240,6 @@ export function analyzeArgsFromTradeSetupSelection(selection) {
|
|
|
195
240
|
case 'key_levels':
|
|
196
241
|
return {
|
|
197
242
|
tradeLevelNumber: selection.levelNumber,
|
|
198
|
-
...(selection.framing === 'break' && selection.brokenLevelNumber != null
|
|
199
|
-
? { tradeBrokenLevelNumber: selection.brokenLevelNumber }
|
|
200
|
-
: {}),
|
|
201
243
|
};
|
|
202
244
|
case 'key_level_fibonacci':
|
|
203
245
|
return {
|
|
@@ -216,6 +258,17 @@ export function analyzeArgsFromTradeSetupSelection(selection) {
|
|
|
216
258
|
period: selection.period,
|
|
217
259
|
stdDev: selection.stdDev,
|
|
218
260
|
};
|
|
261
|
+
case 'donchian_breakout':
|
|
262
|
+
return {
|
|
263
|
+
period: selection.period,
|
|
264
|
+
donchianEntryMode: selection.entryMode,
|
|
265
|
+
};
|
|
266
|
+
case 'z_score':
|
|
267
|
+
return {
|
|
268
|
+
period: selection.period,
|
|
269
|
+
zScoreEntry: selection.entryZ,
|
|
270
|
+
zScoreExit: selection.exitZ,
|
|
271
|
+
};
|
|
219
272
|
case 'moving_averages':
|
|
220
273
|
return {
|
|
221
274
|
fastPeriod: selection.fastPeriod,
|
|
@@ -224,6 +277,8 @@ export function analyzeArgsFromTradeSetupSelection(selection) {
|
|
|
224
277
|
};
|
|
225
278
|
case 'momentum':
|
|
226
279
|
return { rsiPeriod: selection.rsiPeriod };
|
|
280
|
+
case 'divergence':
|
|
281
|
+
return selection.oscillator != null ? { oscillator: selection.oscillator } : {};
|
|
227
282
|
case 'range_volatility':
|
|
228
283
|
return {};
|
|
229
284
|
case 'elliott_waves':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trade-setup-selection.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/trade-setup-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;
|
|
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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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import type { EntryOffsetMode } from './pattern-limit-entry.js';
|
|
2
|
+
import type { TradeSetupSide, TradeSetupStatus } from './shared.js';
|
|
3
|
+
export declare const DEFAULT_Z_SCORE_PERIOD = 20;
|
|
4
|
+
export declare const DEFAULT_Z_SCORE_ENTRY = 2;
|
|
5
|
+
export declare const DEFAULT_Z_SCORE_EXIT = 0.5;
|
|
6
|
+
export declare const DEFAULT_Z_SCORE_STOP_ATR_MULTIPLE = 2;
|
|
7
|
+
export type ZScoreAtrFilter = 'none' | 'contracting';
|
|
8
|
+
export declare const DEFAULT_Z_SCORE_ATR_FILTER: ZScoreAtrFilter;
|
|
9
|
+
export type ZScoreTradeSetup = {
|
|
10
|
+
status: TradeSetupStatus;
|
|
11
|
+
source: 'z_score';
|
|
12
|
+
lastClose: number;
|
|
13
|
+
z: number;
|
|
14
|
+
sma: number;
|
|
15
|
+
sd: number;
|
|
16
|
+
period: number;
|
|
17
|
+
entryZ: number;
|
|
18
|
+
exitZ: number;
|
|
19
|
+
stopAtrMultiple: number;
|
|
20
|
+
atrFilter: ZScoreAtrFilter;
|
|
21
|
+
atrAtLastBar?: number;
|
|
22
|
+
atrContracting?: boolean;
|
|
23
|
+
entryOffsetMode: EntryOffsetMode;
|
|
24
|
+
entryOffsetPct: number;
|
|
25
|
+
invalidationOffsetPct: number;
|
|
26
|
+
setupPurposeCode: string;
|
|
27
|
+
invalidated: boolean;
|
|
28
|
+
side: TradeSetupSide;
|
|
29
|
+
entryPrice?: number;
|
|
30
|
+
entryLabel?: string;
|
|
31
|
+
targetPrice?: number;
|
|
32
|
+
targetLabel?: string;
|
|
33
|
+
invalidationPrice?: number;
|
|
34
|
+
invalidationLabel?: string;
|
|
35
|
+
conditionalNote: string;
|
|
36
|
+
confidence: number;
|
|
37
|
+
unclearReason?: string;
|
|
38
|
+
};
|
|
39
|
+
export type ZScoreTradeIdeaContext = {
|
|
40
|
+
period: number;
|
|
41
|
+
z: number;
|
|
42
|
+
sma: number;
|
|
43
|
+
sd: number;
|
|
44
|
+
entryZ: number;
|
|
45
|
+
exitZ: number;
|
|
46
|
+
stopAtrMultiple: number;
|
|
47
|
+
atrFilter: ZScoreAtrFilter;
|
|
48
|
+
setupPurposeCode: string;
|
|
49
|
+
invalidated: boolean;
|
|
50
|
+
atrAtLastBar?: number;
|
|
51
|
+
entryOffsetPct: number;
|
|
52
|
+
invalidationOffsetPct: number;
|
|
53
|
+
};
|
|
54
|
+
export declare function buildZScoreTradeSetup(input: {
|
|
55
|
+
lastClose: number;
|
|
56
|
+
z: number;
|
|
57
|
+
sma: number;
|
|
58
|
+
sd: number;
|
|
59
|
+
period: number;
|
|
60
|
+
entryZ?: number;
|
|
61
|
+
exitZ?: number;
|
|
62
|
+
stopAtrMultiple?: number;
|
|
63
|
+
atrFilter?: ZScoreAtrFilter;
|
|
64
|
+
atr?: number | null;
|
|
65
|
+
atrPrev?: number | null;
|
|
66
|
+
entryOffsetPct?: number;
|
|
67
|
+
invalidationOffsetPct?: number;
|
|
68
|
+
}): ZScoreTradeSetup | null;
|
|
69
|
+
export declare function zScoreTradeIdeaContextFromSetup(setup: ZScoreTradeSetup): ZScoreTradeIdeaContext;
|
|
70
|
+
export declare function normalizeZScoreTradeSetup(setup: ZScoreTradeSetup): {
|
|
71
|
+
unclearReason: string | undefined;
|
|
72
|
+
invalidation?: {
|
|
73
|
+
price: number;
|
|
74
|
+
label: string;
|
|
75
|
+
} | undefined;
|
|
76
|
+
target?: {
|
|
77
|
+
price: number;
|
|
78
|
+
label: string;
|
|
79
|
+
} | undefined;
|
|
80
|
+
status: TradeSetupStatus;
|
|
81
|
+
side: TradeSetupSide;
|
|
82
|
+
confidence: number;
|
|
83
|
+
lastClose: number;
|
|
84
|
+
entry: {
|
|
85
|
+
price: number;
|
|
86
|
+
label: string;
|
|
87
|
+
} | undefined;
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=z-score-trade-setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"z-score-trade-setup.d.ts","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/z-score-trade-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { isFiniteTradePrice } from './shared.js';
|
|
2
|
+
import { tradeDeskDefaultPcts } from './trade-desk-defaults.js';
|
|
3
|
+
export const DEFAULT_Z_SCORE_PERIOD = 20;
|
|
4
|
+
export const DEFAULT_Z_SCORE_ENTRY = 2;
|
|
5
|
+
export const DEFAULT_Z_SCORE_EXIT = 0.5;
|
|
6
|
+
export const DEFAULT_Z_SCORE_STOP_ATR_MULTIPLE = 2;
|
|
7
|
+
export const DEFAULT_Z_SCORE_ATR_FILTER = 'none';
|
|
8
|
+
function resolveEntryZ(raw) {
|
|
9
|
+
if (raw != null && Number.isFinite(raw) && raw > 0) {
|
|
10
|
+
return raw;
|
|
11
|
+
}
|
|
12
|
+
return DEFAULT_Z_SCORE_ENTRY;
|
|
13
|
+
}
|
|
14
|
+
function resolveExitZ(raw) {
|
|
15
|
+
if (raw != null && Number.isFinite(raw) && raw >= 0) {
|
|
16
|
+
return raw;
|
|
17
|
+
}
|
|
18
|
+
return DEFAULT_Z_SCORE_EXIT;
|
|
19
|
+
}
|
|
20
|
+
function resolveStopMultiple(raw) {
|
|
21
|
+
if (raw != null && Number.isFinite(raw) && raw > 0) {
|
|
22
|
+
return raw;
|
|
23
|
+
}
|
|
24
|
+
return DEFAULT_Z_SCORE_STOP_ATR_MULTIPLE;
|
|
25
|
+
}
|
|
26
|
+
function resolveAtrFilter(raw) {
|
|
27
|
+
return raw === 'contracting' ? 'contracting' : DEFAULT_Z_SCORE_ATR_FILTER;
|
|
28
|
+
}
|
|
29
|
+
export function buildZScoreTradeSetup(input) {
|
|
30
|
+
const { lastClose, z, sma, sd, period } = input;
|
|
31
|
+
if (![lastClose, z, sma, sd].every(isFiniteTradePrice) ||
|
|
32
|
+
sd <= 0 ||
|
|
33
|
+
period < 2) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
const entryZ = resolveEntryZ(input.entryZ);
|
|
37
|
+
const exitZ = resolveExitZ(input.exitZ);
|
|
38
|
+
const stopAtrMultiple = resolveStopMultiple(input.stopAtrMultiple);
|
|
39
|
+
const atrFilter = resolveAtrFilter(input.atrFilter);
|
|
40
|
+
const desk = tradeDeskDefaultPcts({
|
|
41
|
+
entryOffsetPct: input.entryOffsetPct,
|
|
42
|
+
invalidationOffsetPct: input.invalidationOffsetPct,
|
|
43
|
+
});
|
|
44
|
+
const atr = input.atr != null && Number.isFinite(input.atr) && input.atr > 0 ? input.atr : undefined;
|
|
45
|
+
const atrPrev = input.atrPrev != null && Number.isFinite(input.atrPrev) && input.atrPrev > 0
|
|
46
|
+
? input.atrPrev
|
|
47
|
+
: undefined;
|
|
48
|
+
const atrContracting = atr != null && atrPrev != null ? atr < atrPrev : undefined;
|
|
49
|
+
let side = 'neutral';
|
|
50
|
+
let status = 'unclear';
|
|
51
|
+
let invalidated = false;
|
|
52
|
+
let confidence = 0.4;
|
|
53
|
+
let conditionalNote = 'Z-score within normal range — wait for |Z| ≥ entry threshold.';
|
|
54
|
+
let unclearReason = `No Z-score extreme — |Z| < ${entryZ}.`;
|
|
55
|
+
if (z <= -entryZ) {
|
|
56
|
+
side = 'long';
|
|
57
|
+
conditionalNote = `Oversold Z-score (${z.toFixed(2)}) — mean-reversion long toward SMA + ${exitZ}σ.`;
|
|
58
|
+
if (atrFilter === 'contracting' && atrContracting !== true) {
|
|
59
|
+
unclearReason = 'Long Z-score extreme but ATR filter requires contracting volatility.';
|
|
60
|
+
}
|
|
61
|
+
else if (atr == null) {
|
|
62
|
+
unclearReason = 'Long Z-score extreme but ATR unavailable for stop.';
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
status = 'clear';
|
|
66
|
+
unclearReason = '';
|
|
67
|
+
confidence = 0.55;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else if (z >= entryZ) {
|
|
71
|
+
side = 'short';
|
|
72
|
+
conditionalNote = `Overbought Z-score (${z.toFixed(2)}) — mean-reversion short toward SMA − ${exitZ}σ.`;
|
|
73
|
+
if (atrFilter === 'contracting' && atrContracting !== true) {
|
|
74
|
+
unclearReason = 'Short Z-score extreme but ATR filter requires contracting volatility.';
|
|
75
|
+
}
|
|
76
|
+
else if (atr == null) {
|
|
77
|
+
unclearReason = 'Short Z-score extreme but ATR unavailable for stop.';
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
status = 'clear';
|
|
81
|
+
unclearReason = '';
|
|
82
|
+
confidence = 0.55;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
const entryPrice = status === 'clear' && (side === 'long' || side === 'short') ? lastClose : undefined;
|
|
86
|
+
const entryLabel = side === 'long' || side === 'short' ? 'last close at Z extreme' : undefined;
|
|
87
|
+
const targetPrice = status === 'clear' && side === 'long'
|
|
88
|
+
? sma + exitZ * sd
|
|
89
|
+
: status === 'clear' && side === 'short'
|
|
90
|
+
? sma - exitZ * sd
|
|
91
|
+
: undefined;
|
|
92
|
+
const targetLabel = side === 'long' || side === 'short'
|
|
93
|
+
? `Z return to ${side === 'long' ? '+' : '−'}${exitZ}`
|
|
94
|
+
: undefined;
|
|
95
|
+
let invalidationPrice;
|
|
96
|
+
let invalidationLabel;
|
|
97
|
+
if (status === 'clear' && atr != null && entryPrice != null) {
|
|
98
|
+
const stopDistance = stopAtrMultiple * atr;
|
|
99
|
+
if (side === 'long') {
|
|
100
|
+
invalidationPrice = entryPrice - stopDistance;
|
|
101
|
+
invalidationLabel = `${stopAtrMultiple}× ATR below entry`;
|
|
102
|
+
if (lastClose < invalidationPrice) {
|
|
103
|
+
invalidated = true;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
else if (side === 'short') {
|
|
107
|
+
invalidationPrice = entryPrice + stopDistance;
|
|
108
|
+
invalidationLabel = `${stopAtrMultiple}× ATR above entry`;
|
|
109
|
+
if (lastClose > invalidationPrice) {
|
|
110
|
+
invalidated = true;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
if (invalidated) {
|
|
115
|
+
status = 'unclear';
|
|
116
|
+
unclearReason =
|
|
117
|
+
side === 'long'
|
|
118
|
+
? 'Invalidated: price already through ATR stop below entry.'
|
|
119
|
+
: 'Invalidated: price already through ATR stop above entry.';
|
|
120
|
+
conditionalNote = unclearReason;
|
|
121
|
+
}
|
|
122
|
+
return {
|
|
123
|
+
status,
|
|
124
|
+
source: 'z_score',
|
|
125
|
+
lastClose,
|
|
126
|
+
z,
|
|
127
|
+
sma,
|
|
128
|
+
sd,
|
|
129
|
+
period,
|
|
130
|
+
entryZ,
|
|
131
|
+
exitZ,
|
|
132
|
+
stopAtrMultiple,
|
|
133
|
+
atrFilter,
|
|
134
|
+
...(atr != null ? { atrAtLastBar: atr } : {}),
|
|
135
|
+
...(atrContracting != null ? { atrContracting } : {}),
|
|
136
|
+
entryOffsetMode: 'bounce',
|
|
137
|
+
entryOffsetPct: desk.entryOffsetPct,
|
|
138
|
+
invalidationOffsetPct: desk.invalidationOffsetPct,
|
|
139
|
+
setupPurposeCode: 'zs-fade',
|
|
140
|
+
invalidated,
|
|
141
|
+
side,
|
|
142
|
+
conditionalNote,
|
|
143
|
+
confidence,
|
|
144
|
+
...(entryPrice != null && entryLabel ? { entryPrice, entryLabel } : {}),
|
|
145
|
+
...(targetPrice != null && targetLabel ? { targetPrice, targetLabel } : {}),
|
|
146
|
+
...(invalidationPrice != null && invalidationLabel
|
|
147
|
+
? { invalidationPrice, invalidationLabel }
|
|
148
|
+
: {}),
|
|
149
|
+
...(unclearReason ? { unclearReason } : {}),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
export function zScoreTradeIdeaContextFromSetup(setup) {
|
|
153
|
+
return {
|
|
154
|
+
period: setup.period,
|
|
155
|
+
z: setup.z,
|
|
156
|
+
sma: setup.sma,
|
|
157
|
+
sd: setup.sd,
|
|
158
|
+
entryZ: setup.entryZ,
|
|
159
|
+
exitZ: setup.exitZ,
|
|
160
|
+
stopAtrMultiple: setup.stopAtrMultiple,
|
|
161
|
+
atrFilter: setup.atrFilter,
|
|
162
|
+
setupPurposeCode: setup.setupPurposeCode,
|
|
163
|
+
invalidated: setup.invalidated,
|
|
164
|
+
entryOffsetPct: setup.entryOffsetPct,
|
|
165
|
+
invalidationOffsetPct: setup.invalidationOffsetPct,
|
|
166
|
+
...(setup.atrAtLastBar != null ? { atrAtLastBar: setup.atrAtLastBar } : {}),
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
export function normalizeZScoreTradeSetup(setup) {
|
|
170
|
+
return {
|
|
171
|
+
status: setup.status,
|
|
172
|
+
side: setup.side,
|
|
173
|
+
confidence: setup.confidence,
|
|
174
|
+
lastClose: setup.lastClose,
|
|
175
|
+
entry: setup.status === 'clear' &&
|
|
176
|
+
setup.side !== 'neutral' &&
|
|
177
|
+
setup.entryPrice != null &&
|
|
178
|
+
isFiniteTradePrice(setup.entryPrice)
|
|
179
|
+
? { price: setup.entryPrice, label: setup.entryLabel ?? 'Z-score entry' }
|
|
180
|
+
: undefined,
|
|
181
|
+
...(setup.targetPrice != null && isFiniteTradePrice(setup.targetPrice)
|
|
182
|
+
? { target: { price: setup.targetPrice, label: setup.targetLabel ?? 'Z-exit target' } }
|
|
183
|
+
: {}),
|
|
184
|
+
...(setup.invalidationPrice != null && isFiniteTradePrice(setup.invalidationPrice)
|
|
185
|
+
? {
|
|
186
|
+
invalidation: {
|
|
187
|
+
price: setup.invalidationPrice,
|
|
188
|
+
label: setup.invalidationLabel ?? 'ATR stop',
|
|
189
|
+
},
|
|
190
|
+
}
|
|
191
|
+
: {}),
|
|
192
|
+
unclearReason: setup.unclearReason,
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=z-score-trade-setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"z-score-trade-setup.js","sourceRoot":"","sources":["../../../../../src/core/chart/analysis/trade-setups/z-score-trade-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { SdkResult } from '../../result.js';
|
|
3
|
+
export declare const AnalyzeZScoreInputSchema: z.ZodPreprocess<z.ZodObject<{
|
|
4
|
+
toolResult: z.ZodOptional<z.ZodUnknown>;
|
|
5
|
+
rows: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
6
|
+
title: z.ZodOptional<z.ZodString>;
|
|
7
|
+
label: z.ZodOptional<z.ZodString>;
|
|
8
|
+
ohlcvDigest: z.ZodOptional<z.ZodString>;
|
|
9
|
+
mergeLive: z.ZodOptional<z.ZodBoolean>;
|
|
10
|
+
liveTick: z.ZodOptional<z.ZodObject<{
|
|
11
|
+
timeMs: z.ZodNumber;
|
|
12
|
+
price: z.ZodNumber;
|
|
13
|
+
volume: z.ZodOptional<z.ZodNumber>;
|
|
14
|
+
}, z.core.$strict>>;
|
|
15
|
+
allowRowsOnly: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
+
period: z.ZodOptional<z.ZodNumber>;
|
|
17
|
+
zScorePeriod: z.ZodOptional<z.ZodNumber>;
|
|
18
|
+
zScoreEntry: z.ZodOptional<z.ZodNumber>;
|
|
19
|
+
zScoreExit: z.ZodOptional<z.ZodNumber>;
|
|
20
|
+
zScoreStopAtrMultiple: z.ZodOptional<z.ZodNumber>;
|
|
21
|
+
zScoreAtrFilter: z.ZodOptional<z.ZodEnum<{
|
|
22
|
+
none: "none";
|
|
23
|
+
contracting: "contracting";
|
|
24
|
+
}>>;
|
|
25
|
+
entryProximityAtrPeriod: z.ZodOptional<z.ZodNumber>;
|
|
26
|
+
entryOffsetPct: z.ZodOptional<z.ZodNumber>;
|
|
27
|
+
invalidationOffsetPct: z.ZodOptional<z.ZodNumber>;
|
|
28
|
+
}, z.core.$strict>>;
|
|
29
|
+
export declare const AnalyzeZScoreOutputSchema: z.ZodObject<{
|
|
30
|
+
analysis: z.ZodObject<{
|
|
31
|
+
summary: z.ZodString;
|
|
32
|
+
interpretation: z.ZodString;
|
|
33
|
+
z: z.ZodNumber;
|
|
34
|
+
sma: z.ZodNumber;
|
|
35
|
+
sd: z.ZodNumber;
|
|
36
|
+
atr: z.ZodNullable<z.ZodNumber>;
|
|
37
|
+
period: z.ZodNumber;
|
|
38
|
+
entryZ: z.ZodNumber;
|
|
39
|
+
exitZ: z.ZodNumber;
|
|
40
|
+
stopAtrMultiple: z.ZodNumber;
|
|
41
|
+
atrFilter: z.ZodEnum<{
|
|
42
|
+
none: "none";
|
|
43
|
+
contracting: "contracting";
|
|
44
|
+
}>;
|
|
45
|
+
zScoreTradeSetup: z.ZodNullable<z.ZodObject<{}, z.core.$catchall<z.ZodUnknown>>>;
|
|
46
|
+
zScoreHighlight: z.ZodObject<{}, z.core.$catchall<z.ZodUnknown>>;
|
|
47
|
+
}, z.core.$strict>;
|
|
48
|
+
meta: z.ZodObject<{
|
|
49
|
+
barCount: z.ZodNumber;
|
|
50
|
+
title: z.ZodOptional<z.ZodString>;
|
|
51
|
+
ohlcvSummary: z.ZodOptional<z.ZodObject<{
|
|
52
|
+
barCount: z.ZodNumber;
|
|
53
|
+
timeStartSec: z.ZodNumber;
|
|
54
|
+
timeEndSec: z.ZodNumber;
|
|
55
|
+
low: z.ZodNumber;
|
|
56
|
+
high: z.ZodNumber;
|
|
57
|
+
lastClose: z.ZodNumber;
|
|
58
|
+
}, z.core.$strict>>;
|
|
59
|
+
ohlcvFingerprint: z.ZodOptional<z.ZodObject<{
|
|
60
|
+
version: z.ZodLiteral<1>;
|
|
61
|
+
barCount: z.ZodNumber;
|
|
62
|
+
timeStartSec: z.ZodNumber;
|
|
63
|
+
timeEndSec: z.ZodNumber;
|
|
64
|
+
low: z.ZodNumber;
|
|
65
|
+
high: z.ZodNumber;
|
|
66
|
+
lastClose: z.ZodNumber;
|
|
67
|
+
digest: z.ZodString;
|
|
68
|
+
}, z.core.$strict>>;
|
|
69
|
+
fetchContext: z.ZodOptional<z.ZodObject<{
|
|
70
|
+
interval: z.ZodNullable<z.ZodString>;
|
|
71
|
+
intervalSec: z.ZodNullable<z.ZodNumber>;
|
|
72
|
+
lookbackDays: z.ZodNullable<z.ZodNumber>;
|
|
73
|
+
lookbackHours: z.ZodNullable<z.ZodNumber>;
|
|
74
|
+
lookbackLabel: z.ZodNullable<z.ZodString>;
|
|
75
|
+
coin: z.ZodNullable<z.ZodString>;
|
|
76
|
+
declaredBarCount: z.ZodNullable<z.ZodNumber>;
|
|
77
|
+
windowExpectedBarCount: z.ZodNullable<z.ZodNumber>;
|
|
78
|
+
expectedBarCount: z.ZodNullable<z.ZodNumber>;
|
|
79
|
+
}, z.core.$strict>>;
|
|
80
|
+
windowExpectation: z.ZodOptional<z.ZodObject<{
|
|
81
|
+
interval: z.ZodNullable<z.ZodString>;
|
|
82
|
+
intervalSec: z.ZodNullable<z.ZodNumber>;
|
|
83
|
+
lookbackLabel: z.ZodNullable<z.ZodString>;
|
|
84
|
+
expectedBarCount: z.ZodNullable<z.ZodNumber>;
|
|
85
|
+
minBarCount: z.ZodNullable<z.ZodNumber>;
|
|
86
|
+
sources: z.ZodArray<z.ZodString>;
|
|
87
|
+
}, z.core.$strict>>;
|
|
88
|
+
liveMerge: z.ZodOptional<z.ZodObject<{
|
|
89
|
+
attempted: z.ZodBoolean;
|
|
90
|
+
merged: z.ZodBoolean;
|
|
91
|
+
livePrice: z.ZodOptional<z.ZodNumber>;
|
|
92
|
+
liveTickTimeMs: z.ZodOptional<z.ZodNumber>;
|
|
93
|
+
priorLastClose: z.ZodOptional<z.ZodNumber>;
|
|
94
|
+
barRolledOver: z.ZodOptional<z.ZodBoolean>;
|
|
95
|
+
skippedReason: z.ZodOptional<z.ZodString>;
|
|
96
|
+
}, z.core.$strict>>;
|
|
97
|
+
patternsScanned: z.ZodOptional<z.ZodNumber>;
|
|
98
|
+
dataPolicy: z.ZodString;
|
|
99
|
+
warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
100
|
+
sessionBind: z.ZodOptional<z.ZodObject<{
|
|
101
|
+
ohlcvDigest: z.ZodString;
|
|
102
|
+
title: z.ZodOptional<z.ZodString>;
|
|
103
|
+
reuseInput: z.ZodObject<{
|
|
104
|
+
title: z.ZodOptional<z.ZodString>;
|
|
105
|
+
ohlcvDigest: z.ZodString;
|
|
106
|
+
}, z.core.$strict>;
|
|
107
|
+
}, z.core.$strict>>;
|
|
108
|
+
}, z.core.$strict>;
|
|
109
|
+
}, z.core.$strict>;
|
|
110
|
+
export declare function analyzeZScore(input: unknown): Promise<SdkResult<z.infer<typeof AnalyzeZScoreOutputSchema>>>;
|
|
111
|
+
//# sourceMappingURL=z-score-analyze-tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"z-score-analyze-tools.d.ts","sourceRoot":"","sources":["../../../../src/core/chart/analysis/z-score-analyze-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AA4C/C,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;mBAGpC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqB5B,CAAC;AAgFX,wBAAsB,aAAa,CAClC,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAgI/D"}
|