@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
|
@@ -99,11 +99,124 @@ const trendLineRowSchema = z
|
|
|
99
99
|
export const ChartTrendLinesOverlaySchema = z
|
|
100
100
|
.object({
|
|
101
101
|
type: z.literal('trend_lines'),
|
|
102
|
-
lines: z.array(trendLineRowSchema).min(1).max(
|
|
102
|
+
lines: z.array(trendLineRowSchema).min(1).max(8),
|
|
103
103
|
id: z.string().min(1).max(64).optional(),
|
|
104
104
|
style: overlayStyleSchema.optional(),
|
|
105
105
|
})
|
|
106
106
|
.strict();
|
|
107
|
+
const chartPatternPointSchema = z
|
|
108
|
+
.object({
|
|
109
|
+
time: z.union([
|
|
110
|
+
z.number(),
|
|
111
|
+
z
|
|
112
|
+
.object({
|
|
113
|
+
year: z.number().int(),
|
|
114
|
+
month: z.number().int(),
|
|
115
|
+
day: z.number().int(),
|
|
116
|
+
})
|
|
117
|
+
.strict(),
|
|
118
|
+
]),
|
|
119
|
+
price: z.number(),
|
|
120
|
+
label: z.string().min(1).max(16).optional(),
|
|
121
|
+
role: z.string().min(1).max(32).optional(),
|
|
122
|
+
})
|
|
123
|
+
.strict();
|
|
124
|
+
const chartPatternLineSchema = z
|
|
125
|
+
.object({
|
|
126
|
+
pointA: chartPatternPointSchema,
|
|
127
|
+
pointB: chartPatternPointSchema,
|
|
128
|
+
label: z.string().min(1).max(64).optional(),
|
|
129
|
+
kind: z.enum(['support', 'resistance', 'neckline', 'boundary', 'flagpole']).optional(),
|
|
130
|
+
})
|
|
131
|
+
.strict();
|
|
132
|
+
export const ChartPatternOverlaySchema = z
|
|
133
|
+
.object({
|
|
134
|
+
type: z.literal('chart_pattern'),
|
|
135
|
+
patternName: z.string().min(1).max(128),
|
|
136
|
+
patternId: z.string().min(1).max(64).optional(),
|
|
137
|
+
points: z.array(chartPatternPointSchema).max(12),
|
|
138
|
+
lines: z.array(chartPatternLineSchema).max(8),
|
|
139
|
+
levels: z
|
|
140
|
+
.array(z
|
|
141
|
+
.object({
|
|
142
|
+
price: z.number(),
|
|
143
|
+
label: z.string().min(1).max(64).optional(),
|
|
144
|
+
kind: z.enum(['support', 'resistance', 'neckline', 'level']).optional(),
|
|
145
|
+
role: z.string().min(1).max(32).optional(),
|
|
146
|
+
})
|
|
147
|
+
.strict())
|
|
148
|
+
.max(8)
|
|
149
|
+
.optional(),
|
|
150
|
+
polylines: z
|
|
151
|
+
.array(z
|
|
152
|
+
.object({
|
|
153
|
+
points: z.array(chartPatternPointSchema).min(2).max(16),
|
|
154
|
+
label: z.string().min(1).max(64).optional(),
|
|
155
|
+
role: z.string().min(1).max(32).optional(),
|
|
156
|
+
style: overlayStyleSchema.optional(),
|
|
157
|
+
})
|
|
158
|
+
.strict())
|
|
159
|
+
.max(4)
|
|
160
|
+
.optional(),
|
|
161
|
+
markers: z
|
|
162
|
+
.array(z
|
|
163
|
+
.object({
|
|
164
|
+
time: chartPatternPointSchema.shape.time,
|
|
165
|
+
price: z.number(),
|
|
166
|
+
label: z.string().min(1).max(64).optional(),
|
|
167
|
+
role: z.string().min(1).max(32).optional(),
|
|
168
|
+
})
|
|
169
|
+
.strict())
|
|
170
|
+
.max(8)
|
|
171
|
+
.optional(),
|
|
172
|
+
clipToBarSpan: z
|
|
173
|
+
.object({
|
|
174
|
+
fromTimeSec: z.number(),
|
|
175
|
+
toTimeSec: z.number(),
|
|
176
|
+
})
|
|
177
|
+
.strict()
|
|
178
|
+
.optional(),
|
|
179
|
+
barHighlights: z
|
|
180
|
+
.array(z
|
|
181
|
+
.object({
|
|
182
|
+
fromTimeSec: z.number(),
|
|
183
|
+
toTimeSec: z.number(),
|
|
184
|
+
verdict: z.enum(['confirming', 'neutral', 'weak']),
|
|
185
|
+
role: z.string().min(1).max(32).optional(),
|
|
186
|
+
label: z.string().min(1).max(64).optional(),
|
|
187
|
+
})
|
|
188
|
+
.strict())
|
|
189
|
+
.max(12)
|
|
190
|
+
.optional(),
|
|
191
|
+
volumeProfile: z
|
|
192
|
+
.object({
|
|
193
|
+
barSpan: z
|
|
194
|
+
.object({
|
|
195
|
+
fromIndex: z.number().int(),
|
|
196
|
+
toIndex: z.number().int(),
|
|
197
|
+
fromTimeSec: z.number(),
|
|
198
|
+
toTimeSec: z.number(),
|
|
199
|
+
})
|
|
200
|
+
.strict(),
|
|
201
|
+
bins: z
|
|
202
|
+
.array(z
|
|
203
|
+
.object({
|
|
204
|
+
priceLo: z.number(),
|
|
205
|
+
priceHi: z.number(),
|
|
206
|
+
volume: z.number(),
|
|
207
|
+
})
|
|
208
|
+
.strict())
|
|
209
|
+
.min(1)
|
|
210
|
+
.max(16),
|
|
211
|
+
pocPrice: z.number(),
|
|
212
|
+
})
|
|
213
|
+
.strict()
|
|
214
|
+
.optional(),
|
|
215
|
+
id: z.string().min(1).max(64).optional(),
|
|
216
|
+
style: overlayStyleSchema.optional(),
|
|
217
|
+
pointStyle: overlayStyleSchema.optional(),
|
|
218
|
+
})
|
|
219
|
+
.strict();
|
|
107
220
|
export const ChartPivotLevelsOverlaySchema = z
|
|
108
221
|
.object({
|
|
109
222
|
type: z.literal('pivot_levels'),
|
|
@@ -161,6 +274,7 @@ export const ChartOverlayInputSchema = z.discriminatedUnion('type', [
|
|
|
161
274
|
ChartHorizontalLevelsOverlaySchema,
|
|
162
275
|
ChartPivotLevelsOverlaySchema,
|
|
163
276
|
ChartTrendLinesOverlaySchema,
|
|
277
|
+
ChartPatternOverlaySchema,
|
|
164
278
|
ChartRsiOverlaySchema,
|
|
165
279
|
ChartMacdOverlaySchema,
|
|
166
280
|
ChartStochasticRsiOverlaySchema,
|
|
@@ -172,6 +286,7 @@ export const PrepareChartDrawingsSchema = z
|
|
|
172
286
|
ChartPivotLevelsOverlaySchema,
|
|
173
287
|
ChartFibonacciOverlaySchema,
|
|
174
288
|
ChartTrendLinesOverlaySchema,
|
|
289
|
+
ChartPatternOverlaySchema,
|
|
175
290
|
]))
|
|
176
291
|
.max(8);
|
|
177
292
|
//# sourceMappingURL=overlay-schemas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay-schemas.js","sourceRoot":"","sources":["../../../src/core/chart/overlay-schemas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"overlay-schemas.js","sourceRoot":"","sources":["../../../src/core/chart/overlay-schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlays.d.ts","sourceRoot":"","sources":["../../../src/core/chart/overlays.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"overlays.d.ts","sourceRoot":"","sources":["../../../src/core/chart/overlays.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAG5D,KAAK,qBAAqB,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAsjC3E,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,qBAAqB,EAAE,EACnC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,SAAS,GACvC,SAAS,CAAC,qBAAqB,EAAE,CAAC,CA+HpC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { calculateTechnicalIndicator } from '../ta/calculate.js';
|
|
2
|
+
import { PATTERN_OVERLAY_STYLE } from '../chart-patterns/drawing-spec.js';
|
|
3
|
+
import { fibLevelShowsAxisLabel } from './analysis/key-level-drawings-shared.js';
|
|
2
4
|
const DEFAULT_MA_PERIOD = 20;
|
|
3
5
|
const DEFAULT_BOLLINGER_PERIOD = 20;
|
|
4
6
|
const DEFAULT_BOLLINGER_STD_DEV = 2;
|
|
@@ -257,6 +259,12 @@ function extendTrendLineData(pointA, pointB, timeStart, timeEnd) {
|
|
|
257
259
|
return { ok: false, reason: 'Trend line points need valid chart times.' };
|
|
258
260
|
}
|
|
259
261
|
if (secA === secB) {
|
|
262
|
+
if (Math.abs(pointA.price - pointB.price) < 1e-9) {
|
|
263
|
+
return {
|
|
264
|
+
ok: true,
|
|
265
|
+
data: horizontalLineData(timeStart, timeEnd, pointA.price),
|
|
266
|
+
};
|
|
267
|
+
}
|
|
260
268
|
return { ok: false, reason: 'Trend line anchor points must have different times.' };
|
|
261
269
|
}
|
|
262
270
|
const slope = (pointB.price - pointA.price) / (secB - secA);
|
|
@@ -270,13 +278,22 @@ function extendTrendLineData(pointA, pointB, timeStart, timeEnd) {
|
|
|
270
278
|
],
|
|
271
279
|
};
|
|
272
280
|
}
|
|
281
|
+
function trendLineOverlayStyle(kind) {
|
|
282
|
+
switch (kind) {
|
|
283
|
+
case 'support':
|
|
284
|
+
return {
|
|
285
|
+
...PATTERN_OVERLAY_STYLE.neckline,
|
|
286
|
+
lineStyle: 'solid',
|
|
287
|
+
lineWidth: 3,
|
|
288
|
+
};
|
|
289
|
+
case 'resistance':
|
|
290
|
+
return { ...PATTERN_OVERLAY_STYLE.structure };
|
|
291
|
+
default:
|
|
292
|
+
return { ...PATTERN_OVERLAY_STYLE.structure };
|
|
293
|
+
}
|
|
294
|
+
}
|
|
273
295
|
function computeTrendLinesOverlay(overlay, timeStart, timeEnd) {
|
|
274
296
|
const prefix = overlay.id ?? 'trend';
|
|
275
|
-
const baseStyle = overlay.style ?? {
|
|
276
|
-
lineStyle: 'dashed',
|
|
277
|
-
lineWidth: 1,
|
|
278
|
-
color: '#88888888',
|
|
279
|
-
};
|
|
280
297
|
const seriesOut = [];
|
|
281
298
|
for (let i = 0; i < overlay.lines.length; i++) {
|
|
282
299
|
const row = overlay.lines[i];
|
|
@@ -290,6 +307,7 @@ function computeTrendLinesOverlay(overlay, timeStart, timeEnd) {
|
|
|
290
307
|
: row.kind === 'resistance'
|
|
291
308
|
? `Resistance trend ${i + 1}`
|
|
292
309
|
: `Trend ${i + 1}`);
|
|
310
|
+
const kindStyle = overlay.style ?? trendLineOverlayStyle(row.kind);
|
|
293
311
|
seriesOut.push({
|
|
294
312
|
id: `${prefix}_${i}`,
|
|
295
313
|
type: 'line',
|
|
@@ -297,7 +315,7 @@ function computeTrendLinesOverlay(overlay, timeStart, timeEnd) {
|
|
|
297
315
|
data: extended.data,
|
|
298
316
|
priceScaleId: 'right',
|
|
299
317
|
overlay: true,
|
|
300
|
-
style:
|
|
318
|
+
style: kindStyle,
|
|
301
319
|
});
|
|
302
320
|
}
|
|
303
321
|
if (!seriesOut.length) {
|
|
@@ -305,6 +323,242 @@ function computeTrendLinesOverlay(overlay, timeStart, timeEnd) {
|
|
|
305
323
|
}
|
|
306
324
|
return { ok: true, data: seriesOut };
|
|
307
325
|
}
|
|
326
|
+
function clipTrendLineToSpan(pointA, pointB, clipFromSec, clipToSec) {
|
|
327
|
+
const secA = chartTimeSec(pointA.time);
|
|
328
|
+
const secB = chartTimeSec(pointB.time);
|
|
329
|
+
if (secA == null || secB == null) {
|
|
330
|
+
return { ok: false, reason: 'Trend line points need valid chart times.' };
|
|
331
|
+
}
|
|
332
|
+
if (secA === secB) {
|
|
333
|
+
return {
|
|
334
|
+
ok: true,
|
|
335
|
+
data: [
|
|
336
|
+
{ time: clipFromSec, value: pointA.price },
|
|
337
|
+
{ time: clipToSec, value: pointA.price },
|
|
338
|
+
],
|
|
339
|
+
};
|
|
340
|
+
}
|
|
341
|
+
const slope = (pointB.price - pointA.price) / (secB - secA);
|
|
342
|
+
const priceAt = (t) => pointA.price + slope * (t - secA);
|
|
343
|
+
const fromSec = Math.max(clipFromSec, Math.min(secA, secB));
|
|
344
|
+
const toSec = Math.min(clipToSec, Math.max(secA, secB));
|
|
345
|
+
if (fromSec >= toSec) {
|
|
346
|
+
return { ok: false, reason: 'Pattern line does not intersect clip span.' };
|
|
347
|
+
}
|
|
348
|
+
return {
|
|
349
|
+
ok: true,
|
|
350
|
+
data: [
|
|
351
|
+
{ time: fromSec, value: priceAt(fromSec) },
|
|
352
|
+
{ time: toSec, value: priceAt(toSec) },
|
|
353
|
+
],
|
|
354
|
+
};
|
|
355
|
+
}
|
|
356
|
+
function horizontalLineDataBetween(fromTime, toTime, price) {
|
|
357
|
+
return [
|
|
358
|
+
{ time: fromTime, value: price },
|
|
359
|
+
{ time: toTime, value: price },
|
|
360
|
+
];
|
|
361
|
+
}
|
|
362
|
+
function computeChartPatternOverlay(overlay, timeStart, timeEnd) {
|
|
363
|
+
const prefix = overlay.id ?? 'pattern';
|
|
364
|
+
const structureStyle = overlay.style ?? {
|
|
365
|
+
lineStyle: 'solid',
|
|
366
|
+
lineWidth: 3,
|
|
367
|
+
color: '#42A5F5',
|
|
368
|
+
};
|
|
369
|
+
const pointStyle = overlay.pointStyle ?? {
|
|
370
|
+
lineStyle: 'solid',
|
|
371
|
+
lineWidth: 3,
|
|
372
|
+
color: '#FFA726',
|
|
373
|
+
};
|
|
374
|
+
const clip = overlay.clipToBarSpan;
|
|
375
|
+
const clipFrom = clip?.fromTimeSec ?? chartTimeSec(timeStart);
|
|
376
|
+
const clipTo = clip?.toTimeSec ?? chartTimeSec(timeEnd);
|
|
377
|
+
const seriesOut = [];
|
|
378
|
+
const seenLevelPrices = new Set();
|
|
379
|
+
for (let i = 0; i < overlay.lines.length; i++) {
|
|
380
|
+
const row = overlay.lines[i];
|
|
381
|
+
const lineData = clip
|
|
382
|
+
? clipTrendLineToSpan(row.pointA, row.pointB, clipFrom, clipTo)
|
|
383
|
+
: extendTrendLineData(row.pointA, row.pointB, timeStart, timeEnd);
|
|
384
|
+
if (!lineData.ok) {
|
|
385
|
+
continue;
|
|
386
|
+
}
|
|
387
|
+
const kindStyle = row.kind === 'neckline'
|
|
388
|
+
? { ...structureStyle, lineWidth: 2.5, color: '#66BB6A' }
|
|
389
|
+
: row.kind === 'flagpole'
|
|
390
|
+
? structureStyle
|
|
391
|
+
: structureStyle;
|
|
392
|
+
seriesOut.push({
|
|
393
|
+
id: `${prefix}_line_${i}`,
|
|
394
|
+
type: 'line',
|
|
395
|
+
label: row.label?.trim() || `${overlay.patternName} line ${i + 1}`,
|
|
396
|
+
data: lineData.data,
|
|
397
|
+
priceScaleId: 'right',
|
|
398
|
+
overlay: true,
|
|
399
|
+
style: kindStyle,
|
|
400
|
+
});
|
|
401
|
+
}
|
|
402
|
+
for (const poly of overlay.polylines ?? []) {
|
|
403
|
+
if (poly.points.length < 2) {
|
|
404
|
+
continue;
|
|
405
|
+
}
|
|
406
|
+
const data = poly.points
|
|
407
|
+
.map(pt => {
|
|
408
|
+
const sec = chartTimeSec(pt.time);
|
|
409
|
+
if (sec == null || !Number.isFinite(pt.price)) {
|
|
410
|
+
return null;
|
|
411
|
+
}
|
|
412
|
+
return { time: sec, value: pt.price };
|
|
413
|
+
})
|
|
414
|
+
.filter((p) => p != null);
|
|
415
|
+
if (data.length < 2) {
|
|
416
|
+
continue;
|
|
417
|
+
}
|
|
418
|
+
seriesOut.push({
|
|
419
|
+
id: `${prefix}_poly_${poly.label ?? seriesOut.length}`,
|
|
420
|
+
type: 'line',
|
|
421
|
+
label: poly.label?.trim() || `${overlay.patternName} curve`,
|
|
422
|
+
data,
|
|
423
|
+
priceScaleId: 'right',
|
|
424
|
+
overlay: true,
|
|
425
|
+
style: poly.style ?? structureStyle,
|
|
426
|
+
});
|
|
427
|
+
}
|
|
428
|
+
for (const level of overlay.levels ?? []) {
|
|
429
|
+
if (!Number.isFinite(level.price)) {
|
|
430
|
+
continue;
|
|
431
|
+
}
|
|
432
|
+
const levelKey = level.role === 'measured_move' ? `target_${level.price}` : `lvl_${level.price}`;
|
|
433
|
+
if (seenLevelPrices.has(levelKey)) {
|
|
434
|
+
continue;
|
|
435
|
+
}
|
|
436
|
+
seenLevelPrices.add(levelKey);
|
|
437
|
+
const isTarget = level.role === 'measured_move' || level.label?.toLowerCase().includes('target');
|
|
438
|
+
const levelFrom = isTarget ? timeStart : clip ? clipFrom : timeStart;
|
|
439
|
+
const levelTo = isTarget ? timeEnd : clip ? clipTo : timeEnd;
|
|
440
|
+
seriesOut.push({
|
|
441
|
+
id: `${prefix}_${levelKey}`,
|
|
442
|
+
type: 'line',
|
|
443
|
+
label: level.label?.trim() || level.price.toFixed(2),
|
|
444
|
+
data: horizontalLineDataBetween(levelFrom, levelTo, level.price),
|
|
445
|
+
priceScaleId: 'right',
|
|
446
|
+
overlay: true,
|
|
447
|
+
style: isTarget
|
|
448
|
+
? { lineStyle: 'dashed', lineWidth: 2, color: '#FFB300' }
|
|
449
|
+
: { ...structureStyle, lineStyle: 'solid', lineWidth: 2.5, color: '#66BB6A' },
|
|
450
|
+
});
|
|
451
|
+
}
|
|
452
|
+
for (let i = 0; i < (overlay.markers ?? []).length; i++) {
|
|
453
|
+
const pt = overlay.markers[i];
|
|
454
|
+
const tSec = chartTimeSec(pt.time);
|
|
455
|
+
if (tSec == null || !Number.isFinite(pt.price)) {
|
|
456
|
+
continue;
|
|
457
|
+
}
|
|
458
|
+
const tickSec = Math.max(1, Math.floor((clipTo - clipFrom) / 40));
|
|
459
|
+
const tickStart = Math.max(clipFrom, tSec - tickSec);
|
|
460
|
+
const tickEnd = Math.min(clipTo, tSec + tickSec);
|
|
461
|
+
seriesOut.push({
|
|
462
|
+
id: `${prefix}_mk_${i}`,
|
|
463
|
+
type: 'line',
|
|
464
|
+
label: pt.label?.trim() || pt.role || `Marker ${i + 1}`,
|
|
465
|
+
data: [
|
|
466
|
+
{ time: tickStart, value: pt.price },
|
|
467
|
+
{ time: tickEnd, value: pt.price },
|
|
468
|
+
],
|
|
469
|
+
priceScaleId: 'right',
|
|
470
|
+
overlay: true,
|
|
471
|
+
style: pointStyle,
|
|
472
|
+
});
|
|
473
|
+
}
|
|
474
|
+
for (let i = 0; i < overlay.points.length; i++) {
|
|
475
|
+
const pt = overlay.points[i];
|
|
476
|
+
const tSec = chartTimeSec(pt.time);
|
|
477
|
+
if (tSec == null || !Number.isFinite(pt.price)) {
|
|
478
|
+
continue;
|
|
479
|
+
}
|
|
480
|
+
const tickSec = Math.max(1, Math.floor((clipTo - clipFrom) / 40));
|
|
481
|
+
const tickStart = Math.max(clipFrom, tSec - tickSec);
|
|
482
|
+
const tickEnd = Math.min(clipTo, tSec + tickSec);
|
|
483
|
+
seriesOut.push({
|
|
484
|
+
id: `${prefix}_pt_${i}`,
|
|
485
|
+
type: 'line',
|
|
486
|
+
label: pt.label?.trim() || `Point ${i + 1}`,
|
|
487
|
+
data: [
|
|
488
|
+
{ time: tickStart, value: pt.price },
|
|
489
|
+
{ time: tickEnd, value: pt.price },
|
|
490
|
+
],
|
|
491
|
+
priceScaleId: 'right',
|
|
492
|
+
overlay: true,
|
|
493
|
+
style: pointStyle,
|
|
494
|
+
});
|
|
495
|
+
}
|
|
496
|
+
for (let i = 0; i < (overlay.barHighlights ?? []).length; i++) {
|
|
497
|
+
const hi = overlay.barHighlights[i];
|
|
498
|
+
if (hi.verdict === 'neutral') {
|
|
499
|
+
continue;
|
|
500
|
+
}
|
|
501
|
+
const color = hi.verdict === 'confirming' ? '#00C85333' : '#FF6F0033';
|
|
502
|
+
const bandSec = Math.max(1, Math.floor((clipTo - clipFrom) / 80));
|
|
503
|
+
const t0 = hi.fromTimeSec - bandSec;
|
|
504
|
+
const t1 = hi.toTimeSec + bandSec;
|
|
505
|
+
seriesOut.push({
|
|
506
|
+
id: `${prefix}_vol_hi_${i}`,
|
|
507
|
+
type: 'area',
|
|
508
|
+
label: hi.label?.trim() || `Volume ${hi.verdict}`,
|
|
509
|
+
data: [
|
|
510
|
+
{ time: t0, value: 0 },
|
|
511
|
+
{ time: t0, value: 1 },
|
|
512
|
+
{ time: t1, value: 1 },
|
|
513
|
+
{ time: t1, value: 0 },
|
|
514
|
+
],
|
|
515
|
+
priceScaleId: 'right',
|
|
516
|
+
overlay: true,
|
|
517
|
+
style: { color, lineWidth: 1, lineStyle: 'solid' },
|
|
518
|
+
});
|
|
519
|
+
}
|
|
520
|
+
const profile = overlay.volumeProfile;
|
|
521
|
+
if (profile?.bins.length) {
|
|
522
|
+
const maxVol = Math.max(...profile.bins.map(b => b.volume), 1);
|
|
523
|
+
const spanSec = profile.barSpan.toTimeSec - profile.barSpan.fromTimeSec;
|
|
524
|
+
const barWidth = Math.max(1, Math.floor(spanSec / 20));
|
|
525
|
+
for (let i = 0; i < profile.bins.length; i++) {
|
|
526
|
+
const bin = profile.bins[i];
|
|
527
|
+
if (bin.volume <= 0) {
|
|
528
|
+
continue;
|
|
529
|
+
}
|
|
530
|
+
const mid = (bin.priceLo + bin.priceHi) / 2;
|
|
531
|
+
const len = (bin.volume / maxVol) * barWidth;
|
|
532
|
+
const tEnd = profile.barSpan.toTimeSec;
|
|
533
|
+
const tStart = tEnd - len;
|
|
534
|
+
seriesOut.push({
|
|
535
|
+
id: `${prefix}_vp_${i}`,
|
|
536
|
+
type: 'line',
|
|
537
|
+
label: `VP ${mid.toFixed(0)}`,
|
|
538
|
+
data: [
|
|
539
|
+
{ time: tStart, value: mid },
|
|
540
|
+
{ time: tEnd, value: mid },
|
|
541
|
+
],
|
|
542
|
+
priceScaleId: 'right',
|
|
543
|
+
overlay: true,
|
|
544
|
+
style: { lineStyle: 'solid', lineWidth: 1, color: '#78909C55' },
|
|
545
|
+
});
|
|
546
|
+
}
|
|
547
|
+
seriesOut.push({
|
|
548
|
+
id: `${prefix}_vp_poc`,
|
|
549
|
+
type: 'line',
|
|
550
|
+
label: 'POC',
|
|
551
|
+
data: horizontalLineDataBetween(profile.barSpan.fromTimeSec, profile.barSpan.toTimeSec, profile.pocPrice),
|
|
552
|
+
priceScaleId: 'right',
|
|
553
|
+
overlay: true,
|
|
554
|
+
style: { lineStyle: 'dotted', lineWidth: 1, color: '#78909C' },
|
|
555
|
+
});
|
|
556
|
+
}
|
|
557
|
+
if (!seriesOut.length) {
|
|
558
|
+
return { ok: false, reason: 'chart_pattern produced no drawable geometry.' };
|
|
559
|
+
}
|
|
560
|
+
return { ok: true, data: seriesOut };
|
|
561
|
+
}
|
|
308
562
|
function computeFibonacciOverlay(overlay, timeStart, timeEnd, range) {
|
|
309
563
|
const { high, low, trend } = range;
|
|
310
564
|
if (!Number.isFinite(high) || !Number.isFinite(low) || high === low) {
|
|
@@ -323,9 +577,9 @@ function computeFibonacciOverlay(overlay, timeStart, timeEnd, range) {
|
|
|
323
577
|
: new Set(ALL_FIB_LEVELS);
|
|
324
578
|
const prefix = overlay.id ?? `fib_${overlay.sourceSeriesId ?? `${high}_${low}`}`;
|
|
325
579
|
const mutedStyle = overlay.style ?? {
|
|
326
|
-
lineStyle: '
|
|
327
|
-
lineWidth:
|
|
328
|
-
color: '#
|
|
580
|
+
lineStyle: 'dashed',
|
|
581
|
+
lineWidth: 2,
|
|
582
|
+
color: '#E040FB',
|
|
329
583
|
};
|
|
330
584
|
const highlightSet = new Set(overlay.highlightLevels?.length ? overlay.highlightLevels : [0.618]);
|
|
331
585
|
const defaultHighlightStyle = {
|
|
@@ -362,6 +616,7 @@ function computeFibonacciOverlay(overlay, timeStart, timeEnd, range) {
|
|
|
362
616
|
data: horizontalLineData(timeStart, timeEnd, value),
|
|
363
617
|
priceScaleId: overlay.priceScaleId ?? 'right',
|
|
364
618
|
overlay: overlay.overlay ?? true,
|
|
619
|
+
lastValueVisible: fibLevelShowsAxisLabel(level, isHighlight),
|
|
365
620
|
style: lineStyle,
|
|
366
621
|
});
|
|
367
622
|
}
|
|
@@ -389,6 +644,15 @@ function computeHorizontalLevelsOverlay(overlay, timeStart, timeEnd) {
|
|
|
389
644
|
: row.kind === 'resistance'
|
|
390
645
|
? `R ${row.price.toFixed(2)}`
|
|
391
646
|
: `Level ${row.price.toFixed(2)}`);
|
|
647
|
+
const isKeyLevel = row.label?.startsWith('Level #') ?? false;
|
|
648
|
+
const isFibExtension = row.label?.startsWith('Fib 1.618 ext #') ?? false;
|
|
649
|
+
const rowStyle = isKeyLevel && row.kind === 'support'
|
|
650
|
+
? { lineStyle: 'solid', lineWidth: 3, color: '#66BB6A' }
|
|
651
|
+
: isKeyLevel && row.kind === 'resistance'
|
|
652
|
+
? { lineStyle: 'solid', lineWidth: 3, color: '#42A5F5' }
|
|
653
|
+
: isFibExtension
|
|
654
|
+
? { lineStyle: 'solid', lineWidth: 3, color: '#FFA726' }
|
|
655
|
+
: baseStyle;
|
|
392
656
|
seriesOut.push({
|
|
393
657
|
id: `${prefix}_${i}`,
|
|
394
658
|
type: 'line',
|
|
@@ -396,7 +660,9 @@ function computeHorizontalLevelsOverlay(overlay, timeStart, timeEnd) {
|
|
|
396
660
|
data: horizontalLineData(timeStart, timeEnd, row.price),
|
|
397
661
|
priceScaleId: 'right',
|
|
398
662
|
overlay: true,
|
|
399
|
-
|
|
663
|
+
...(isKeyLevel ? { lastValueVisible: false } : {}),
|
|
664
|
+
...(isFibExtension ? { lastValueVisible: true } : {}),
|
|
665
|
+
style: rowStyle,
|
|
400
666
|
});
|
|
401
667
|
}
|
|
402
668
|
if (!seriesOut.length) {
|
|
@@ -653,7 +919,10 @@ export function expandChartOverlays(baseSeries, overlays) {
|
|
|
653
919
|
let oscillatorIndex = 0;
|
|
654
920
|
for (const overlay of overlays) {
|
|
655
921
|
let overlaySeries;
|
|
656
|
-
if (overlay.type === 'horizontal_levels' ||
|
|
922
|
+
if (overlay.type === 'horizontal_levels' ||
|
|
923
|
+
overlay.type === 'pivot_levels' ||
|
|
924
|
+
overlay.type === 'trend_lines' ||
|
|
925
|
+
overlay.type === 'chart_pattern') {
|
|
657
926
|
const span = primaryTimeSpan(baseSeries);
|
|
658
927
|
if (!span.ok) {
|
|
659
928
|
return span;
|
|
@@ -664,6 +933,9 @@ export function expandChartOverlays(baseSeries, overlays) {
|
|
|
664
933
|
else if (overlay.type === 'pivot_levels') {
|
|
665
934
|
overlaySeries = computePivotLevelsOverlay(overlay, span.data.timeStart, span.data.timeEnd);
|
|
666
935
|
}
|
|
936
|
+
else if (overlay.type === 'chart_pattern') {
|
|
937
|
+
overlaySeries = computeChartPatternOverlay(overlay, span.data.timeStart, span.data.timeEnd);
|
|
938
|
+
}
|
|
667
939
|
else {
|
|
668
940
|
overlaySeries = computeTrendLinesOverlay(overlay, span.data.timeStart, span.data.timeEnd);
|
|
669
941
|
}
|