@continuumdao/continuum-node-sdk 1.3.25 → 1.3.28
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/README.md +15 -1
- package/dist/agent-host-catalog.json +189 -0
- package/dist/core/agent/agent-chart-data-access-assert.d.ts +7 -0
- package/dist/core/agent/agent-chart-data-access-assert.d.ts.map +1 -0
- package/dist/core/agent/agent-chart-data-access-assert.js +27 -0
- package/dist/core/agent/agent-chart-data-access-assert.js.map +1 -0
- package/dist/core/agent/agent-chart-data-access.d.ts +11 -0
- package/dist/core/agent/agent-chart-data-access.d.ts.map +1 -0
- package/dist/core/agent/agent-chart-data-access.js +42 -0
- package/dist/core/agent/agent-chart-data-access.js.map +1 -0
- package/dist/core/agent/environment-variables.d.ts +8 -1
- package/dist/core/agent/environment-variables.d.ts.map +1 -1
- package/dist/core/agent/environment-variables.js +44 -1
- package/dist/core/agent/environment-variables.js.map +1 -1
- package/dist/core/agent/mcp-servers.d.ts +8 -1
- package/dist/core/agent/mcp-servers.d.ts.map +1 -1
- package/dist/core/agent/mcp-servers.js +50 -1
- package/dist/core/agent/mcp-servers.js.map +1 -1
- package/dist/core/agent/skills.d.ts +6 -0
- package/dist/core/agent/skills.d.ts.map +1 -1
- package/dist/core/agent/skills.js +40 -1
- package/dist/core/agent/skills.js.map +1 -1
- package/dist/core/candlestick-patterns/calibration-weights.d.ts +3 -0
- package/dist/core/candlestick-patterns/calibration-weights.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/calibration-weights.js +3 -0
- package/dist/core/candlestick-patterns/calibration-weights.js.map +1 -0
- package/dist/core/candlestick-patterns/candle-settings.d.ts +50 -0
- package/dist/core/candlestick-patterns/candle-settings.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/candle-settings.js +127 -0
- package/dist/core/candlestick-patterns/candle-settings.js.map +1 -0
- package/dist/core/candlestick-patterns/catalog.d.ts +7 -0
- package/dist/core/candlestick-patterns/catalog.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/catalog.js +191 -0
- package/dist/core/candlestick-patterns/catalog.js.map +1 -0
- package/dist/core/candlestick-patterns/index.d.ts +7 -0
- package/dist/core/candlestick-patterns/index.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/index.js +6 -0
- package/dist/core/candlestick-patterns/index.js.map +1 -0
- package/dist/core/candlestick-patterns/patterns/detect.d.ts +21 -0
- package/dist/core/candlestick-patterns/patterns/detect.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/patterns/detect.js +515 -0
- package/dist/core/candlestick-patterns/patterns/detect.js.map +1 -0
- package/dist/core/candlestick-patterns/recommendation.d.ts +3 -0
- package/dist/core/candlestick-patterns/recommendation.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/recommendation.js +92 -0
- package/dist/core/candlestick-patterns/recommendation.js.map +1 -0
- package/dist/core/candlestick-patterns/scan.d.ts +8 -0
- package/dist/core/candlestick-patterns/scan.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/scan.js +70 -0
- package/dist/core/candlestick-patterns/scan.js.map +1 -0
- package/dist/core/candlestick-patterns/types.d.ts +47 -0
- package/dist/core/candlestick-patterns/types.d.ts.map +1 -0
- package/dist/core/candlestick-patterns/types.js +2 -0
- package/dist/core/candlestick-patterns/types.js.map +1 -0
- package/dist/core/chart/analysis/analysis-agent-view.d.ts +6 -0
- package/dist/core/chart/analysis/analysis-agent-view.d.ts.map +1 -0
- package/dist/core/chart/analysis/analysis-agent-view.js +224 -0
- package/dist/core/chart/analysis/analysis-agent-view.js.map +1 -0
- package/dist/core/chart/analysis/analysis-catalog.d.ts +18 -0
- package/dist/core/chart/analysis/analysis-catalog.d.ts.map +1 -0
- package/dist/core/chart/analysis/analysis-catalog.js +108 -0
- package/dist/core/chart/analysis/analysis-catalog.js.map +1 -0
- package/dist/core/chart/analysis/analysis-meta.d.ts +97 -0
- package/dist/core/chart/analysis/analysis-meta.d.ts.map +1 -0
- package/dist/core/chart/analysis/analysis-meta.js +86 -0
- package/dist/core/chart/analysis/analysis-meta.js.map +1 -0
- package/dist/core/chart/analysis/analyze-tools.d.ts +668 -0
- package/dist/core/chart/analysis/analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/analyze-tools.js +859 -0
- package/dist/core/chart/analysis/analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/candlestick-highlight.d.ts +55 -0
- package/dist/core/chart/analysis/candlestick-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/candlestick-highlight.js +71 -0
- package/dist/core/chart/analysis/candlestick-highlight.js.map +1 -0
- package/dist/core/chart/analysis/candlestick-patterns-tools.d.ts +164 -0
- package/dist/core/chart/analysis/candlestick-patterns-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/candlestick-patterns-tools.js +205 -0
- package/dist/core/chart/analysis/candlestick-patterns-tools.js.map +1 -0
- package/dist/core/chart/analysis/chart-patterns-drawings-tools.d.ts +105 -0
- package/dist/core/chart/analysis/chart-patterns-drawings-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/chart-patterns-drawings-tools.js +512 -0
- package/dist/core/chart/analysis/chart-patterns-drawings-tools.js.map +1 -0
- package/dist/core/chart/analysis/chart-patterns-tools.d.ts +542 -0
- package/dist/core/chart/analysis/chart-patterns-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/chart-patterns-tools.js +283 -0
- package/dist/core/chart/analysis/chart-patterns-tools.js.map +1 -0
- package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts +42 -0
- package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/key-fib-drawings-tools.js +140 -0
- package/dist/core/chart/analysis/key-fib-drawings-tools.js.map +1 -0
- package/dist/core/chart/analysis/key-level-break-detect.d.ts +27 -0
- package/dist/core/chart/analysis/key-level-break-detect.d.ts.map +1 -0
- package/dist/core/chart/analysis/key-level-break-detect.js +156 -0
- package/dist/core/chart/analysis/key-level-break-detect.js.map +1 -0
- package/dist/core/chart/analysis/key-level-drawings-shared.d.ts +109 -0
- package/dist/core/chart/analysis/key-level-drawings-shared.d.ts.map +1 -0
- package/dist/core/chart/analysis/key-level-drawings-shared.js +335 -0
- package/dist/core/chart/analysis/key-level-drawings-shared.js.map +1 -0
- package/dist/core/chart/analysis/key-level-drawings-tools.d.ts +42 -0
- package/dist/core/chart/analysis/key-level-drawings-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/key-level-drawings-tools.js +140 -0
- package/dist/core/chart/analysis/key-level-drawings-tools.js.map +1 -0
- package/dist/core/chart/analysis/key-level-menu-summary.d.ts +84 -0
- package/dist/core/chart/analysis/key-level-menu-summary.d.ts.map +1 -0
- package/dist/core/chart/analysis/key-level-menu-summary.js +257 -0
- package/dist/core/chart/analysis/key-level-menu-summary.js.map +1 -0
- package/dist/core/chart/analysis/key-levels-dataset.d.ts +17 -0
- package/dist/core/chart/analysis/key-levels-dataset.d.ts.map +1 -0
- package/dist/core/chart/analysis/key-levels-dataset.js +44 -0
- package/dist/core/chart/analysis/key-levels-dataset.js.map +1 -0
- package/dist/core/chart/analysis/momentum-highlight.d.ts +31 -0
- package/dist/core/chart/analysis/momentum-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/momentum-highlight.js +59 -0
- package/dist/core/chart/analysis/momentum-highlight.js.map +1 -0
- package/dist/core/chart/analysis/ohlcv-input.d.ts +39 -0
- package/dist/core/chart/analysis/ohlcv-input.d.ts.map +1 -0
- package/dist/core/chart/analysis/ohlcv-input.js +89 -0
- package/dist/core/chart/analysis/ohlcv-input.js.map +1 -0
- package/dist/core/chart/analysis/ohlcv-live-merge.d.ts +39 -0
- package/dist/core/chart/analysis/ohlcv-live-merge.d.ts.map +1 -0
- package/dist/core/chart/analysis/ohlcv-live-merge.js +158 -0
- package/dist/core/chart/analysis/ohlcv-live-merge.js.map +1 -0
- package/dist/core/chart/analysis/range-volatility-highlight.d.ts +31 -0
- package/dist/core/chart/analysis/range-volatility-highlight.d.ts.map +1 -0
- package/dist/core/chart/analysis/range-volatility-highlight.js +53 -0
- package/dist/core/chart/analysis/range-volatility-highlight.js.map +1 -0
- package/dist/core/chart/analysis/time-series-analyze-tools.d.ts +98 -0
- package/dist/core/chart/analysis/time-series-analyze-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/time-series-analyze-tools.js +343 -0
- package/dist/core/chart/analysis/time-series-analyze-tools.js.map +1 -0
- package/dist/core/chart/analysis/time-series-input.d.ts +15 -0
- package/dist/core/chart/analysis/time-series-input.d.ts.map +1 -0
- package/dist/core/chart/analysis/time-series-input.js +155 -0
- package/dist/core/chart/analysis/time-series-input.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.d.ts +10 -0
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.js +128 -0
- package/dist/core/chart/analysis/trade-setups/build-trade-uniswap.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade.d.ts +46 -0
- package/dist/core/chart/analysis/trade-setups/build-trade.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/build-trade.js +298 -0
- package/dist/core/chart/analysis/trade-setups/build-trade.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.d.ts +48 -0
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.js +76 -0
- package/dist/core/chart/analysis/trade-setups/candlestick-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.d.ts +56 -0
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.js +223 -0
- package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/index.d.ts +13 -0
- package/dist/core/chart/analysis/trade-setups/index.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/index.js +13 -0
- package/dist/core/chart/analysis/trade-setups/index.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.d.ts +105 -0
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.js +452 -0
- package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.d.ts +110 -0
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.js +344 -0
- package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/momentum-trade-setup.d.ts +39 -0
- package/dist/core/chart/analysis/trade-setups/momentum-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/momentum-trade-setup.js +68 -0
- package/dist/core/chart/analysis/trade-setups/momentum-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.d.ts +42 -0
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.js +395 -0
- package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/range-volatility-trade-setup.d.ts +52 -0
- package/dist/core/chart/analysis/trade-setups/range-volatility-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/range-volatility-trade-setup.js +119 -0
- package/dist/core/chart/analysis/trade-setups/range-volatility-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/shared.d.ts +21 -0
- package/dist/core/chart/analysis/trade-setups/shared.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/shared.js +48 -0
- package/dist/core/chart/analysis/trade-setups/shared.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-consensus.d.ts +22 -0
- package/dist/core/chart/analysis/trade-setups/trade-consensus.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-consensus.js +95 -0
- package/dist/core/chart/analysis/trade-setups/trade-consensus.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.d.ts +11 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.js +13 -0
- package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.d.ts +40 -0
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.js +84 -0
- package/dist/core/chart/analysis/trade-setups/trade-entry-gates.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts +46 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.js +98 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea-list.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea.d.ts +76 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea.js +187 -0
- package/dist/core/chart/analysis/trade-setups/trade-idea.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.d.ts +43 -0
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.js +183 -0
- package/dist/core/chart/analysis/trade-setups/trade-purpose-format.js.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.d.ts +59 -0
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.d.ts.map +1 -0
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.js +138 -0
- package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.js.map +1 -0
- package/dist/core/chart/analysis/trend-line-drawings-tools.d.ts +56 -0
- package/dist/core/chart/analysis/trend-line-drawings-tools.d.ts.map +1 -0
- package/dist/core/chart/analysis/trend-line-drawings-tools.js +271 -0
- package/dist/core/chart/analysis/trend-line-drawings-tools.js.map +1 -0
- package/dist/core/chart/analysis/trend-line-menu-summary.d.ts +38 -0
- package/dist/core/chart/analysis/trend-line-menu-summary.d.ts.map +1 -0
- package/dist/core/chart/analysis/trend-line-menu-summary.js +94 -0
- package/dist/core/chart/analysis/trend-line-menu-summary.js.map +1 -0
- package/dist/core/chart/apply-chart-drawings.d.ts +3 -0
- package/dist/core/chart/apply-chart-drawings.d.ts.map +1 -1
- package/dist/core/chart/apply-chart-drawings.js +101 -31
- package/dist/core/chart/apply-chart-drawings.js.map +1 -1
- package/dist/core/chart/chart-agent-view.d.ts +4 -0
- package/dist/core/chart/chart-agent-view.d.ts.map +1 -0
- package/dist/core/chart/chart-agent-view.js +27 -0
- package/dist/core/chart/chart-agent-view.js.map +1 -0
- package/dist/core/chart/chart-data-validation.d.ts +63 -0
- package/dist/core/chart/chart-data-validation.d.ts.map +1 -0
- package/dist/core/chart/chart-data-validation.js +320 -0
- package/dist/core/chart/chart-data-validation.js.map +1 -0
- package/dist/core/chart/chart-ohlcv-load-status.d.ts +39 -0
- package/dist/core/chart/chart-ohlcv-load-status.d.ts.map +1 -0
- package/dist/core/chart/chart-ohlcv-load-status.js +281 -0
- package/dist/core/chart/chart-ohlcv-load-status.js.map +1 -0
- package/dist/core/chart/chart-ohlcv-summary.d.ts +58 -0
- package/dist/core/chart/chart-ohlcv-summary.d.ts.map +1 -0
- package/dist/core/chart/chart-ohlcv-summary.js +118 -0
- package/dist/core/chart/chart-ohlcv-summary.js.map +1 -0
- package/dist/core/chart/chart-pattern-session-store.d.ts +39 -0
- package/dist/core/chart/chart-pattern-session-store.d.ts.map +1 -0
- package/dist/core/chart/chart-pattern-session-store.js +94 -0
- package/dist/core/chart/chart-pattern-session-store.js.map +1 -0
- package/dist/core/chart/customization-catalog.d.ts.map +1 -1
- package/dist/core/chart/customization-catalog.js +8 -2
- package/dist/core/chart/customization-catalog.js.map +1 -1
- package/dist/core/chart/display-downsample.d.ts +9 -0
- package/dist/core/chart/display-downsample.d.ts.map +1 -0
- package/dist/core/chart/display-downsample.js +79 -0
- package/dist/core/chart/display-downsample.js.map +1 -0
- package/dist/core/chart/index.d.ts +2 -1
- package/dist/core/chart/index.d.ts.map +1 -1
- package/dist/core/chart/index.js +2 -1
- package/dist/core/chart/index.js.map +1 -1
- package/dist/core/chart/levels/calculate-tools.d.ts +8 -0
- package/dist/core/chart/levels/calculate-tools.d.ts.map +1 -1
- package/dist/core/chart/levels/calculate-tools.js +9 -3
- package/dist/core/chart/levels/calculate-tools.js.map +1 -1
- package/dist/core/chart/levels/trend-lines.d.ts +3 -0
- package/dist/core/chart/levels/trend-lines.d.ts.map +1 -1
- package/dist/core/chart/levels/trend-lines.js +6 -3
- package/dist/core/chart/levels/trend-lines.js.map +1 -1
- package/dist/core/chart/live/binding-extract.d.ts.map +1 -1
- package/dist/core/chart/live/binding-extract.js +10 -1
- package/dist/core/chart/live/binding-extract.js.map +1 -1
- package/dist/core/chart/live/fetch-tick.d.ts +4 -0
- package/dist/core/chart/live/fetch-tick.d.ts.map +1 -0
- package/dist/core/chart/live/fetch-tick.js +73 -0
- package/dist/core/chart/live/fetch-tick.js.map +1 -0
- package/dist/core/chart/live/index.d.ts +1 -0
- package/dist/core/chart/live/index.d.ts.map +1 -1
- package/dist/core/chart/live/index.js +1 -0
- package/dist/core/chart/live/index.js.map +1 -1
- package/dist/core/chart/ohlcv-integrity-messages.d.ts +5 -0
- package/dist/core/chart/ohlcv-integrity-messages.d.ts.map +1 -0
- package/dist/core/chart/ohlcv-integrity-messages.js +12 -0
- package/dist/core/chart/ohlcv-integrity-messages.js.map +1 -0
- package/dist/core/chart/ohlcv-integrity.d.ts +82 -0
- package/dist/core/chart/ohlcv-integrity.d.ts.map +1 -0
- package/dist/core/chart/ohlcv-integrity.js +266 -0
- package/dist/core/chart/ohlcv-integrity.js.map +1 -0
- package/dist/core/chart/ohlcv-session-store.d.ts +38 -0
- package/dist/core/chart/ohlcv-session-store.d.ts.map +1 -0
- package/dist/core/chart/ohlcv-session-store.js +107 -0
- package/dist/core/chart/ohlcv-session-store.js.map +1 -0
- package/dist/core/chart/ohlcv-window-expectations.d.ts +77 -0
- package/dist/core/chart/ohlcv-window-expectations.d.ts.map +1 -0
- package/dist/core/chart/ohlcv-window-expectations.js +426 -0
- package/dist/core/chart/ohlcv-window-expectations.js.map +1 -0
- package/dist/core/chart/ohlcv-window.d.ts +36 -0
- package/dist/core/chart/ohlcv-window.d.ts.map +1 -0
- package/dist/core/chart/ohlcv-window.js +238 -0
- package/dist/core/chart/ohlcv-window.js.map +1 -0
- package/dist/core/chart/overlay-schemas.d.ts +545 -0
- package/dist/core/chart/overlay-schemas.d.ts.map +1 -1
- package/dist/core/chart/overlay-schemas.js +116 -1
- 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 +283 -11
- package/dist/core/chart/overlays.js.map +1 -1
- package/dist/core/chart/point-normalize.d.ts.map +1 -1
- package/dist/core/chart/point-normalize.js +21 -14
- package/dist/core/chart/point-normalize.js.map +1 -1
- package/dist/core/chart/prepare-core.d.ts.map +1 -1
- package/dist/core/chart/prepare-core.js +5 -1
- package/dist/core/chart/prepare-core.js.map +1 -1
- package/dist/core/chart/prepare-from-rows.d.ts +202 -1
- package/dist/core/chart/prepare-from-rows.d.ts.map +1 -1
- package/dist/core/chart/prepare-from-rows.js +81 -11
- package/dist/core/chart/prepare-from-rows.js.map +1 -1
- package/dist/core/chart/schemas.d.ts +686 -6
- package/dist/core/chart/schemas.d.ts.map +1 -1
- package/dist/core/chart/schemas.js +49 -6
- package/dist/core/chart/schemas.js.map +1 -1
- package/dist/core/chart-patterns/atr.d.ts +15 -0
- package/dist/core/chart-patterns/atr.d.ts.map +1 -0
- package/dist/core/chart-patterns/atr.js +57 -0
- package/dist/core/chart-patterns/atr.js.map +1 -0
- package/dist/core/chart-patterns/catalog.d.ts +7 -0
- package/dist/core/chart-patterns/catalog.d.ts.map +1 -0
- package/dist/core/chart-patterns/catalog.js +221 -0
- package/dist/core/chart-patterns/catalog.js.map +1 -0
- package/dist/core/chart-patterns/confidence.d.ts +12 -0
- package/dist/core/chart-patterns/confidence.d.ts.map +1 -0
- package/dist/core/chart-patterns/confidence.js +58 -0
- package/dist/core/chart-patterns/confidence.js.map +1 -0
- package/dist/core/chart-patterns/drawing-spec.d.ts +44 -0
- package/dist/core/chart-patterns/drawing-spec.d.ts.map +1 -0
- package/dist/core/chart-patterns/drawing-spec.js +425 -0
- package/dist/core/chart-patterns/drawing-spec.js.map +1 -0
- package/dist/core/chart-patterns/geometry-to-overlay.d.ts +34 -0
- package/dist/core/chart-patterns/geometry-to-overlay.d.ts.map +1 -0
- package/dist/core/chart-patterns/geometry-to-overlay.js +401 -0
- package/dist/core/chart-patterns/geometry-to-overlay.js.map +1 -0
- package/dist/core/chart-patterns/index.d.ts +13 -0
- package/dist/core/chart-patterns/index.d.ts.map +1 -0
- package/dist/core/chart-patterns/index.js +12 -0
- package/dist/core/chart-patterns/index.js.map +1 -0
- package/dist/core/chart-patterns/interpretation.d.ts +6 -0
- package/dist/core/chart-patterns/interpretation.d.ts.map +1 -0
- package/dist/core/chart-patterns/interpretation.js +49 -0
- package/dist/core/chart-patterns/interpretation.js.map +1 -0
- package/dist/core/chart-patterns/measured-move.d.ts +3 -0
- package/dist/core/chart-patterns/measured-move.d.ts.map +1 -0
- package/dist/core/chart-patterns/measured-move.js +196 -0
- package/dist/core/chart-patterns/measured-move.js.map +1 -0
- package/dist/core/chart-patterns/pattern-enrich.d.ts +4 -0
- package/dist/core/chart-patterns/pattern-enrich.d.ts.map +1 -0
- package/dist/core/chart-patterns/pattern-enrich.js +20 -0
- package/dist/core/chart-patterns/pattern-enrich.js.map +1 -0
- package/dist/core/chart-patterns/pattern-id-aliases.d.ts +3 -0
- package/dist/core/chart-patterns/pattern-id-aliases.d.ts.map +1 -0
- package/dist/core/chart-patterns/pattern-id-aliases.js +17 -0
- package/dist/core/chart-patterns/pattern-id-aliases.js.map +1 -0
- package/dist/core/chart-patterns/pattern-menu-summary.d.ts +21 -0
- package/dist/core/chart-patterns/pattern-menu-summary.d.ts.map +1 -0
- package/dist/core/chart-patterns/pattern-menu-summary.js +68 -0
- package/dist/core/chart-patterns/pattern-menu-summary.js.map +1 -0
- package/dist/core/chart-patterns/patterns/channel.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/channel.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/channel.js +137 -0
- package/dist/core/chart-patterns/patterns/channel.js.map +1 -0
- package/dist/core/chart-patterns/patterns/cup-and-handle.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/cup-and-handle.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/cup-and-handle.js +89 -0
- package/dist/core/chart-patterns/patterns/cup-and-handle.js.map +1 -0
- package/dist/core/chart-patterns/patterns/doubles.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/doubles.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/doubles.js +163 -0
- package/dist/core/chart-patterns/patterns/doubles.js.map +1 -0
- package/dist/core/chart-patterns/patterns/flag.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/flag.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/flag.js +64 -0
- package/dist/core/chart-patterns/patterns/flag.js.map +1 -0
- package/dist/core/chart-patterns/patterns/head-and-shoulders.d.ts +5 -0
- package/dist/core/chart-patterns/patterns/head-and-shoulders.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/head-and-shoulders.js +69 -0
- package/dist/core/chart-patterns/patterns/head-and-shoulders.js.map +1 -0
- package/dist/core/chart-patterns/patterns/inverse-head-and-shoulders.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/inverse-head-and-shoulders.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/inverse-head-and-shoulders.js +66 -0
- package/dist/core/chart-patterns/patterns/inverse-head-and-shoulders.js.map +1 -0
- package/dist/core/chart-patterns/patterns/pennant.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/pennant.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/pennant.js +66 -0
- package/dist/core/chart-patterns/patterns/pennant.js.map +1 -0
- package/dist/core/chart-patterns/patterns/trendline-breakout.d.ts +10 -0
- package/dist/core/chart-patterns/patterns/trendline-breakout.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/trendline-breakout.js +241 -0
- package/dist/core/chart-patterns/patterns/trendline-breakout.js.map +1 -0
- package/dist/core/chart-patterns/patterns/triangles.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/triangles.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/triangles.js +113 -0
- package/dist/core/chart-patterns/patterns/triangles.js.map +1 -0
- package/dist/core/chart-patterns/patterns/utils.d.ts +20 -0
- package/dist/core/chart-patterns/patterns/utils.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/utils.js +60 -0
- package/dist/core/chart-patterns/patterns/utils.js.map +1 -0
- package/dist/core/chart-patterns/patterns/wedge.d.ts +4 -0
- package/dist/core/chart-patterns/patterns/wedge.d.ts.map +1 -0
- package/dist/core/chart-patterns/patterns/wedge.js +88 -0
- package/dist/core/chart-patterns/patterns/wedge.js.map +1 -0
- package/dist/core/chart-patterns/recommendation.d.ts +5 -0
- package/dist/core/chart-patterns/recommendation.d.ts.map +1 -0
- package/dist/core/chart-patterns/recommendation.js +84 -0
- package/dist/core/chart-patterns/recommendation.js.map +1 -0
- package/dist/core/chart-patterns/scan.d.ts +5 -0
- package/dist/core/chart-patterns/scan.d.ts.map +1 -0
- package/dist/core/chart-patterns/scan.js +121 -0
- package/dist/core/chart-patterns/scan.js.map +1 -0
- package/dist/core/chart-patterns/smoothing.d.ts +10 -0
- package/dist/core/chart-patterns/smoothing.d.ts.map +1 -0
- package/dist/core/chart-patterns/smoothing.js +45 -0
- package/dist/core/chart-patterns/smoothing.js.map +1 -0
- package/dist/core/chart-patterns/swings.d.ts +12 -0
- package/dist/core/chart-patterns/swings.d.ts.map +1 -0
- package/dist/core/chart-patterns/swings.js +135 -0
- package/dist/core/chart-patterns/swings.js.map +1 -0
- package/dist/core/chart-patterns/trade-setup.d.ts +2 -0
- package/dist/core/chart-patterns/trade-setup.d.ts.map +1 -0
- package/dist/core/chart-patterns/trade-setup.js +2 -0
- package/dist/core/chart-patterns/trade-setup.js.map +1 -0
- package/dist/core/chart-patterns/types.d.ts +225 -0
- package/dist/core/chart-patterns/types.d.ts.map +1 -0
- package/dist/core/chart-patterns/types.js +2 -0
- package/dist/core/chart-patterns/types.js.map +1 -0
- package/dist/core/chart-patterns/volume-confirmation.d.ts +13 -0
- package/dist/core/chart-patterns/volume-confirmation.d.ts.map +1 -0
- package/dist/core/chart-patterns/volume-confirmation.js +172 -0
- package/dist/core/chart-patterns/volume-confirmation.js.map +1 -0
- package/dist/core/coinmarketcap/api-key.d.ts +8 -0
- package/dist/core/coinmarketcap/api-key.d.ts.map +1 -0
- package/dist/core/coinmarketcap/api-key.js +30 -0
- package/dist/core/coinmarketcap/api-key.js.map +1 -0
- package/dist/core/coinmarketcap/client.d.ts +8 -0
- package/dist/core/coinmarketcap/client.d.ts.map +1 -0
- package/dist/core/coinmarketcap/client.js +103 -0
- package/dist/core/coinmarketcap/client.js.map +1 -0
- package/dist/core/coinmarketcap/index.d.ts +7 -0
- package/dist/core/coinmarketcap/index.d.ts.map +1 -0
- package/dist/core/coinmarketcap/index.js +7 -0
- package/dist/core/coinmarketcap/index.js.map +1 -0
- package/dist/core/coinmarketcap/kline-fallback.d.ts +11 -0
- package/dist/core/coinmarketcap/kline-fallback.d.ts.map +1 -0
- package/dist/core/coinmarketcap/kline-fallback.js +35 -0
- package/dist/core/coinmarketcap/kline-fallback.js.map +1 -0
- package/dist/core/coinmarketcap/kline-window.d.ts +26 -0
- package/dist/core/coinmarketcap/kline-window.d.ts.map +1 -0
- package/dist/core/coinmarketcap/kline-window.js +75 -0
- package/dist/core/coinmarketcap/kline-window.js.map +1 -0
- package/dist/core/coinmarketcap/kline.d.ts +13 -0
- package/dist/core/coinmarketcap/kline.d.ts.map +1 -0
- package/dist/core/coinmarketcap/kline.js +49 -0
- package/dist/core/coinmarketcap/kline.js.map +1 -0
- package/dist/core/coinmarketcap/mcp-server-choice.d.ts +24 -0
- package/dist/core/coinmarketcap/mcp-server-choice.d.ts.map +1 -0
- package/dist/core/coinmarketcap/mcp-server-choice.js +77 -0
- package/dist/core/coinmarketcap/mcp-server-choice.js.map +1 -0
- package/dist/core/coinmarketcap/public-api.d.ts +24 -0
- package/dist/core/coinmarketcap/public-api.d.ts.map +1 -0
- package/dist/core/coinmarketcap/public-api.js +277 -0
- package/dist/core/coinmarketcap/public-api.js.map +1 -0
- package/dist/core/coinmarketcap/schemas.d.ts +231 -0
- package/dist/core/coinmarketcap/schemas.d.ts.map +1 -0
- package/dist/core/coinmarketcap/schemas.js +153 -0
- package/dist/core/coinmarketcap/schemas.js.map +1 -0
- package/dist/core/mpc/mpa-fee-status.d.ts +2 -0
- package/dist/core/mpc/mpa-fee-status.d.ts.map +1 -1
- package/dist/core/mpc/mpa-fee-status.js +8 -1
- package/dist/core/mpc/mpa-fee-status.js.map +1 -1
- package/dist/core/node-info.d.ts +3 -1
- package/dist/core/node-info.d.ts.map +1 -1
- package/dist/core/node-info.js +37 -1
- package/dist/core/node-info.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/mcp/agent-chart-data-access-gate.d.ts +5 -0
- package/dist/mcp/agent-chart-data-access-gate.d.ts.map +1 -0
- package/dist/mcp/agent-chart-data-access-gate.js +20 -0
- package/dist/mcp/agent-chart-data-access-gate.js.map +1 -0
- package/dist/mcp/agent-environment-variables.d.ts.map +1 -1
- package/dist/mcp/agent-environment-variables.js +13 -2
- package/dist/mcp/agent-environment-variables.js.map +1 -1
- package/dist/mcp/agent-host-catalog.d.ts +27 -0
- package/dist/mcp/agent-host-catalog.d.ts.map +1 -0
- package/dist/mcp/agent-host-catalog.js +88 -0
- package/dist/mcp/agent-host-catalog.js.map +1 -0
- package/dist/mcp/agent-mcp-servers.d.ts.map +1 -1
- package/dist/mcp/agent-mcp-servers.js +32 -3
- package/dist/mcp/agent-mcp-servers.js.map +1 -1
- package/dist/mcp/agent-skills.d.ts.map +1 -1
- package/dist/mcp/agent-skills.js +13 -1
- package/dist/mcp/agent-skills.js.map +1 -1
- package/dist/mcp/chart.d.ts.map +1 -1
- package/dist/mcp/chart.js +282 -25
- package/dist/mcp/chart.js.map +1 -1
- package/dist/mcp/coinmarketcap-public/register.d.ts +6 -0
- package/dist/mcp/coinmarketcap-public/register.d.ts.map +1 -0
- package/dist/mcp/coinmarketcap-public/register.js +99 -0
- package/dist/mcp/coinmarketcap-public/register.js.map +1 -0
- package/dist/mcp/deferred/discovery-tools.d.ts +6 -0
- package/dist/mcp/deferred/discovery-tools.d.ts.map +1 -0
- package/dist/mcp/deferred/discovery-tools.js +138 -0
- package/dist/mcp/deferred/discovery-tools.js.map +1 -0
- package/dist/mcp/deferred/optional-endpoint-groups.d.ts +12 -0
- package/dist/mcp/deferred/optional-endpoint-groups.d.ts.map +1 -0
- package/dist/mcp/deferred/optional-endpoint-groups.js +51 -0
- package/dist/mcp/deferred/optional-endpoint-groups.js.map +1 -0
- package/dist/mcp/deferred/session.d.ts +56 -0
- package/dist/mcp/deferred/session.d.ts.map +1 -0
- package/dist/mcp/deferred/session.js +242 -0
- package/dist/mcp/deferred/session.js.map +1 -0
- package/dist/mcp/deferred/tool-group-map.d.ts +23 -0
- package/dist/mcp/deferred/tool-group-map.d.ts.map +1 -0
- package/dist/mcp/deferred/tool-group-map.js +317 -0
- package/dist/mcp/deferred/tool-group-map.js.map +1 -0
- package/dist/mcp/defi/context.d.ts +2 -0
- package/dist/mcp/defi/context.d.ts.map +1 -1
- package/dist/mcp/defi/defi-protocol-fetch-meta.d.ts +30 -0
- package/dist/mcp/defi/defi-protocol-fetch-meta.d.ts.map +1 -0
- package/dist/mcp/defi/defi-protocol-fetch-meta.js +76 -0
- package/dist/mcp/defi/defi-protocol-fetch-meta.js.map +1 -0
- package/dist/mcp/defi/discovery.d.ts +2 -1
- package/dist/mcp/defi/discovery.d.ts.map +1 -1
- package/dist/mcp/defi/discovery.js +46 -6
- 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 +6 -3
- package/dist/mcp/defi/handler.js.map +1 -1
- package/dist/mcp/defi/input-adapter.d.ts +6 -0
- package/dist/mcp/defi/input-adapter.d.ts.map +1 -1
- package/dist/mcp/defi/input-adapter.js +29 -12
- package/dist/mcp/defi/input-adapter.js.map +1 -1
- package/dist/mcp/defi/ohlcv-chart-workflow.d.ts +5 -1
- package/dist/mcp/defi/ohlcv-chart-workflow.d.ts.map +1 -1
- package/dist/mcp/defi/ohlcv-chart-workflow.js +28 -6
- package/dist/mcp/defi/ohlcv-chart-workflow.js.map +1 -1
- package/dist/mcp/defi/register-protocol-tools.d.ts +2 -1
- package/dist/mcp/defi/register-protocol-tools.d.ts.map +1 -1
- package/dist/mcp/defi/register-protocol-tools.js +12 -3
- package/dist/mcp/defi/register-protocol-tools.js.map +1 -1
- package/dist/mcp/defi/trade-bridge.d.ts +2 -0
- package/dist/mcp/defi/trade-bridge.d.ts.map +1 -0
- package/dist/mcp/defi/trade-bridge.js +2 -0
- package/dist/mcp/defi/trade-bridge.js.map +1 -0
- package/dist/mcp/keygen.js +1 -1
- package/dist/mcp/keygen.js.map +1 -1
- package/dist/mcp/management-signer.d.ts.map +1 -1
- package/dist/mcp/management-signer.js +1 -1
- package/dist/mcp/management-signer.js.map +1 -1
- package/dist/mcp/node.d.ts.map +1 -1
- package/dist/mcp/node.js +7 -2
- package/dist/mcp/node.js.map +1 -1
- package/dist/mcp/ohlcv-session-context.d.ts +4 -0
- package/dist/mcp/ohlcv-session-context.d.ts.map +1 -0
- package/dist/mcp/ohlcv-session-context.js +13 -0
- package/dist/mcp/ohlcv-session-context.js.map +1 -0
- package/dist/mcp/ohlcv-session-wrapper.d.ts +8 -0
- package/dist/mcp/ohlcv-session-wrapper.d.ts.map +1 -0
- package/dist/mcp/ohlcv-session-wrapper.js +138 -0
- package/dist/mcp/ohlcv-session-wrapper.js.map +1 -0
- package/dist/mcp/register.d.ts +3 -1
- package/dist/mcp/register.d.ts.map +1 -1
- package/dist/mcp/register.js +24 -5
- package/dist/mcp/register.js.map +1 -1
- package/dist/mcp/resources/agent-cron-jobs.md +25 -0
- package/dist/mcp/resources/agent-mcp-servers.md +21 -0
- package/dist/mcp/resources/chart-analysis.md +368 -0
- package/dist/mcp/resources/chart.md +71 -24
- package/dist/mcp/resources/coinmarketcap-public.md +109 -0
- package/dist/mcp/resources/keygen.md +1 -1
- package/dist/mcp/resources/trade-defaults-skill.md +69 -0
- package/dist/mcp/server/http-transport.d.ts.map +1 -1
- package/dist/mcp/server/http-transport.js +9 -2
- package/dist/mcp/server/http-transport.js.map +1 -1
- package/dist/mcp/server/index.js +3 -0
- package/dist/mcp/server/index.js.map +1 -1
- package/dist/mcp/tool-utils.d.ts.map +1 -1
- package/dist/mcp/tool-utils.js +7 -1
- package/dist/mcp/tool-utils.js.map +1 -1
- package/dist/mcp/trade-tools.d.ts +7 -0
- package/dist/mcp/trade-tools.d.ts.map +1 -0
- package/dist/mcp/trade-tools.js +201 -0
- package/dist/mcp/trade-tools.js.map +1 -0
- package/dist/schemas/extended.d.ts +30 -0
- package/dist/schemas/extended.d.ts.map +1 -1
- package/dist/schemas/extended.js +40 -0
- package/dist/schemas/extended.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import type { ChartTime } from '../chart/schemas.js';
|
|
2
|
+
export type ChartPatternDirection = 'bullish' | 'bearish' | 'neutral';
|
|
3
|
+
export type ChartPatternClassification = 'bullish' | 'moderately_bullish' | 'neutral' | 'moderately_bearish' | 'bearish';
|
|
4
|
+
export type ChartPatternCategory = 'reversal' | 'continuation';
|
|
5
|
+
export type ChartPatternId = 'head_and_shoulders' | 'inverse_head_and_shoulders' | 'double_top' | 'double_bottom' | 'double_bottom_adam_eve' | 'ascending_triangle' | 'descending_triangle' | 'symmetrical_triangle' | 'pennant_bullish' | 'pennant_bearish' | 'flag_bullish' | 'flag_bearish' | 'rising_wedge' | 'falling_wedge' | 'channel_up' | 'channel_down' | 'cup_and_handle' | 'trendline_breakout_bullish' | 'trendline_breakout_bearish' | 'trendline_breakout_retest_bullish' | 'trendline_breakout_retest_bearish';
|
|
6
|
+
export type ChartPatternPoint = {
|
|
7
|
+
timeSec: number;
|
|
8
|
+
price: number;
|
|
9
|
+
label?: string;
|
|
10
|
+
role?: string;
|
|
11
|
+
};
|
|
12
|
+
export type ChartPatternLineKind = 'support' | 'resistance' | 'neckline' | 'boundary' | 'flagpole';
|
|
13
|
+
export type ChartPatternLine = {
|
|
14
|
+
pointA: ChartPatternPoint;
|
|
15
|
+
pointB: ChartPatternPoint;
|
|
16
|
+
label?: string;
|
|
17
|
+
kind?: ChartPatternLineKind;
|
|
18
|
+
};
|
|
19
|
+
export type ChartPatternLevel = {
|
|
20
|
+
price: number;
|
|
21
|
+
label?: string;
|
|
22
|
+
kind?: 'support' | 'resistance' | 'neckline' | 'level';
|
|
23
|
+
};
|
|
24
|
+
export type ChartPatternBarSpan = {
|
|
25
|
+
fromIndex: number;
|
|
26
|
+
toIndex: number;
|
|
27
|
+
fromTimeSec: number;
|
|
28
|
+
toTimeSec: number;
|
|
29
|
+
};
|
|
30
|
+
export type NormalizedBar = {
|
|
31
|
+
index: number;
|
|
32
|
+
time: ChartTime;
|
|
33
|
+
timeSec: number;
|
|
34
|
+
open: number;
|
|
35
|
+
high: number;
|
|
36
|
+
low: number;
|
|
37
|
+
close: number;
|
|
38
|
+
};
|
|
39
|
+
export type OrderedSwing = {
|
|
40
|
+
barIndex: number;
|
|
41
|
+
timeSec: number;
|
|
42
|
+
price: number;
|
|
43
|
+
kind: 'support' | 'resistance';
|
|
44
|
+
};
|
|
45
|
+
export type MeasuredMove = {
|
|
46
|
+
targetPrice: number;
|
|
47
|
+
referencePrice: number;
|
|
48
|
+
height: number;
|
|
49
|
+
direction: 'up' | 'down';
|
|
50
|
+
formula: string;
|
|
51
|
+
status: 'projected' | 'active';
|
|
52
|
+
};
|
|
53
|
+
export type VolumeConfirmationEvent = {
|
|
54
|
+
barIndex: number;
|
|
55
|
+
timeSec: number;
|
|
56
|
+
role: string;
|
|
57
|
+
volume: number;
|
|
58
|
+
ratioToBaseline: number;
|
|
59
|
+
verdict: 'confirming' | 'neutral' | 'weak';
|
|
60
|
+
};
|
|
61
|
+
export type VolumeConfirmation = {
|
|
62
|
+
status: 'confirming' | 'mixed' | 'weak' | 'unavailable';
|
|
63
|
+
summary: string;
|
|
64
|
+
baseline: {
|
|
65
|
+
barCount: number;
|
|
66
|
+
avgVolume: number;
|
|
67
|
+
};
|
|
68
|
+
events: VolumeConfirmationEvent[];
|
|
69
|
+
};
|
|
70
|
+
export type PatternDrawingElementStyle = {
|
|
71
|
+
lineStyle?: 'solid' | 'dotted' | 'dashed';
|
|
72
|
+
lineWidth?: number;
|
|
73
|
+
color?: string;
|
|
74
|
+
};
|
|
75
|
+
export type PatternDrawingElement = {
|
|
76
|
+
kind: 'segment';
|
|
77
|
+
pointA: ChartPatternPoint;
|
|
78
|
+
pointB: ChartPatternPoint;
|
|
79
|
+
label?: string;
|
|
80
|
+
role?: string;
|
|
81
|
+
style?: PatternDrawingElementStyle;
|
|
82
|
+
} | {
|
|
83
|
+
kind: 'level';
|
|
84
|
+
price: number;
|
|
85
|
+
label?: string;
|
|
86
|
+
role?: string;
|
|
87
|
+
span?: ChartPatternBarSpan;
|
|
88
|
+
style?: PatternDrawingElementStyle;
|
|
89
|
+
} | {
|
|
90
|
+
kind: 'marker';
|
|
91
|
+
timeSec: number;
|
|
92
|
+
price: number;
|
|
93
|
+
label?: string;
|
|
94
|
+
role?: string;
|
|
95
|
+
style?: PatternDrawingElementStyle;
|
|
96
|
+
} | {
|
|
97
|
+
kind: 'polyline';
|
|
98
|
+
points: ChartPatternPoint[];
|
|
99
|
+
label?: string;
|
|
100
|
+
role?: string;
|
|
101
|
+
style?: PatternDrawingElementStyle;
|
|
102
|
+
} | {
|
|
103
|
+
kind: 'target';
|
|
104
|
+
price: number;
|
|
105
|
+
label?: string;
|
|
106
|
+
role: 'measured_move';
|
|
107
|
+
status: 'projected' | 'active';
|
|
108
|
+
style?: PatternDrawingElementStyle;
|
|
109
|
+
};
|
|
110
|
+
export type PatternDrawingSpec = {
|
|
111
|
+
version: 1;
|
|
112
|
+
patternId: ChartPatternId;
|
|
113
|
+
barSpan: ChartPatternBarSpan;
|
|
114
|
+
elements: PatternDrawingElement[];
|
|
115
|
+
legend: string[];
|
|
116
|
+
};
|
|
117
|
+
export type PatternMenuEntry = {
|
|
118
|
+
index: number;
|
|
119
|
+
id: ChartPatternId;
|
|
120
|
+
name: string;
|
|
121
|
+
confidence: number;
|
|
122
|
+
completionState?: 'forming' | 'completed';
|
|
123
|
+
classification: ChartPatternClassification;
|
|
124
|
+
drawable: boolean;
|
|
125
|
+
isPrimary: boolean;
|
|
126
|
+
isHighestConfidence: boolean;
|
|
127
|
+
barSpan: {
|
|
128
|
+
fromTimeSec: number;
|
|
129
|
+
toTimeSec: number;
|
|
130
|
+
barCount: number;
|
|
131
|
+
};
|
|
132
|
+
keyLevels: Array<{
|
|
133
|
+
label: string;
|
|
134
|
+
price: number;
|
|
135
|
+
timeSec?: number;
|
|
136
|
+
}>;
|
|
137
|
+
measuredMove?: PatternMeasuredMoveSummary;
|
|
138
|
+
};
|
|
139
|
+
export type PatternMeasuredMoveSummary = {
|
|
140
|
+
targetPrice: number;
|
|
141
|
+
referencePrice: number;
|
|
142
|
+
direction: 'up' | 'down';
|
|
143
|
+
status: 'projected' | 'active';
|
|
144
|
+
formula: string;
|
|
145
|
+
};
|
|
146
|
+
export type ChartPatternHitSummary = {
|
|
147
|
+
id: ChartPatternId;
|
|
148
|
+
name: string;
|
|
149
|
+
classification: ChartPatternClassification;
|
|
150
|
+
confidence: number;
|
|
151
|
+
interpretation: string;
|
|
152
|
+
barSpan: {
|
|
153
|
+
fromTimeSec: number;
|
|
154
|
+
toTimeSec: number;
|
|
155
|
+
barCount: number;
|
|
156
|
+
};
|
|
157
|
+
keyLevels: Array<{
|
|
158
|
+
label: string;
|
|
159
|
+
price: number;
|
|
160
|
+
timeSec?: number;
|
|
161
|
+
}>;
|
|
162
|
+
measuredMove?: PatternMeasuredMoveSummary;
|
|
163
|
+
};
|
|
164
|
+
export type ChartPatternHit = {
|
|
165
|
+
id: ChartPatternId;
|
|
166
|
+
name: string;
|
|
167
|
+
variant?: string;
|
|
168
|
+
category: ChartPatternCategory;
|
|
169
|
+
direction: ChartPatternDirection;
|
|
170
|
+
confidence: number;
|
|
171
|
+
classification: ChartPatternClassification;
|
|
172
|
+
barSpan: ChartPatternBarSpan;
|
|
173
|
+
points: ChartPatternPoint[];
|
|
174
|
+
lines: ChartPatternLine[];
|
|
175
|
+
levels?: ChartPatternLevel[];
|
|
176
|
+
description: string;
|
|
177
|
+
interpretation: string;
|
|
178
|
+
completionState?: 'forming' | 'completed';
|
|
179
|
+
};
|
|
180
|
+
export type EnrichedChartPatternHit = ChartPatternHit & {
|
|
181
|
+
drawingSpec: PatternDrawingSpec;
|
|
182
|
+
drawable: boolean;
|
|
183
|
+
measuredMove?: MeasuredMove;
|
|
184
|
+
volumeConfirmation?: VolumeConfirmation;
|
|
185
|
+
};
|
|
186
|
+
export type ChartPatternCatalogEntry = {
|
|
187
|
+
id: ChartPatternId;
|
|
188
|
+
name: string;
|
|
189
|
+
category: ChartPatternCategory;
|
|
190
|
+
direction: ChartPatternDirection;
|
|
191
|
+
minBars: number;
|
|
192
|
+
description: string;
|
|
193
|
+
interpretation: string;
|
|
194
|
+
};
|
|
195
|
+
export type ScanChartPatternsOptions = {
|
|
196
|
+
patternIds?: ChartPatternId[];
|
|
197
|
+
focusWindow?: 'last' | number;
|
|
198
|
+
minConfidence?: number;
|
|
199
|
+
swingLookback?: number;
|
|
200
|
+
/** Smooth highs/lows before H&S swing detection (default true). */
|
|
201
|
+
smoothHeadShoulders?: boolean;
|
|
202
|
+
/** Savitzky-Golay window for H&S smoothing (3 or 5, default 5). */
|
|
203
|
+
smoothWindow?: 3 | 5;
|
|
204
|
+
/** Retest tolerance as fraction of breakout excursion (default 0.10 = 10%). */
|
|
205
|
+
retestTolerancePct?: number;
|
|
206
|
+
/** ATR period for retest band (default 14). */
|
|
207
|
+
retestAtrPeriod?: number;
|
|
208
|
+
/** ATR multiplier for retest band; combined with excursion as max(excursion, ATR×mult) (default 1). */
|
|
209
|
+
retestAtrMultiplier?: number;
|
|
210
|
+
};
|
|
211
|
+
export type TradeSetupSide = 'long' | 'short' | 'neutral';
|
|
212
|
+
export type { ChartPatternTradeSetup } from '../chart/analysis/trade-setups/chart-pattern-trade-setup.js';
|
|
213
|
+
export type ChartPatternAnalysis = {
|
|
214
|
+
summary: string;
|
|
215
|
+
classification: ChartPatternClassification | null;
|
|
216
|
+
interpretation: string;
|
|
217
|
+
primaryPattern: ChartPatternHitSummary | null;
|
|
218
|
+
highestConfidencePattern: ChartPatternHitSummary | null;
|
|
219
|
+
patternMenu: PatternMenuEntry[];
|
|
220
|
+
pattern: EnrichedChartPatternHit | null;
|
|
221
|
+
patterns: EnrichedChartPatternHit[];
|
|
222
|
+
rationale: string;
|
|
223
|
+
chartPatternTradeSetup: import('../chart/analysis/trade-setups/chart-pattern-trade-setup.js').ChartPatternTradeSetup | null;
|
|
224
|
+
};
|
|
225
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,qBAAqB,CAAC;AAEnD,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtE,MAAM,MAAM,0BAA0B,GACnC,SAAS,GACT,oBAAoB,GACpB,SAAS,GACT,oBAAoB,GACpB,SAAS,CAAC;AAEb,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,cAAc,CAAC;AAE/D,MAAM,MAAM,cAAc,GACvB,oBAAoB,GACpB,4BAA4B,GAC5B,YAAY,GACZ,eAAe,GACf,wBAAwB,GACxB,oBAAoB,GACpB,qBAAqB,GACrB,sBAAsB,GACtB,iBAAiB,GACjB,iBAAiB,GACjB,cAAc,GACd,cAAc,GACd,cAAc,GACd,eAAe,GACf,YAAY,GACZ,cAAc,GACd,gBAAgB,GAChB,4BAA4B,GAC5B,4BAA4B,GAC5B,mCAAmC,GACnC,mCAAmC,CAAC;AAEvC,MAAM,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAC7B,SAAS,GACT,YAAY,GACZ,UAAU,GACV,UAAU,GACV,UAAU,CAAC;AAEd,MAAM,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,OAAO,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,YAAY,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,aAAa,CAAC;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAC,CAAC;IAChD,MAAM,EAAE,uBAAuB,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC9B;IACA,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,0BAA0B,CAAC;CAClC,GACD;IACA,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,KAAK,CAAC,EAAE,0BAA0B,CAAC;CAClC,GACD;IACA,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,0BAA0B,CAAC;CAClC,GACD;IACA,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,0BAA0B,CAAC;CAClC,GACD;IACA,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,KAAK,CAAC,EAAE,0BAA0B,CAAC;CAClC,CAAC;AAEL,MAAM,MAAM,kBAAkB,GAAG;IAChC,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,cAAc,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAC1C,cAAc,EAAE,0BAA0B,CAAC;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,0BAA0B,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACpC,EAAE,EAAE,cAAc,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,0BAA0B,CAAC;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,0BAA0B,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC7B,EAAE,EAAE,cAAc,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,SAAS,EAAE,qBAAqB,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,0BAA0B,CAAC;IAC3C,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,eAAe,GAAG;IACvD,WAAW,EAAE,kBAAkB,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACtC,EAAE,EAAE,cAAc,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,SAAS,EAAE,qBAAqB,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACtC,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mEAAmE;IACnE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACrB,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uGAAuG;IACvG,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAE1D,YAAY,EAAC,sBAAsB,EAAC,MAAM,6DAA6D,CAAC;AAExG,MAAM,MAAM,oBAAoB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAClD,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC9C,wBAAwB,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACxD,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,OAAO,EAAE,uBAAuB,GAAG,IAAI,CAAC;IACxC,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,OAAO,6DAA6D,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAC5H,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/chart-patterns/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ChartPatternHit, NormalizedBar, VolumeConfirmation } from './types.js';
|
|
2
|
+
export declare function computeVolumeConfirmation(hit: ChartPatternHit, bars: NormalizedBar[], rawBars: Record<string, unknown>[]): VolumeConfirmation | undefined;
|
|
3
|
+
export type VolumeProfileBin = {
|
|
4
|
+
priceLo: number;
|
|
5
|
+
priceHi: number;
|
|
6
|
+
volume: number;
|
|
7
|
+
};
|
|
8
|
+
export declare function computePatternVolumeProfile(hit: ChartPatternHit, bars: NormalizedBar[], rawBars: Record<string, unknown>[], binCount?: number): {
|
|
9
|
+
bins: VolumeProfileBin[];
|
|
10
|
+
pocPrice: number;
|
|
11
|
+
barSpan: ChartPatternHit['barSpan'];
|
|
12
|
+
} | undefined;
|
|
13
|
+
//# sourceMappingURL=volume-confirmation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volume-confirmation.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/volume-confirmation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAC,MAAM,YAAY,CAAC;AAuEnF,wBAAgB,yBAAyB,CACxC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,aAAa,EAAE,EACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAChC,kBAAkB,GAAG,SAAS,CAyFhC;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AAElF,wBAAgB,2BAA2B,CAC1C,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,aAAa,EAAE,EACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAClC,QAAQ,SAAI,GACV;IAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;CAAC,GAAG,SAAS,CA+B/F"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { barRowsHaveVolume } from '../chart/fetch-result.js';
|
|
2
|
+
function barVolume(bar) {
|
|
3
|
+
const raw = bar.volume ?? bar.volumeUSD ?? bar.volumeUsd ?? bar.v ?? (Array.isArray(bar) ? bar[5] : undefined);
|
|
4
|
+
const n = typeof raw === 'number' ? raw : typeof raw === 'string' ? Number.parseFloat(raw) : Number.NaN;
|
|
5
|
+
return Number.isFinite(n) && n >= 0 ? n : null;
|
|
6
|
+
}
|
|
7
|
+
function volumeAtIndex(bars, rawBars, index) {
|
|
8
|
+
const raw = rawBars[index];
|
|
9
|
+
if (!raw) {
|
|
10
|
+
return 0;
|
|
11
|
+
}
|
|
12
|
+
return barVolume(raw) ?? 0;
|
|
13
|
+
}
|
|
14
|
+
function avgVolumeInSpan(bars, rawBars, fromIndex, toIndex) {
|
|
15
|
+
let sum = 0;
|
|
16
|
+
let count = 0;
|
|
17
|
+
for (let i = fromIndex; i <= toIndex && i < bars.length; i++) {
|
|
18
|
+
sum += volumeAtIndex(bars, rawBars, i);
|
|
19
|
+
count++;
|
|
20
|
+
}
|
|
21
|
+
return count > 0 ? sum / count : 0;
|
|
22
|
+
}
|
|
23
|
+
function verdictForBreakout(ratio) {
|
|
24
|
+
if (ratio >= 1.3) {
|
|
25
|
+
return 'confirming';
|
|
26
|
+
}
|
|
27
|
+
if (ratio < 0.8) {
|
|
28
|
+
return 'weak';
|
|
29
|
+
}
|
|
30
|
+
return 'neutral';
|
|
31
|
+
}
|
|
32
|
+
function verdictForRetest(ratio) {
|
|
33
|
+
if (ratio <= 0.9) {
|
|
34
|
+
return 'confirming';
|
|
35
|
+
}
|
|
36
|
+
if (ratio > 1.2) {
|
|
37
|
+
return 'weak';
|
|
38
|
+
}
|
|
39
|
+
return 'neutral';
|
|
40
|
+
}
|
|
41
|
+
function findBarIndexByLabel(hit, bars, label) {
|
|
42
|
+
const pt = hit.points.find(p => p.label === label);
|
|
43
|
+
if (!pt) {
|
|
44
|
+
return -1;
|
|
45
|
+
}
|
|
46
|
+
let best = -1;
|
|
47
|
+
let bestDist = Infinity;
|
|
48
|
+
for (const bar of bars) {
|
|
49
|
+
const dist = Math.abs(bar.timeSec - pt.timeSec);
|
|
50
|
+
if (dist < bestDist) {
|
|
51
|
+
bestDist = dist;
|
|
52
|
+
best = bar.index;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return best;
|
|
56
|
+
}
|
|
57
|
+
export function computeVolumeConfirmation(hit, bars, rawBars) {
|
|
58
|
+
if (!barRowsHaveVolume(rawBars)) {
|
|
59
|
+
return {
|
|
60
|
+
status: 'unavailable',
|
|
61
|
+
summary: 'Volume not present in OHLCV fetch; confirmation skipped.',
|
|
62
|
+
baseline: { barCount: 0, avgVolume: 0 },
|
|
63
|
+
events: [],
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
const from = hit.barSpan.fromIndex;
|
|
67
|
+
const to = hit.barSpan.toIndex;
|
|
68
|
+
const baselineAvg = avgVolumeInSpan(bars, rawBars, from, to);
|
|
69
|
+
if (baselineAvg <= 0) {
|
|
70
|
+
return {
|
|
71
|
+
status: 'unavailable',
|
|
72
|
+
summary: 'No usable volume in pattern window.',
|
|
73
|
+
baseline: { barCount: to - from + 1, avgVolume: 0 },
|
|
74
|
+
events: [],
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
const events = [];
|
|
78
|
+
const addEvent = (barIndex, role, verdict) => {
|
|
79
|
+
if (barIndex < 0 || barIndex >= bars.length) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const volume = volumeAtIndex(bars, rawBars, barIndex);
|
|
83
|
+
const ratio = volume / baselineAvg;
|
|
84
|
+
events.push({
|
|
85
|
+
barIndex,
|
|
86
|
+
timeSec: bars[barIndex].timeSec,
|
|
87
|
+
role,
|
|
88
|
+
volume,
|
|
89
|
+
ratioToBaseline: ratio,
|
|
90
|
+
verdict,
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
const boIdx = findBarIndexByLabel(hit, bars, 'BO');
|
|
94
|
+
if (boIdx >= 0) {
|
|
95
|
+
const ratio = volumeAtIndex(bars, rawBars, boIdx) / baselineAvg;
|
|
96
|
+
addEvent(boIdx, 'breakout', verdictForBreakout(ratio));
|
|
97
|
+
}
|
|
98
|
+
const rtIdx = findBarIndexByLabel(hit, bars, 'RT');
|
|
99
|
+
if (rtIdx >= 0) {
|
|
100
|
+
const ratio = volumeAtIndex(bars, rawBars, rtIdx) / baselineAvg;
|
|
101
|
+
addEvent(rtIdx, 'retest', verdictForRetest(ratio));
|
|
102
|
+
}
|
|
103
|
+
for (const label of ['T1', 'T2', 'B1', 'B2']) {
|
|
104
|
+
const idx = findBarIndexByLabel(hit, bars, label);
|
|
105
|
+
if (idx >= 0) {
|
|
106
|
+
const ratio = volumeAtIndex(bars, rawBars, idx) / baselineAvg;
|
|
107
|
+
const role = label.startsWith('T') ? 'peak' : 'trough';
|
|
108
|
+
let verdict = 'neutral';
|
|
109
|
+
if (label === 'T2' || label === 'B2') {
|
|
110
|
+
verdict = ratio <= 1.0 ? 'confirming' : ratio > 1.2 ? 'weak' : 'neutral';
|
|
111
|
+
}
|
|
112
|
+
addEvent(idx, role, verdict);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (!events.length) {
|
|
116
|
+
return {
|
|
117
|
+
status: 'unavailable',
|
|
118
|
+
summary: 'No volume events mapped for this pattern.',
|
|
119
|
+
baseline: { barCount: to - from + 1, avgVolume: baselineAvg },
|
|
120
|
+
events: [],
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
const hasWeak = events.some(e => e.verdict === 'weak');
|
|
124
|
+
const hasConfirming = events.some(e => e.verdict === 'confirming');
|
|
125
|
+
let status = 'mixed';
|
|
126
|
+
if (hasConfirming && !hasWeak) {
|
|
127
|
+
status = 'confirming';
|
|
128
|
+
}
|
|
129
|
+
else if (hasWeak && !hasConfirming) {
|
|
130
|
+
status = 'weak';
|
|
131
|
+
}
|
|
132
|
+
const parts = events.map(e => `${e.role} ${e.ratioToBaseline.toFixed(1)}×`);
|
|
133
|
+
return {
|
|
134
|
+
status,
|
|
135
|
+
summary: parts.join('; '),
|
|
136
|
+
baseline: { barCount: to - from + 1, avgVolume: baselineAvg },
|
|
137
|
+
events,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
export function computePatternVolumeProfile(hit, bars, rawBars, binCount = 8) {
|
|
141
|
+
if (!barRowsHaveVolume(rawBars)) {
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
const slice = bars.slice(hit.barSpan.fromIndex, hit.barSpan.toIndex + 1);
|
|
145
|
+
if (!slice.length) {
|
|
146
|
+
return undefined;
|
|
147
|
+
}
|
|
148
|
+
let low = Infinity;
|
|
149
|
+
let high = -Infinity;
|
|
150
|
+
for (const b of slice) {
|
|
151
|
+
low = Math.min(low, b.low);
|
|
152
|
+
high = Math.max(high, b.high);
|
|
153
|
+
}
|
|
154
|
+
if (!Number.isFinite(low) || !Number.isFinite(high) || high <= low) {
|
|
155
|
+
return undefined;
|
|
156
|
+
}
|
|
157
|
+
const bins = [];
|
|
158
|
+
const step = (high - low) / binCount;
|
|
159
|
+
for (let i = 0; i < binCount; i++) {
|
|
160
|
+
bins.push({ priceLo: low + i * step, priceHi: low + (i + 1) * step, volume: 0 });
|
|
161
|
+
}
|
|
162
|
+
for (const b of slice) {
|
|
163
|
+
const v = volumeAtIndex(bars, rawBars, b.index);
|
|
164
|
+
const mid = (b.high + b.low) / 2;
|
|
165
|
+
const idx = Math.min(binCount - 1, Math.max(0, Math.floor((mid - low) / step)));
|
|
166
|
+
bins[idx].volume += v;
|
|
167
|
+
}
|
|
168
|
+
const poc = bins.reduce((best, cur) => (cur.volume > best.volume ? cur : best), bins[0]);
|
|
169
|
+
const pocPrice = (poc.priceLo + poc.priceHi) / 2;
|
|
170
|
+
return { bins, pocPrice, barSpan: hit.barSpan };
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=volume-confirmation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volume-confirmation.js","sourceRoot":"","sources":["../../../src/core/chart-patterns/volume-confirmation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { NodeSdkConfig } from '../../config/schema.js';
|
|
2
|
+
export declare const COINMARKETCAP_API_KEY_ENV = "COINMARKETCAP_API_KEY";
|
|
3
|
+
export declare const COINMARKETCAP_API_KEY_SIGNUP_URL = "https://pro.coinmarketcap.com/signup";
|
|
4
|
+
export declare function missingCmcApiKeyReason(): string;
|
|
5
|
+
/** Agent Variable first, then continuum-mcp process.env fallback. */
|
|
6
|
+
export declare function resolveCmcApiKey(config: NodeSdkConfig): Promise<string | undefined>;
|
|
7
|
+
export declare function isCmcApiKeyConfigured(config: NodeSdkConfig): Promise<boolean>;
|
|
8
|
+
//# sourceMappingURL=api-key.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.d.ts","sourceRoot":"","sources":["../../../src/core/coinmarketcap/api-key.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAG1D,eAAO,MAAM,yBAAyB,0BAA0B,CAAC;AAEjE,eAAO,MAAM,gCAAgC,yCACN,CAAC;AAExC,wBAAgB,sBAAsB,IAAI,MAAM,CAQ/C;AAED,qEAAqE;AACrE,wBAAsB,gBAAgB,CACrC,MAAM,EAAE,aAAa,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW7B;AAED,wBAAsB,qBAAqB,CAC1C,MAAM,EAAE,aAAa,GACnB,OAAO,CAAC,OAAO,CAAC,CAElB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { getEnvironmentVariable } from '../agent/environment-variables.js';
|
|
2
|
+
import { getCmcProApiKey } from './client.js';
|
|
3
|
+
export const COINMARKETCAP_API_KEY_ENV = 'COINMARKETCAP_API_KEY';
|
|
4
|
+
export const COINMARKETCAP_API_KEY_SIGNUP_URL = 'https://pro.coinmarketcap.com/signup';
|
|
5
|
+
export function missingCmcApiKeyReason() {
|
|
6
|
+
return [
|
|
7
|
+
'CoinMarketCap Pro API key required for CEX aggregate OHLCV.',
|
|
8
|
+
`Add environment variable ${COINMARKETCAP_API_KEY_ENV} in Node → AI Agent → Variables (add_environment_variable MCP tool).`,
|
|
9
|
+
`Create a key at ${COINMARKETCAP_API_KEY_SIGNUP_URL}`,
|
|
10
|
+
'Verify with list_environment_variables (name and envConfigured only — never pass the key in tool input).',
|
|
11
|
+
'For keyless DEX pool OHLCV use get_kline_candles instead.',
|
|
12
|
+
].join('\n');
|
|
13
|
+
}
|
|
14
|
+
/** Agent Variable first, then continuum-mcp process.env fallback. */
|
|
15
|
+
export async function resolveCmcApiKey(config) {
|
|
16
|
+
const result = await getEnvironmentVariable(config, {
|
|
17
|
+
name: COINMARKETCAP_API_KEY_ENV,
|
|
18
|
+
});
|
|
19
|
+
if (result.ok) {
|
|
20
|
+
const value = result.data.value.trim();
|
|
21
|
+
if (value) {
|
|
22
|
+
return value;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return getCmcProApiKey();
|
|
26
|
+
}
|
|
27
|
+
export async function isCmcApiKeyConfigured(config) {
|
|
28
|
+
return (await resolveCmcApiKey(config)) !== undefined;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=api-key.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.js","sourceRoot":"","sources":["../../../src/core/coinmarketcap/api-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,mCAAmC,CAAC;AAEzE,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAE5C,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;AAEjE,MAAM,CAAC,MAAM,gCAAgC,GAC5C,sCAAsC,CAAC;AAExC,MAAM,UAAU,sBAAsB;IACrC,OAAO;QACN,6DAA6D;QAC7D,4BAA4B,yBAAyB,sEAAsE;QAC3H,mBAAmB,gCAAgC,EAAE;QACrD,0GAA0G;QAC1G,2DAA2D;KAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC;AAED,qEAAqE;AACrE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,MAAqB;IAErB,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE;QACnD,IAAI,EAAE,yBAAyB;KAC/B,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACvC,IAAI,KAAK,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,eAAe,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,MAAqB;IAErB,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC,KAAK,SAAS,CAAC;AACvD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SdkResult } from '../result.js';
|
|
2
|
+
export declare const CMC_KEYLESS_BASE_URL = "https://pro-api.coinmarketcap.com/public-api";
|
|
3
|
+
export declare const CMC_PRO_BASE_URL = "https://pro-api.coinmarketcap.com";
|
|
4
|
+
export type CmcQueryParams = Record<string, string | number | boolean | undefined>;
|
|
5
|
+
export declare function getCmcProApiKey(): string | undefined;
|
|
6
|
+
export declare function cmcProGet(path: string, params?: CmcQueryParams, apiKey?: string): Promise<SdkResult<unknown>>;
|
|
7
|
+
export declare function cmcKeylessGet(path: string, params?: CmcQueryParams): Promise<SdkResult<unknown>>;
|
|
8
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/core/coinmarketcap/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,eAAO,MAAM,oBAAoB,iDAAiD,CAAC;AACnF,eAAO,MAAM,gBAAgB,sCAAsC,CAAC;AAEpE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;AAEnF,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAGpD;AAyDD,wBAAsB,SAAS,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,cAAmB,EAC3B,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CA8B7B;AAED,wBAAsB,aAAa,CAClC,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,cAAmB,GACzB,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAkB7B"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
export const CMC_KEYLESS_BASE_URL = 'https://pro-api.coinmarketcap.com/public-api';
|
|
2
|
+
export const CMC_PRO_BASE_URL = 'https://pro-api.coinmarketcap.com';
|
|
3
|
+
export function getCmcProApiKey() {
|
|
4
|
+
const key = process.env.COINMARKETCAP_API_KEY?.trim();
|
|
5
|
+
return key || undefined;
|
|
6
|
+
}
|
|
7
|
+
function appendQueryParams(url, params) {
|
|
8
|
+
for (const [key, value] of Object.entries(params)) {
|
|
9
|
+
if (value === undefined || value === '') {
|
|
10
|
+
continue;
|
|
11
|
+
}
|
|
12
|
+
url.searchParams.set(key, String(value));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
async function parseCmcJsonResponse(response) {
|
|
16
|
+
let body;
|
|
17
|
+
try {
|
|
18
|
+
body = await response.json();
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
body = undefined;
|
|
22
|
+
}
|
|
23
|
+
const status = body && typeof body === 'object' && 'status' in body
|
|
24
|
+
? body.status
|
|
25
|
+
: undefined;
|
|
26
|
+
if (!response.ok) {
|
|
27
|
+
const detail = status?.error_message?.trim();
|
|
28
|
+
if (response.status === 429) {
|
|
29
|
+
return {
|
|
30
|
+
ok: false,
|
|
31
|
+
reason: detail || 'CoinMarketCap API rate limit (HTTP 429). Retry with exponential backoff.',
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
if (response.status === 403 && detail) {
|
|
35
|
+
return {
|
|
36
|
+
ok: false,
|
|
37
|
+
reason: `CoinMarketCap API error: HTTP 403 — ${detail}`,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
ok: false,
|
|
42
|
+
reason: detail
|
|
43
|
+
? `CoinMarketCap API error: HTTP ${response.status} — ${detail}`
|
|
44
|
+
: `CoinMarketCap API error: HTTP ${response.status}`,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
const errorCode = status?.error_code;
|
|
48
|
+
if (errorCode && errorCode !== '0') {
|
|
49
|
+
return {
|
|
50
|
+
ok: false,
|
|
51
|
+
reason: status?.error_message?.trim() ||
|
|
52
|
+
`CoinMarketCap API error code ${errorCode}`,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
return { ok: true, data: body };
|
|
56
|
+
}
|
|
57
|
+
export async function cmcProGet(path, params = {}, apiKey) {
|
|
58
|
+
const resolvedKey = apiKey?.trim() || getCmcProApiKey();
|
|
59
|
+
if (!resolvedKey) {
|
|
60
|
+
return {
|
|
61
|
+
ok: false,
|
|
62
|
+
reason: 'COINMARKETCAP_API_KEY is not configured. Add it via Node → AI Agent → Variables (add_environment_variable). Use get_kline_candles for keyless DEX OHLCV.',
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
const url = new URL(`${CMC_PRO_BASE_URL}${path.startsWith('/') ? path : `/${path}`}`);
|
|
66
|
+
appendQueryParams(url, params);
|
|
67
|
+
try {
|
|
68
|
+
const response = await fetch(url, {
|
|
69
|
+
headers: {
|
|
70
|
+
Accept: 'application/json',
|
|
71
|
+
'X-CMC_PRO_API_KEY': resolvedKey,
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
return parseCmcJsonResponse(response);
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
return {
|
|
78
|
+
ok: false,
|
|
79
|
+
reason: error instanceof Error
|
|
80
|
+
? `CoinMarketCap Pro API request failed: ${error.message}`
|
|
81
|
+
: 'CoinMarketCap Pro API request failed.',
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
export async function cmcKeylessGet(path, params = {}) {
|
|
86
|
+
const url = new URL(`${CMC_KEYLESS_BASE_URL}${path.startsWith('/') ? path : `/${path}`}`);
|
|
87
|
+
appendQueryParams(url, params);
|
|
88
|
+
try {
|
|
89
|
+
const response = await fetch(url, {
|
|
90
|
+
headers: { Accept: 'application/json' },
|
|
91
|
+
});
|
|
92
|
+
return parseCmcJsonResponse(response);
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
return {
|
|
96
|
+
ok: false,
|
|
97
|
+
reason: error instanceof Error
|
|
98
|
+
? `CoinMarketCap keyless API request failed: ${error.message}`
|
|
99
|
+
: 'CoinMarketCap keyless API request failed.',
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/core/coinmarketcap/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { COINMARKETCAP_API_KEY_ENV, isCmcApiKeyConfigured, missingCmcApiKeyReason, resolveCmcApiKey, } from './api-key.js';
|
|
2
|
+
export { chooseCoinMarketCapMcpServer, CMC_FULL_MCP_SERVER_ID, CMC_PUBLIC_MCP_SERVER_ID, resolveCoinMarketCapMcpServer, type CoinMarketCapMcpServerChoice, type CoinMarketCapMcpVariant, } from './mcp-server-choice.js';
|
|
3
|
+
export { cmcKeylessGet, cmcProGet, CMC_KEYLESS_BASE_URL, CMC_PRO_BASE_URL, getCmcProApiKey } from './client.js';
|
|
4
|
+
export { getAltcoinSeasonIndexLatest, getCmc100Latest, getCryptoOhlcvHistorical, getCryptoQuotesLatest, getDexPairQuotes, getDexToken, getDexTokenPools, getFearAndGreedHistorical, getFearAndGreedLatest, getGlobalMetricsLatest, getKlineCandles, getSimplePrice, searchDexTokens, } from './public-api.js';
|
|
5
|
+
export { normalizeKlineCandleTuple, normalizeKlineCandles, type CmcKlineCandle, } from './kline.js';
|
|
6
|
+
export { CmcKlineIntervalSchema, CmcPlatformSchema, GetAltcoinSeasonIndexLatestInputSchema, GetCmc100LatestInputSchema, GetCryptoQuotesLatestInputSchema, GetCryptoOhlcvHistoricalInputSchema, GetCryptoOhlcvHistoricalOutputSchema, GetDexPairQuotesInputSchema, GetDexTokenInputSchema, GetDexTokenPoolsInputSchema, GetFearAndGreedHistoricalInputSchema, GetFearAndGreedLatestInputSchema, GetGlobalMetricsLatestInputSchema, GetKlineCandlesInputSchema, GetKlineCandlesOutputSchema, GetSimplePriceInputSchema, SearchDexTokensInputSchema, } from './schemas.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/coinmarketcap/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,EAC7B,KAAK,4BAA4B,EACjC,KAAK,uBAAuB,GAC5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAC,aAAa,EAAE,SAAS,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,eAAe,EAAC,MAAM,aAAa,CAAC;AAC9G,OAAO,EACN,2BAA2B,EAC3B,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,eAAe,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,yBAAyB,EACzB,qBAAqB,EACrB,KAAK,cAAc,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,sBAAsB,EACtB,iBAAiB,EACjB,sCAAsC,EACtC,0BAA0B,EAC1B,gCAAgC,EAChC,mCAAmC,EACnC,oCAAoC,EACpC,2BAA2B,EAC3B,sBAAsB,EACtB,2BAA2B,EAC3B,oCAAoC,EACpC,gCAAgC,EAChC,iCAAiC,EACjC,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,0BAA0B,GAC1B,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { COINMARKETCAP_API_KEY_ENV, isCmcApiKeyConfigured, missingCmcApiKeyReason, resolveCmcApiKey, } from './api-key.js';
|
|
2
|
+
export { chooseCoinMarketCapMcpServer, CMC_FULL_MCP_SERVER_ID, CMC_PUBLIC_MCP_SERVER_ID, resolveCoinMarketCapMcpServer, } from './mcp-server-choice.js';
|
|
3
|
+
export { cmcKeylessGet, cmcProGet, CMC_KEYLESS_BASE_URL, CMC_PRO_BASE_URL, getCmcProApiKey } from './client.js';
|
|
4
|
+
export { getAltcoinSeasonIndexLatest, getCmc100Latest, getCryptoOhlcvHistorical, getCryptoQuotesLatest, getDexPairQuotes, getDexToken, getDexTokenPools, getFearAndGreedHistorical, getFearAndGreedLatest, getGlobalMetricsLatest, getKlineCandles, getSimplePrice, searchDexTokens, } from './public-api.js';
|
|
5
|
+
export { normalizeKlineCandleTuple, normalizeKlineCandles, } from './kline.js';
|
|
6
|
+
export { CmcKlineIntervalSchema, CmcPlatformSchema, GetAltcoinSeasonIndexLatestInputSchema, GetCmc100LatestInputSchema, GetCryptoQuotesLatestInputSchema, GetCryptoOhlcvHistoricalInputSchema, GetCryptoOhlcvHistoricalOutputSchema, GetDexPairQuotesInputSchema, GetDexTokenInputSchema, GetDexTokenPoolsInputSchema, GetFearAndGreedHistoricalInputSchema, GetFearAndGreedLatestInputSchema, GetGlobalMetricsLatestInputSchema, GetKlineCandlesInputSchema, GetKlineCandlesOutputSchema, GetSimplePriceInputSchema, SearchDexTokensInputSchema, } from './schemas.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/coinmarketcap/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,GAG7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAC,aAAa,EAAE,SAAS,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,eAAe,EAAC,MAAM,aAAa,CAAC;AAC9G,OAAO,EACN,2BAA2B,EAC3B,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,eAAe,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,yBAAyB,EACzB,qBAAqB,GAErB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,sBAAsB,EACtB,iBAAiB,EACjB,sCAAsC,EACtC,0BAA0B,EAC1B,gCAAgC,EAChC,mCAAmC,EACnC,oCAAoC,EACpC,2BAA2B,EAC3B,sBAAsB,EACtB,2BAA2B,EAC3B,oCAAoC,EACpC,gCAAgC,EAChC,iCAAiC,EACjC,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,0BAA0B,GAC1B,MAAM,cAAc,CAAC"}
|