@continuumdao/continuum-node-sdk 1.3.37 → 1.3.39

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.
Files changed (445) hide show
  1. package/dist/agent-host-catalog.json +11 -0
  2. package/dist/core/chart/analysis/analysis-agent-view.d.ts.map +1 -1
  3. package/dist/core/chart/analysis/analysis-agent-view.js +68 -11
  4. package/dist/core/chart/analysis/analysis-agent-view.js.map +1 -1
  5. package/dist/core/chart/analysis/analysis-catalog.d.ts.map +1 -1
  6. package/dist/core/chart/analysis/analysis-catalog.js +59 -1
  7. package/dist/core/chart/analysis/analysis-catalog.js.map +1 -1
  8. package/dist/core/chart/analysis/analyze-tools.d.ts +228 -11
  9. package/dist/core/chart/analysis/analyze-tools.d.ts.map +1 -1
  10. package/dist/core/chart/analysis/analyze-tools.js +51 -55
  11. package/dist/core/chart/analysis/analyze-tools.js.map +1 -1
  12. package/dist/core/chart/analysis/bollinger-analyze-tools.d.ts +5 -0
  13. package/dist/core/chart/analysis/bollinger-analyze-tools.d.ts.map +1 -1
  14. package/dist/core/chart/analysis/bollinger-analyze-tools.js +9 -0
  15. package/dist/core/chart/analysis/bollinger-analyze-tools.js.map +1 -1
  16. package/dist/core/chart/analysis/chart-patterns-drawings-tools.d.ts +121 -0
  17. package/dist/core/chart/analysis/chart-patterns-drawings-tools.d.ts.map +1 -1
  18. package/dist/core/chart/analysis/chart-patterns-drawings-tools.js +69 -5
  19. package/dist/core/chart/analysis/chart-patterns-drawings-tools.js.map +1 -1
  20. package/dist/core/chart/analysis/chart-patterns-tools.d.ts +114 -0
  21. package/dist/core/chart/analysis/chart-patterns-tools.d.ts.map +1 -1
  22. package/dist/core/chart/analysis/chart-patterns-tools.js +10 -1
  23. package/dist/core/chart/analysis/chart-patterns-tools.js.map +1 -1
  24. package/dist/core/chart/analysis/divergence/detect.d.ts +21 -0
  25. package/dist/core/chart/analysis/divergence/detect.d.ts.map +1 -0
  26. package/dist/core/chart/analysis/divergence/detect.js +223 -0
  27. package/dist/core/chart/analysis/divergence/detect.js.map +1 -0
  28. package/dist/core/chart/analysis/divergence/index.d.ts +4 -0
  29. package/dist/core/chart/analysis/divergence/index.d.ts.map +1 -0
  30. package/dist/core/chart/analysis/divergence/index.js +4 -0
  31. package/dist/core/chart/analysis/divergence/index.js.map +1 -0
  32. package/dist/core/chart/analysis/divergence/peaks.d.ts +11 -0
  33. package/dist/core/chart/analysis/divergence/peaks.d.ts.map +1 -0
  34. package/dist/core/chart/analysis/divergence/peaks.js +108 -0
  35. package/dist/core/chart/analysis/divergence/peaks.js.map +1 -0
  36. package/dist/core/chart/analysis/divergence/types.d.ts +30 -0
  37. package/dist/core/chart/analysis/divergence/types.d.ts.map +1 -0
  38. package/dist/core/chart/analysis/divergence/types.js +2 -0
  39. package/dist/core/chart/analysis/divergence/types.js.map +1 -0
  40. package/dist/core/chart/analysis/divergence-analyze-tools.d.ts +258 -0
  41. package/dist/core/chart/analysis/divergence-analyze-tools.d.ts.map +1 -0
  42. package/dist/core/chart/analysis/divergence-analyze-tools.js +316 -0
  43. package/dist/core/chart/analysis/divergence-analyze-tools.js.map +1 -0
  44. package/dist/core/chart/analysis/divergence-drawings-tools.d.ts +459 -0
  45. package/dist/core/chart/analysis/divergence-drawings-tools.d.ts.map +1 -0
  46. package/dist/core/chart/analysis/divergence-drawings-tools.js +392 -0
  47. package/dist/core/chart/analysis/divergence-drawings-tools.js.map +1 -0
  48. package/dist/core/chart/analysis/divergence-highlight.d.ts +19 -0
  49. package/dist/core/chart/analysis/divergence-highlight.d.ts.map +1 -0
  50. package/dist/core/chart/analysis/divergence-highlight.js +39 -0
  51. package/dist/core/chart/analysis/divergence-highlight.js.map +1 -0
  52. package/dist/core/chart/analysis/donchian-analyze-tools.d.ts +117 -0
  53. package/dist/core/chart/analysis/donchian-analyze-tools.d.ts.map +1 -0
  54. package/dist/core/chart/analysis/donchian-analyze-tools.js +220 -0
  55. package/dist/core/chart/analysis/donchian-analyze-tools.js.map +1 -0
  56. package/dist/core/chart/analysis/donchian-highlight.d.ts +31 -0
  57. package/dist/core/chart/analysis/donchian-highlight.d.ts.map +1 -0
  58. package/dist/core/chart/analysis/donchian-highlight.js +41 -0
  59. package/dist/core/chart/analysis/donchian-highlight.js.map +1 -0
  60. package/dist/core/chart/analysis/elliott-wave-drawings-tools.d.ts +2 -0
  61. package/dist/core/chart/analysis/elliott-wave-drawings-tools.d.ts.map +1 -1
  62. package/dist/core/chart/analysis/elliott-wave-drawings-tools.js +12 -2
  63. package/dist/core/chart/analysis/elliott-wave-drawings-tools.js.map +1 -1
  64. package/dist/core/chart/analysis/elliott-waves-analyze-tools.d.ts +45 -0
  65. package/dist/core/chart/analysis/elliott-waves-analyze-tools.d.ts.map +1 -1
  66. package/dist/core/chart/analysis/elliott-waves-analyze-tools.js +4 -1
  67. package/dist/core/chart/analysis/elliott-waves-analyze-tools.js.map +1 -1
  68. package/dist/core/chart/analysis/ichimoku-analyze-tools.d.ts +128 -0
  69. package/dist/core/chart/analysis/ichimoku-analyze-tools.d.ts.map +1 -0
  70. package/dist/core/chart/analysis/ichimoku-analyze-tools.js +245 -0
  71. package/dist/core/chart/analysis/ichimoku-analyze-tools.js.map +1 -0
  72. package/dist/core/chart/analysis/ichimoku-highlight.d.ts +36 -0
  73. package/dist/core/chart/analysis/ichimoku-highlight.d.ts.map +1 -0
  74. package/dist/core/chart/analysis/ichimoku-highlight.js +40 -0
  75. package/dist/core/chart/analysis/ichimoku-highlight.js.map +1 -0
  76. package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts +20 -6
  77. package/dist/core/chart/analysis/key-fib-drawings-tools.d.ts.map +1 -1
  78. package/dist/core/chart/analysis/key-fib-drawings-tools.js +47 -20
  79. package/dist/core/chart/analysis/key-fib-drawings-tools.js.map +1 -1
  80. package/dist/core/chart/analysis/key-level-drawings-shared.d.ts +8 -12
  81. package/dist/core/chart/analysis/key-level-drawings-shared.d.ts.map +1 -1
  82. package/dist/core/chart/analysis/key-level-drawings-shared.js +15 -37
  83. package/dist/core/chart/analysis/key-level-drawings-shared.js.map +1 -1
  84. package/dist/core/chart/analysis/key-level-drawings-tools.d.ts +23 -0
  85. package/dist/core/chart/analysis/key-level-drawings-tools.d.ts.map +1 -1
  86. package/dist/core/chart/analysis/key-level-drawings-tools.js +53 -6
  87. package/dist/core/chart/analysis/key-level-drawings-tools.js.map +1 -1
  88. package/dist/core/chart/analysis/key-level-menu-summary.d.ts +15 -22
  89. package/dist/core/chart/analysis/key-level-menu-summary.d.ts.map +1 -1
  90. package/dist/core/chart/analysis/key-level-menu-summary.js +63 -124
  91. package/dist/core/chart/analysis/key-level-menu-summary.js.map +1 -1
  92. package/dist/core/chart/analysis/key-levels-dataset.d.ts +1 -0
  93. package/dist/core/chart/analysis/key-levels-dataset.d.ts.map +1 -1
  94. package/dist/core/chart/analysis/key-levels-dataset.js +4 -7
  95. package/dist/core/chart/analysis/key-levels-dataset.js.map +1 -1
  96. package/dist/core/chart/analysis/liquidity-depth-analyze-tools.d.ts +124 -0
  97. package/dist/core/chart/analysis/liquidity-depth-analyze-tools.d.ts.map +1 -0
  98. package/dist/core/chart/analysis/liquidity-depth-analyze-tools.js +185 -0
  99. package/dist/core/chart/analysis/liquidity-depth-analyze-tools.js.map +1 -0
  100. package/dist/core/chart/analysis/liquidity-depth-drawings-tools.d.ts +1447 -0
  101. package/dist/core/chart/analysis/liquidity-depth-drawings-tools.d.ts.map +1 -0
  102. package/dist/core/chart/analysis/liquidity-depth-drawings-tools.js +161 -0
  103. package/dist/core/chart/analysis/liquidity-depth-drawings-tools.js.map +1 -0
  104. package/dist/core/chart/analysis/moving-averages-analyze-tools.d.ts +4 -0
  105. package/dist/core/chart/analysis/moving-averages-analyze-tools.d.ts.map +1 -1
  106. package/dist/core/chart/analysis/moving-averages-analyze-tools.js +3 -0
  107. package/dist/core/chart/analysis/moving-averages-analyze-tools.js.map +1 -1
  108. package/dist/core/chart/analysis/supertrend-analyze-tools.d.ts +116 -0
  109. package/dist/core/chart/analysis/supertrend-analyze-tools.d.ts.map +1 -0
  110. package/dist/core/chart/analysis/supertrend-analyze-tools.js +216 -0
  111. package/dist/core/chart/analysis/supertrend-analyze-tools.js.map +1 -0
  112. package/dist/core/chart/analysis/supertrend-highlight.d.ts +25 -0
  113. package/dist/core/chart/analysis/supertrend-highlight.d.ts.map +1 -0
  114. package/dist/core/chart/analysis/supertrend-highlight.js +37 -0
  115. package/dist/core/chart/analysis/supertrend-highlight.js.map +1 -0
  116. package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.d.ts +8 -1
  117. package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.d.ts.map +1 -1
  118. package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.js +13 -2
  119. package/dist/core/chart/analysis/trade-setups/bollinger-trade-setup.js.map +1 -1
  120. package/dist/core/chart/analysis/trade-setups/build-trade.d.ts +3 -4
  121. package/dist/core/chart/analysis/trade-setups/build-trade.d.ts.map +1 -1
  122. package/dist/core/chart/analysis/trade-setups/build-trade.js +55 -76
  123. package/dist/core/chart/analysis/trade-setups/build-trade.js.map +1 -1
  124. package/dist/core/chart/analysis/trade-setups/chart-data-purpose.d.ts.map +1 -1
  125. package/dist/core/chart/analysis/trade-setups/chart-data-purpose.js +18 -1
  126. package/dist/core/chart/analysis/trade-setups/chart-data-purpose.js.map +1 -1
  127. package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.d.ts +9 -0
  128. package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.d.ts.map +1 -1
  129. package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.js +71 -9
  130. package/dist/core/chart/analysis/trade-setups/chart-pattern-trade-setup.js.map +1 -1
  131. package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.d.ts +84 -0
  132. package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.d.ts.map +1 -0
  133. package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.js +194 -0
  134. package/dist/core/chart/analysis/trade-setups/divergence-trade-setup.js.map +1 -0
  135. package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.d.ts +137 -0
  136. package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.d.ts.map +1 -0
  137. package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.js +436 -0
  138. package/dist/core/chart/analysis/trade-setups/donchian-trade-setup.js.map +1 -0
  139. package/dist/core/chart/analysis/trade-setups/elliott-waves-trade-setup.d.ts +5 -1
  140. package/dist/core/chart/analysis/trade-setups/elliott-waves-trade-setup.d.ts.map +1 -1
  141. package/dist/core/chart/analysis/trade-setups/elliott-waves-trade-setup.js +9 -1
  142. package/dist/core/chart/analysis/trade-setups/elliott-waves-trade-setup.js.map +1 -1
  143. package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.d.ts +159 -0
  144. package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.d.ts.map +1 -0
  145. package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.js +407 -0
  146. package/dist/core/chart/analysis/trade-setups/ichimoku-trade-setup.js.map +1 -0
  147. package/dist/core/chart/analysis/trade-setups/index.d.ts +9 -0
  148. package/dist/core/chart/analysis/trade-setups/index.d.ts.map +1 -1
  149. package/dist/core/chart/analysis/trade-setups/index.js +9 -0
  150. package/dist/core/chart/analysis/trade-setups/index.js.map +1 -1
  151. package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.d.ts +9 -41
  152. package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.d.ts.map +1 -1
  153. package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.js +36 -238
  154. package/dist/core/chart/analysis/trade-setups/key-level-fib-retrace-trade-setup.js.map +1 -1
  155. package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.d.ts +4 -8
  156. package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.d.ts.map +1 -1
  157. package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.js +3 -30
  158. package/dist/core/chart/analysis/trade-setups/key-levels-trade-setup.js.map +1 -1
  159. package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.d.ts +3 -0
  160. package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.d.ts.map +1 -1
  161. package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.js +10 -4
  162. package/dist/core/chart/analysis/trade-setups/moving-averages-trade-setup.js.map +1 -1
  163. package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.d.ts.map +1 -1
  164. package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.js +8 -4
  165. package/dist/core/chart/analysis/trade-setups/pattern-limit-entry.js.map +1 -1
  166. package/dist/core/chart/analysis/trade-setups/shared.d.ts +13 -1
  167. package/dist/core/chart/analysis/trade-setups/shared.d.ts.map +1 -1
  168. package/dist/core/chart/analysis/trade-setups/shared.js +39 -0
  169. package/dist/core/chart/analysis/trade-setups/shared.js.map +1 -1
  170. package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.d.ts +124 -0
  171. package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.d.ts.map +1 -0
  172. package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.js +312 -0
  173. package/dist/core/chart/analysis/trade-setups/supertrend-trade-setup.js.map +1 -0
  174. package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.d.ts +18 -1
  175. package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.d.ts.map +1 -1
  176. package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.js +28 -2
  177. package/dist/core/chart/analysis/trade-setups/trade-desk-defaults.js.map +1 -1
  178. package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.d.ts +46 -0
  179. package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.d.ts.map +1 -1
  180. package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.js +55 -0
  181. package/dist/core/chart/analysis/trade-setups/trade-desk-universal-input.js.map +1 -1
  182. package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts +32 -0
  183. package/dist/core/chart/analysis/trade-setups/trade-idea-list.d.ts.map +1 -1
  184. package/dist/core/chart/analysis/trade-setups/trade-idea-list.js +222 -0
  185. package/dist/core/chart/analysis/trade-setups/trade-idea-list.js.map +1 -1
  186. package/dist/core/chart/analysis/trade-setups/trade-idea.d.ts +39 -0
  187. package/dist/core/chart/analysis/trade-setups/trade-idea.d.ts.map +1 -1
  188. package/dist/core/chart/analysis/trade-setups/trade-idea.js +159 -10
  189. package/dist/core/chart/analysis/trade-setups/trade-idea.js.map +1 -1
  190. package/dist/core/chart/analysis/trade-setups/trade-position-overlay.d.ts +37 -0
  191. package/dist/core/chart/analysis/trade-setups/trade-position-overlay.d.ts.map +1 -0
  192. package/dist/core/chart/analysis/trade-setups/trade-position-overlay.js +113 -0
  193. package/dist/core/chart/analysis/trade-setups/trade-position-overlay.js.map +1 -0
  194. package/dist/core/chart/analysis/trade-setups/trade-price-offsets.d.ts +42 -0
  195. package/dist/core/chart/analysis/trade-setups/trade-price-offsets.d.ts.map +1 -0
  196. package/dist/core/chart/analysis/trade-setups/trade-price-offsets.js +116 -0
  197. package/dist/core/chart/analysis/trade-setups/trade-price-offsets.js.map +1 -0
  198. package/dist/core/chart/analysis/trade-setups/trade-purpose-format.d.ts +2 -2
  199. package/dist/core/chart/analysis/trade-setups/trade-purpose-format.d.ts.map +1 -1
  200. package/dist/core/chart/analysis/trade-setups/trade-purpose-format.js +2 -6
  201. package/dist/core/chart/analysis/trade-setups/trade-purpose-format.js.map +1 -1
  202. package/dist/core/chart/analysis/trade-setups/trade-ratio.d.ts +54 -0
  203. package/dist/core/chart/analysis/trade-setups/trade-ratio.d.ts.map +1 -0
  204. package/dist/core/chart/analysis/trade-setups/trade-ratio.js +126 -0
  205. package/dist/core/chart/analysis/trade-setups/trade-ratio.js.map +1 -0
  206. package/dist/core/chart/analysis/trade-setups/trade-setup-selection.d.ts +42 -8
  207. package/dist/core/chart/analysis/trade-setups/trade-setup-selection.d.ts.map +1 -1
  208. package/dist/core/chart/analysis/trade-setups/trade-setup-selection.js +72 -17
  209. package/dist/core/chart/analysis/trade-setups/trade-setup-selection.js.map +1 -1
  210. package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.d.ts +45 -0
  211. package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.d.ts.map +1 -1
  212. package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.js +121 -12
  213. package/dist/core/chart/analysis/trade-setups/trend-structure-trade-setup.js.map +1 -1
  214. package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.d.ts +92 -0
  215. package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.d.ts.map +1 -0
  216. package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.js +201 -0
  217. package/dist/core/chart/analysis/trade-setups/z-score-trade-setup.js.map +1 -0
  218. package/dist/core/chart/analysis/trend-line-drawings-tools.d.ts +14 -0
  219. package/dist/core/chart/analysis/trend-line-drawings-tools.d.ts.map +1 -1
  220. package/dist/core/chart/analysis/trend-line-drawings-tools.js +87 -16
  221. package/dist/core/chart/analysis/trend-line-drawings-tools.js.map +1 -1
  222. package/dist/core/chart/analysis/trend-line-menu-summary.d.ts +5 -0
  223. package/dist/core/chart/analysis/trend-line-menu-summary.d.ts.map +1 -1
  224. package/dist/core/chart/analysis/trend-line-menu-summary.js +8 -0
  225. package/dist/core/chart/analysis/trend-line-menu-summary.js.map +1 -1
  226. package/dist/core/chart/analysis/z-score-analyze-tools.d.ts +115 -0
  227. package/dist/core/chart/analysis/z-score-analyze-tools.d.ts.map +1 -0
  228. package/dist/core/chart/analysis/z-score-analyze-tools.js +242 -0
  229. package/dist/core/chart/analysis/z-score-analyze-tools.js.map +1 -0
  230. package/dist/core/chart/analysis/z-score-highlight.d.ts +29 -0
  231. package/dist/core/chart/analysis/z-score-highlight.d.ts.map +1 -0
  232. package/dist/core/chart/analysis/z-score-highlight.js +39 -0
  233. package/dist/core/chart/analysis/z-score-highlight.js.map +1 -0
  234. package/dist/core/chart/apply-chart-drawings.d.ts +4 -0
  235. package/dist/core/chart/apply-chart-drawings.d.ts.map +1 -1
  236. package/dist/core/chart/apply-chart-drawings.js +10 -2
  237. package/dist/core/chart/apply-chart-drawings.js.map +1 -1
  238. package/dist/core/chart/chart-pattern-session-store.d.ts.map +1 -1
  239. package/dist/core/chart/chart-pattern-session-store.js +1 -0
  240. package/dist/core/chart/chart-pattern-session-store.js.map +1 -1
  241. package/dist/core/chart/customization-catalog.d.ts +1 -0
  242. package/dist/core/chart/customization-catalog.d.ts.map +1 -1
  243. package/dist/core/chart/customization-catalog.js +107 -6
  244. package/dist/core/chart/customization-catalog.js.map +1 -1
  245. package/dist/core/chart/depth/average.d.ts +24 -0
  246. package/dist/core/chart/depth/average.d.ts.map +1 -0
  247. package/dist/core/chart/depth/average.js +104 -0
  248. package/dist/core/chart/depth/average.js.map +1 -0
  249. package/dist/core/chart/depth/binance-fetch.d.ts +7 -0
  250. package/dist/core/chart/depth/binance-fetch.d.ts.map +1 -0
  251. package/dist/core/chart/depth/binance-fetch.js +35 -0
  252. package/dist/core/chart/depth/binance-fetch.js.map +1 -0
  253. package/dist/core/chart/depth/coinbase-fetch.d.ts +7 -0
  254. package/dist/core/chart/depth/coinbase-fetch.d.ts.map +1 -0
  255. package/dist/core/chart/depth/coinbase-fetch.js +39 -0
  256. package/dist/core/chart/depth/coinbase-fetch.js.map +1 -0
  257. package/dist/core/chart/depth/index.d.ts +9 -0
  258. package/dist/core/chart/depth/index.d.ts.map +1 -0
  259. package/dist/core/chart/depth/index.js +9 -0
  260. package/dist/core/chart/depth/index.js.map +1 -0
  261. package/dist/core/chart/depth/levels.d.ts +23 -0
  262. package/dist/core/chart/depth/levels.d.ts.map +1 -0
  263. package/dist/core/chart/depth/levels.js +68 -0
  264. package/dist/core/chart/depth/levels.js.map +1 -0
  265. package/dist/core/chart/depth/normalize.d.ts +22 -0
  266. package/dist/core/chart/depth/normalize.d.ts.map +1 -0
  267. package/dist/core/chart/depth/normalize.js +130 -0
  268. package/dist/core/chart/depth/normalize.js.map +1 -0
  269. package/dist/core/chart/depth/sampler.d.ts +19 -0
  270. package/dist/core/chart/depth/sampler.d.ts.map +1 -0
  271. package/dist/core/chart/depth/sampler.js +146 -0
  272. package/dist/core/chart/depth/sampler.js.map +1 -0
  273. package/dist/core/chart/depth/schemas.d.ts +71 -0
  274. package/dist/core/chart/depth/schemas.d.ts.map +1 -0
  275. package/dist/core/chart/depth/schemas.js +52 -0
  276. package/dist/core/chart/depth/schemas.js.map +1 -0
  277. package/dist/core/chart/depth/symbol-from-fetch.d.ts +12 -0
  278. package/dist/core/chart/depth/symbol-from-fetch.d.ts.map +1 -0
  279. package/dist/core/chart/depth/symbol-from-fetch.js +125 -0
  280. package/dist/core/chart/depth/symbol-from-fetch.js.map +1 -0
  281. package/dist/core/chart/display-downsample.d.ts.map +1 -1
  282. package/dist/core/chart/display-downsample.js +4 -14
  283. package/dist/core/chart/display-downsample.js.map +1 -1
  284. package/dist/core/chart/fetch-agent-view.d.ts.map +1 -1
  285. package/dist/core/chart/fetch-agent-view.js +6 -1
  286. package/dist/core/chart/fetch-agent-view.js.map +1 -1
  287. package/dist/core/chart/fetch-metadata.d.ts +2 -1
  288. package/dist/core/chart/fetch-metadata.d.ts.map +1 -1
  289. package/dist/core/chart/fetch-metadata.js +29 -3
  290. package/dist/core/chart/fetch-metadata.js.map +1 -1
  291. package/dist/core/chart/index.d.ts +1 -1
  292. package/dist/core/chart/index.d.ts.map +1 -1
  293. package/dist/core/chart/index.js +1 -1
  294. package/dist/core/chart/index.js.map +1 -1
  295. package/dist/core/chart/liquidity-depth-profile-replay.d.ts +7 -0
  296. package/dist/core/chart/liquidity-depth-profile-replay.d.ts.map +1 -0
  297. package/dist/core/chart/liquidity-depth-profile-replay.js +28 -0
  298. package/dist/core/chart/liquidity-depth-profile-replay.js.map +1 -0
  299. package/dist/core/chart/live/binding-extract.d.ts.map +1 -1
  300. package/dist/core/chart/live/binding-extract.js +66 -1
  301. package/dist/core/chart/live/binding-extract.js.map +1 -1
  302. package/dist/core/chart/live/fetch-tick.d.ts.map +1 -1
  303. package/dist/core/chart/live/fetch-tick.js +45 -1
  304. package/dist/core/chart/live/fetch-tick.js.map +1 -1
  305. package/dist/core/chart/live/index.d.ts +1 -1
  306. package/dist/core/chart/live/index.d.ts.map +1 -1
  307. package/dist/core/chart/live/index.js +1 -1
  308. package/dist/core/chart/live/index.js.map +1 -1
  309. package/dist/core/chart/live/schemas.d.ts +2 -0
  310. package/dist/core/chart/live/schemas.d.ts.map +1 -1
  311. package/dist/core/chart/live/schemas.js +2 -0
  312. package/dist/core/chart/live/schemas.js.map +1 -1
  313. package/dist/core/chart/overlay-schemas.d.ts +760 -0
  314. package/dist/core/chart/overlay-schemas.d.ts.map +1 -1
  315. package/dist/core/chart/overlay-schemas.js +211 -0
  316. package/dist/core/chart/overlay-schemas.js.map +1 -1
  317. package/dist/core/chart/overlays.d.ts +3 -0
  318. package/dist/core/chart/overlays.d.ts.map +1 -1
  319. package/dist/core/chart/overlays.js +779 -18
  320. package/dist/core/chart/overlays.js.map +1 -1
  321. package/dist/core/chart/point-normalize.d.ts.map +1 -1
  322. package/dist/core/chart/point-normalize.js +1 -0
  323. package/dist/core/chart/point-normalize.js.map +1 -1
  324. package/dist/core/chart/prepare-from-rows.d.ts +1513 -0
  325. package/dist/core/chart/prepare-from-rows.d.ts.map +1 -1
  326. package/dist/core/chart/prepare-from-rows.js +17 -2
  327. package/dist/core/chart/prepare-from-rows.js.map +1 -1
  328. package/dist/core/chart/prepare.d.ts.map +1 -1
  329. package/dist/core/chart/prepare.js +10 -2
  330. package/dist/core/chart/prepare.js.map +1 -1
  331. package/dist/core/chart/schemas.d.ts +815 -2
  332. package/dist/core/chart/schemas.d.ts.map +1 -1
  333. package/dist/core/chart/schemas.js +6 -2
  334. package/dist/core/chart/schemas.js.map +1 -1
  335. package/dist/core/chart/trade-position-replay.d.ts +19 -0
  336. package/dist/core/chart/trade-position-replay.d.ts.map +1 -0
  337. package/dist/core/chart/trade-position-replay.js +48 -0
  338. package/dist/core/chart/trade-position-replay.js.map +1 -0
  339. package/dist/core/chart-patterns/drawing-spec.d.ts.map +1 -1
  340. package/dist/core/chart-patterns/drawing-spec.js +7 -0
  341. package/dist/core/chart-patterns/drawing-spec.js.map +1 -1
  342. package/dist/core/chart-patterns/measured-move.d.ts.map +1 -1
  343. package/dist/core/chart-patterns/measured-move.js +35 -3
  344. package/dist/core/chart-patterns/measured-move.js.map +1 -1
  345. package/dist/core/chart-patterns/patterns/flag-pennant-shared.d.ts +62 -0
  346. package/dist/core/chart-patterns/patterns/flag-pennant-shared.d.ts.map +1 -0
  347. package/dist/core/chart-patterns/patterns/flag-pennant-shared.js +141 -0
  348. package/dist/core/chart-patterns/patterns/flag-pennant-shared.js.map +1 -0
  349. package/dist/core/chart-patterns/patterns/flag.d.ts.map +1 -1
  350. package/dist/core/chart-patterns/patterns/flag.js +77 -51
  351. package/dist/core/chart-patterns/patterns/flag.js.map +1 -1
  352. package/dist/core/chart-patterns/patterns/pennant.d.ts.map +1 -1
  353. package/dist/core/chart-patterns/patterns/pennant.js +74 -53
  354. package/dist/core/chart-patterns/patterns/pennant.js.map +1 -1
  355. package/dist/core/chart-patterns/recommendation.d.ts +7 -0
  356. package/dist/core/chart-patterns/recommendation.d.ts.map +1 -1
  357. package/dist/core/chart-patterns/recommendation.js +17 -0
  358. package/dist/core/chart-patterns/recommendation.js.map +1 -1
  359. package/dist/core/chart-patterns/scan.d.ts.map +1 -1
  360. package/dist/core/chart-patterns/scan.js +8 -3
  361. package/dist/core/chart-patterns/scan.js.map +1 -1
  362. package/dist/core/chart-patterns/types.d.ts +13 -0
  363. package/dist/core/chart-patterns/types.d.ts.map +1 -1
  364. package/dist/core/coinbase/candles.d.ts +7 -0
  365. package/dist/core/coinbase/candles.d.ts.map +1 -0
  366. package/dist/core/coinbase/candles.js +52 -0
  367. package/dist/core/coinbase/candles.js.map +1 -0
  368. package/dist/core/coinbase/client.d.ts +24 -0
  369. package/dist/core/coinbase/client.d.ts.map +1 -0
  370. package/dist/core/coinbase/client.js +86 -0
  371. package/dist/core/coinbase/client.js.map +1 -0
  372. package/dist/core/coinbase/credentials.d.ts +11 -0
  373. package/dist/core/coinbase/credentials.d.ts.map +1 -0
  374. package/dist/core/coinbase/credentials.js +47 -0
  375. package/dist/core/coinbase/credentials.js.map +1 -0
  376. package/dist/core/coinbase/granularity.d.ts +20 -0
  377. package/dist/core/coinbase/granularity.d.ts.map +1 -0
  378. package/dist/core/coinbase/granularity.js +69 -0
  379. package/dist/core/coinbase/granularity.js.map +1 -0
  380. package/dist/core/coinbase/index.d.ts +8 -0
  381. package/dist/core/coinbase/index.d.ts.map +1 -0
  382. package/dist/core/coinbase/index.js +8 -0
  383. package/dist/core/coinbase/index.js.map +1 -0
  384. package/dist/core/coinbase/jwt.d.ts +13 -0
  385. package/dist/core/coinbase/jwt.d.ts.map +1 -0
  386. package/dist/core/coinbase/jwt.js +41 -0
  387. package/dist/core/coinbase/jwt.js.map +1 -0
  388. package/dist/core/coinbase/public-api.d.ts +38 -0
  389. package/dist/core/coinbase/public-api.d.ts.map +1 -0
  390. package/dist/core/coinbase/public-api.js +203 -0
  391. package/dist/core/coinbase/public-api.js.map +1 -0
  392. package/dist/core/coinbase/schemas.d.ts +133 -0
  393. package/dist/core/coinbase/schemas.d.ts.map +1 -0
  394. package/dist/core/coinbase/schemas.js +105 -0
  395. package/dist/core/coinbase/schemas.js.map +1 -0
  396. package/dist/core/coinmarketcap/schemas.d.ts +8 -8
  397. package/dist/core/ta/calculate.d.ts.map +1 -1
  398. package/dist/core/ta/calculate.js +39 -0
  399. package/dist/core/ta/calculate.js.map +1 -1
  400. package/dist/core/ta/catalog.d.ts.map +1 -1
  401. package/dist/core/ta/catalog.js +2 -1
  402. package/dist/core/ta/catalog.js.map +1 -1
  403. package/dist/mcp/agent-host-catalog.d.ts +1 -1
  404. package/dist/mcp/agent-host-catalog.d.ts.map +1 -1
  405. package/dist/mcp/agent-host-catalog.js +1 -0
  406. package/dist/mcp/agent-host-catalog.js.map +1 -1
  407. package/dist/mcp/chart.d.ts.map +1 -1
  408. package/dist/mcp/chart.js +97 -9
  409. package/dist/mcp/chart.js.map +1 -1
  410. package/dist/mcp/coinbase-public/register.d.ts +6 -0
  411. package/dist/mcp/coinbase-public/register.d.ts.map +1 -0
  412. package/dist/mcp/coinbase-public/register.js +57 -0
  413. package/dist/mcp/coinbase-public/register.js.map +1 -0
  414. package/dist/mcp/coinmarketcap-public/register.d.ts.map +1 -1
  415. package/dist/mcp/coinmarketcap-public/register.js +8 -3
  416. package/dist/mcp/coinmarketcap-public/register.js.map +1 -1
  417. package/dist/mcp/deferred/optional-endpoint-groups.d.ts +1 -1
  418. package/dist/mcp/deferred/optional-endpoint-groups.d.ts.map +1 -1
  419. package/dist/mcp/deferred/optional-endpoint-groups.js +8 -0
  420. package/dist/mcp/deferred/optional-endpoint-groups.js.map +1 -1
  421. package/dist/mcp/deferred/tool-group-map.d.ts.map +1 -1
  422. package/dist/mcp/deferred/tool-group-map.js +10 -0
  423. package/dist/mcp/deferred/tool-group-map.js.map +1 -1
  424. package/dist/mcp/ohlcv-session-wrapper.d.ts.map +1 -1
  425. package/dist/mcp/ohlcv-session-wrapper.js +22 -1
  426. package/dist/mcp/ohlcv-session-wrapper.js.map +1 -1
  427. package/dist/mcp/resources/chart-analysis.md +11 -0
  428. package/dist/mcp/resources/chart.md +19 -9
  429. package/dist/mcp/resources/coinbase-public.md +31 -0
  430. package/dist/mcp/server/index.js +3 -0
  431. package/dist/mcp/server/index.js.map +1 -1
  432. package/dist/mcp/trade-tools.d.ts.map +1 -1
  433. package/dist/mcp/trade-tools.js +6 -1
  434. package/dist/mcp/trade-tools.js.map +1 -1
  435. package/package.json +2 -2
  436. package/dist/core/agent/mcp-servers-catalog.d.ts +0 -15
  437. package/dist/core/agent/mcp-servers-catalog.d.ts.map +0 -1
  438. package/dist/core/agent/mcp-servers-catalog.js +0 -125
  439. package/dist/core/agent/mcp-servers-catalog.js.map +0 -1
  440. package/dist/core/agent/webhooks-catalog.d.ts +0 -10
  441. package/dist/core/agent/webhooks-catalog.d.ts.map +0 -1
  442. package/dist/core/agent/webhooks-catalog.js +0 -19
  443. package/dist/core/agent/webhooks-catalog.js.map +0 -1
  444. package/dist/mcp/resources/trade-defaults-skill.md +0 -69
  445. package/dist/mcp/ta/resources/indicators.md +0 -86
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flag-pennant-shared.js","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/flag-pennant-shared.ts"],"names":[],"mappings":"AAuBA,SAAS,UAAU,CAClB,IAAqB,EACrB,IAAoB;IAEpB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,IAAI,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC;IAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC;QAC7D,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,EAAE,CAAC;YACnD,IAAI,GAAG,KAAK,CAAC;YACb,OAAO,GAAG,CAAC,CAAC;QACb,CAAC;IACF,CAAC;IACD,OAAO,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACvC,IAAqB,EACrB,OASC;IAED,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;IACjD,MAAM,GAAG,GAAqB,EAAE,CAAC;IAEjC,KAAK,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;QACpF,KAAK,IAAI,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YACjF,KAAK,IAAI,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;gBACjF,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC;gBACxC,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;gBACtC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;oBAC7C,SAAS;gBACV,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBACpD,IAAI,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,UAAU,IAAI,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;oBAClF,SAAS;gBACV,CAAC;gBAED,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC1C,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACxC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACrB,iDAAiD;oBACjD,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC5B,SAAS;oBACV,CAAC;gBACF,CAAC;qBAAM,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;oBACnC,mCAAmC;oBACnC,SAAS;gBACV,CAAC;gBAED,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;gBAChE,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;gBAC9D,MAAM,QAAQ,GACb,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,GAAG,YAAY,CAAC;oBACjF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC1C,IAAI,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;oBACpC,SAAS;gBACV,CAAC;gBAED,qFAAqF;gBACrF,MAAM,SAAS,GACd,CAAC,OAAO,CAAC,OAAO;oBACf,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK;oBAC7C,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC;oBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC9C,IAAI,SAAS,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC;oBAC5C,SAAS;gBACV,CAAC;gBAED,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC3C,MAAM,UAAU,GACf,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;gBAClF,MAAM,SAAS,GACd,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACjE,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAAC;gBAChD,MAAM,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,QAAQ,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC;gBAC5E,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,SAAS;gBACV,CAAC;gBAED,MAAM,SAAS,GACd,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;gBAE9C,oEAAoE;gBACpE,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;gBAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACtC,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC;gBACjD,MAAM,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC1E,IAAI,YAAY,GAAG,KAAK,IAAI,QAAQ,GAAG,IAAI,EAAE,CAAC;oBAC7C,SAAS;gBACV,CAAC;gBACD,IAAI,YAAY,GAAG,YAAY,GAAG,GAAG,EAAE,CAAC;oBACvC,SAAS;gBACV,CAAC;gBACD,sEAAsE;gBACtE,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,EAAE,CAAC;oBACjC,SAAS;gBACV,CAAC;gBACD,IAAI,YAAY,GAAG,QAAQ,GAAG,IAAI,EAAE,CAAC;oBACpC,SAAS;gBACV,CAAC;gBAED,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO;oBACnC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAE;oBACtB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC;gBACzB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO;oBACjC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAE;oBACvB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;gBAExB,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;gBAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC7E,MAAM,KAAK,GACV,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC;oBACtF,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC;gBAE/B,GAAG,CAAC,IAAI,CAAC;oBACR,SAAS;oBACT,SAAS;oBACT,OAAO;oBACP,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,UAAU;oBACV,cAAc;oBACd,YAAY;oBACZ,SAAS;oBACT,UAAU;oBACV,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,OAAO;oBACP,KAAK;iBACL,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAyB;IAM3D,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC;IACpC,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,OAAO;QACN,MAAM,EAAE,EAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAC;QAC5E,MAAM,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAC;QACzE,MAAM,EAAE,EAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC;QACxE,MAAM,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC;KACrE,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"flag.d.ts","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/flag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,KAAK,eAAe,EAA6C,MAAM,YAAY,CAAC;AAsE5F,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,eAAe,EAAE,CAKnE"}
1
+ {"version":3,"file":"flag.d.ts","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/flag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAC,KAAK,eAAe,EAA0D,MAAM,YAAY,CAAC;AAsGzG,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,eAAe,EAAE,CAInE"}
@@ -1,64 +1,90 @@
1
1
  import { blendConfidence } from '../confidence.js';
2
- import { barSpanFromIndices, finalizeHit, makePoint } from './utils.js';
2
+ import { enumeratePoleFlagWindows, flagBoundaryPoints } from './flag-pennant-shared.js';
3
+ import { barSpanFromIndices, finalizeHit, makePoint, pickBestHit } from './utils.js';
3
4
  function detectFlag(ctx, bullish) {
4
5
  const n = ctx.bars.length;
5
6
  if (n < 25) {
6
7
  return null;
7
8
  }
8
- const poleLen = Math.min(10, Math.floor(n / 3));
9
- const flagLen = Math.min(12, Math.floor(n / 3));
10
- const poleStart = n - poleLen - flagLen;
11
- const flagStart = n - flagLen;
12
- if (poleStart < 1) {
13
- return null;
14
- }
15
- const poleBars = ctx.bars.slice(poleStart, flagStart);
16
- const flagBars = ctx.bars.slice(flagStart);
17
- if (poleBars.length < 4 || flagBars.length < 5) {
18
- return null;
19
- }
20
- const poleMove = (bullish ? poleBars.at(-1).close - poleBars[0].close : poleBars[0].close - poleBars.at(-1).close) /
21
- Math.max(Math.abs(poleBars[0].close), 1e-8);
22
- if (poleMove < 0.05) {
23
- return null;
24
- }
25
- const flagSlope = (flagBars.at(-1).close - flagBars[0].close) / Math.max(Math.abs(flagBars[0].close), 1e-8);
26
- if (bullish && flagSlope > 0.01) {
27
- return null;
9
+ const windows = enumeratePoleFlagWindows(ctx.bars, {
10
+ bullish,
11
+ minPoleMove: 0.035,
12
+ minFlagLen: 5,
13
+ maxFlagLen: 16,
14
+ minPoleLen: 4,
15
+ maxPoleLen: Math.min(40, Math.floor(n / 2)),
16
+ maxFlagEndLag: 2,
17
+ });
18
+ const candidates = [];
19
+ for (const w of windows) {
20
+ // Flag: counter-trend or flat consolidation (not a continuing impulse).
21
+ if (bullish) {
22
+ if (w.flagSlope > 0.008 || w.flagSlope < -0.1) {
23
+ continue;
24
+ }
25
+ }
26
+ else if (w.flagSlope < -0.008 || w.flagSlope > 0.1) {
27
+ continue;
28
+ }
29
+ // Prefer parallel / mild-contract channel over a hard pennant coil, but allow overlap.
30
+ const parallelish = w.lateRange >= w.earlyRange * 0.55;
31
+ if (!parallelish && w.contracts) {
32
+ // Strong coil is pennant territory; skip unless slope is clearly counter-trend.
33
+ const counter = bullish ? w.flagSlope < -0.005 : w.flagSlope > 0.005;
34
+ if (!counter) {
35
+ continue;
36
+ }
37
+ }
38
+ const bounds = flagBoundaryPoints(w.flagBars);
39
+ const confidence = blendConfidence(Math.min(1, w.poleMove / 0.07), 0.78, w.compact ? 0.82 : 0.55, w.flagEnd === n - 1 ? 0.9 : 0.72, parallelish ? 0.8 : 0.65);
40
+ candidates.push(finalizeHit({
41
+ id: bullish ? 'flag_bullish' : 'flag_bearish',
42
+ name: bullish ? 'Bull Flag' : 'Bear Flag',
43
+ category: 'continuation',
44
+ direction: bullish ? 'bullish' : 'bearish',
45
+ confidence,
46
+ completionState: 'forming',
47
+ barSpan: barSpanFromIndices(ctx.bars, w.poleStartBar.index, w.flagEnd),
48
+ points: [
49
+ makePoint(w.poleStartBar, w.poleStartPrice, 'P0', 'pole_start'),
50
+ makePoint(w.poleEndBar, w.poleEndPrice, 'P1', 'pole_end'),
51
+ makePoint(w.flagBars[0], w.flagBars[0].high, 'F0', 'flag'),
52
+ makePoint(w.flagBars.at(-1), w.flagBars.at(-1).close, 'F1', 'flag'),
53
+ bounds.upperA,
54
+ bounds.upperB,
55
+ bounds.lowerA,
56
+ bounds.lowerB,
57
+ ],
58
+ lines: [
59
+ {
60
+ pointA: makePoint(w.poleStartBar, w.poleStartPrice, 'P0'),
61
+ pointB: makePoint(w.poleEndBar, w.poleEndPrice, 'P1'),
62
+ label: 'Pole',
63
+ kind: 'flagpole',
64
+ },
65
+ {
66
+ pointA: bounds.upperA,
67
+ pointB: bounds.upperB,
68
+ label: 'Upper channel',
69
+ kind: 'boundary',
70
+ },
71
+ {
72
+ pointA: bounds.lowerA,
73
+ pointB: bounds.lowerB,
74
+ label: 'Lower channel',
75
+ kind: 'boundary',
76
+ },
77
+ ],
78
+ description: `${bullish ? 'Bull' : 'Bear'} flag with ${(w.poleMove * 100).toFixed(1)}% pole and counter-trend channel.`,
79
+ }, ctx.lastClose));
28
80
  }
29
- if (!bullish && flagSlope < -0.01) {
81
+ const best = pickBestHit(candidates);
82
+ if (!best || best.barSpan.toIndex < ctx.focusFromIndex) {
30
83
  return null;
31
84
  }
32
- const fromIndex = poleBars[0].index;
33
- const toIndex = flagBars.at(-1).index;
34
- const confidence = blendConfidence(Math.min(1, poleMove / 0.1), 0.72, 0.58);
35
- return finalizeHit({
36
- id: bullish ? 'flag_bullish' : 'flag_bearish',
37
- name: bullish ? 'Bull Flag' : 'Bear Flag',
38
- category: 'continuation',
39
- direction: bullish ? 'bullish' : 'bearish',
40
- confidence,
41
- completionState: 'forming',
42
- barSpan: barSpanFromIndices(ctx.bars, fromIndex, toIndex),
43
- points: [
44
- makePoint(poleBars[0], poleBars[0].close, 'P0', 'pole_start'),
45
- makePoint(poleBars.at(-1), poleBars.at(-1).close, 'P1', 'pole_end'),
46
- makePoint(flagBars[0], flagBars[0].high, 'F0', 'flag'),
47
- makePoint(flagBars.at(-1), flagBars.at(-1).close, 'F1', 'flag'),
48
- ],
49
- lines: [
50
- {
51
- pointA: makePoint(poleBars[0], poleBars[0].close, 'P0'),
52
- pointB: makePoint(poleBars.at(-1), poleBars.at(-1).close, 'P1'),
53
- label: 'Pole',
54
- kind: 'flagpole',
55
- },
56
- ],
57
- description: `${bullish ? 'Bull' : 'Bear'} flag with ${(poleMove * 100).toFixed(1)}% pole and counter-trend channel.`,
58
- }, ctx.lastClose);
85
+ return best;
59
86
  }
60
87
  export function detectFlags(ctx) {
61
- const hits = [detectFlag(ctx, true), detectFlag(ctx, false)].filter((h) => h != null && h.barSpan.toIndex >= ctx.focusFromIndex);
62
- return hits;
88
+ return [detectFlag(ctx, true), detectFlag(ctx, false)].filter((h) => h != null);
63
89
  }
64
90
  //# sourceMappingURL=flag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flag.js","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/flag.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flag.js","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/flag.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pennant.d.ts","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/pennant.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,KAAK,eAAe,EAA0D,MAAM,YAAY,CAAC;AAuEzG,wBAAgB,cAAc,CAAC,GAAG,EAAE,eAAe,GAAG,eAAe,EAAE,CAKtE"}
1
+ {"version":3,"file":"pennant.d.ts","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/pennant.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAC,KAAK,eAAe,EAA0D,MAAM,YAAY,CAAC;AAkGzG,wBAAgB,cAAc,CAAC,GAAG,EAAE,eAAe,GAAG,eAAe,EAAE,CAItE"}
@@ -1,66 +1,87 @@
1
1
  import { blendConfidence } from '../confidence.js';
2
- import { barSpanFromIndices, finalizeHit, makePoint } from './utils.js';
2
+ import { enumeratePoleFlagWindows, flagBoundaryPoints } from './flag-pennant-shared.js';
3
+ import { barSpanFromIndices, finalizeHit, makePoint, pickBestHit } from './utils.js';
3
4
  function detectPennant(ctx, bullish) {
4
5
  const n = ctx.bars.length;
5
6
  if (n < 20) {
6
7
  return null;
7
8
  }
8
- const poleLen = Math.min(8, Math.floor(n / 4));
9
- const flagLen = Math.min(10, Math.floor(n / 3));
10
- const poleStart = n - poleLen - flagLen;
11
- const flagStart = n - flagLen;
12
- if (poleStart < 1) {
13
- return null;
14
- }
15
- const poleBars = ctx.bars.slice(poleStart, flagStart);
16
- const flagBars = ctx.bars.slice(flagStart);
17
- if (poleBars.length < 3 || flagBars.length < 4) {
18
- return null;
19
- }
20
- const poleMove = (bullish ? poleBars.at(-1).close - poleBars[0].close : poleBars[0].close - poleBars.at(-1).close) /
21
- Math.max(Math.abs(poleBars[0].close), 1e-8);
22
- if (poleMove < 0.04) {
23
- return null;
9
+ const windows = enumeratePoleFlagWindows(ctx.bars, {
10
+ bullish,
11
+ minPoleMove: 0.03,
12
+ minFlagLen: 4,
13
+ maxFlagLen: 14,
14
+ minPoleLen: 3,
15
+ maxPoleLen: Math.min(36, Math.floor(n / 2)),
16
+ maxFlagEndLag: 2,
17
+ });
18
+ const candidates = [];
19
+ for (const w of windows) {
20
+ // Pennant: consolidating coil after the pole (range contracts).
21
+ if (!w.contracts) {
22
+ continue;
23
+ }
24
+ // Avoid with-trend drift inside the coil (continuation belongs to the pole).
25
+ if (bullish && w.flagSlope > 0.02) {
26
+ continue;
27
+ }
28
+ if (!bullish && w.flagSlope < -0.02) {
29
+ continue;
30
+ }
31
+ // Coil must actually tighten — reject mild noise on a grind.
32
+ if (w.lateRange >= w.earlyRange * 0.85) {
33
+ continue;
34
+ }
35
+ const bounds = flagBoundaryPoints(w.flagBars);
36
+ const confidence = blendConfidence(Math.min(1, w.poleMove / 0.06), 0.82, w.compact ? 0.85 : 0.55, w.flagEnd === n - 1 ? 0.9 : 0.72);
37
+ candidates.push(finalizeHit({
38
+ id: bullish ? 'pennant_bullish' : 'pennant_bearish',
39
+ name: bullish ? 'Bullish Pennant' : 'Bearish Pennant',
40
+ category: 'continuation',
41
+ direction: bullish ? 'bullish' : 'bearish',
42
+ confidence,
43
+ completionState: 'forming',
44
+ barSpan: barSpanFromIndices(ctx.bars, w.poleStartBar.index, w.flagEnd),
45
+ points: [
46
+ makePoint(w.poleStartBar, w.poleStartPrice, 'P0', 'pole_start'),
47
+ makePoint(w.poleEndBar, w.poleEndPrice, 'P1', 'pole_end'),
48
+ makePoint(w.flagBars[0], w.flagBars[0].high, 'F0', 'flag'),
49
+ makePoint(w.flagBars.at(-1), w.flagBars.at(-1).close, 'F1', 'flag'),
50
+ bounds.upperA,
51
+ bounds.upperB,
52
+ bounds.lowerA,
53
+ bounds.lowerB,
54
+ ],
55
+ lines: [
56
+ {
57
+ pointA: makePoint(w.poleStartBar, w.poleStartPrice, 'P0'),
58
+ pointB: makePoint(w.poleEndBar, w.poleEndPrice, 'P1'),
59
+ label: 'Pole',
60
+ kind: 'flagpole',
61
+ },
62
+ {
63
+ pointA: bounds.upperA,
64
+ pointB: bounds.upperB,
65
+ label: 'Upper boundary',
66
+ kind: 'boundary',
67
+ },
68
+ {
69
+ pointA: bounds.lowerA,
70
+ pointB: bounds.lowerB,
71
+ label: 'Lower boundary',
72
+ kind: 'boundary',
73
+ },
74
+ ],
75
+ description: `${bullish ? 'Bullish' : 'Bearish'} pennant with ${(w.poleMove * 100).toFixed(1)}% pole and contracting flag.`,
76
+ }, ctx.lastClose));
24
77
  }
25
- const flagHighs = flagBars.map(b => b.high);
26
- const flagLows = flagBars.map(b => b.low);
27
- const earlyRange = Math.max(...flagHighs.slice(0, 2)) - Math.min(...flagLows.slice(0, 2));
28
- const lateRange = Math.max(...flagHighs.slice(-2)) - Math.min(...flagLows.slice(-2));
29
- if (lateRange >= earlyRange * 0.95) {
78
+ const best = pickBestHit(candidates);
79
+ if (!best || best.barSpan.toIndex < ctx.focusFromIndex) {
30
80
  return null;
31
81
  }
32
- const fromIndex = poleBars[0].index;
33
- const toIndex = flagBars.at(-1).index;
34
- const poleA = poleBars[0];
35
- const poleB = poleBars.at(-1);
36
- const confidence = blendConfidence(Math.min(1, poleMove / 0.08), 0.7, 0.6);
37
- return finalizeHit({
38
- id: bullish ? 'pennant_bullish' : 'pennant_bearish',
39
- name: bullish ? 'Bullish Pennant' : 'Bearish Pennant',
40
- category: 'continuation',
41
- direction: bullish ? 'bullish' : 'bearish',
42
- confidence,
43
- completionState: 'forming',
44
- barSpan: barSpanFromIndices(ctx.bars, fromIndex, toIndex),
45
- points: [
46
- makePoint(poleA, poleA.close, 'P0', 'pole_start'),
47
- makePoint(poleB, poleB.close, 'P1', 'pole_end'),
48
- makePoint(flagBars[0], flagBars[0].high, 'F0', 'flag'),
49
- makePoint(flagBars.at(-1), flagBars.at(-1).close, 'F1', 'flag'),
50
- ],
51
- lines: [
52
- {
53
- pointA: makePoint(poleA, poleA.close, 'P0'),
54
- pointB: makePoint(poleB, poleB.close, 'P1'),
55
- label: 'Pole',
56
- kind: 'flagpole',
57
- },
58
- ],
59
- description: `${bullish ? 'Bullish' : 'Bearish'} pennant with ${(poleMove * 100).toFixed(1)}% pole and contracting flag.`,
60
- }, ctx.lastClose);
82
+ return best;
61
83
  }
62
84
  export function detectPennants(ctx) {
63
- const hits = [detectPennant(ctx, true), detectPennant(ctx, false)].filter((h) => h != null && h.barSpan.toIndex >= ctx.focusFromIndex);
64
- return hits;
85
+ return [detectPennant(ctx, true), detectPennant(ctx, false)].filter((h) => h != null);
65
86
  }
66
87
  //# sourceMappingURL=pennant.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pennant.js","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/pennant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pennant.js","sourceRoot":"","sources":["../../../../src/core/chart-patterns/patterns/pennant.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,13 @@
1
+ import type { EntryProximityMode } from '../chart/analysis/trade-setups/pattern-limit-entry.js';
1
2
  import type { ChartPatternAnalysis, EnrichedChartPatternHit } from './types.js';
2
3
  export declare function buildChartPatternAnalysis(hits: EnrichedChartPatternHit[], barCount: number, patternsScanned: number, lastClose: number, options?: {
3
4
  minConfidence?: number;
4
5
  tradePatternNumber?: number;
6
+ entryProximityPct?: number;
7
+ entryProximityMode?: EntryProximityMode;
8
+ entryProximityAtrPeriod?: number;
9
+ invalidationOffsetPct?: number;
10
+ invalidationOffsetMode?: EntryProximityMode;
11
+ bars?: Record<string, unknown>[];
5
12
  }): ChartPatternAnalysis;
6
13
  //# sourceMappingURL=recommendation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"recommendation.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/recommendation.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACX,oBAAoB,EAEpB,uBAAuB,EAEvB,MAAM,YAAY,CAAC;AAgBpB,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,uBAAuB,EAAE,EAC/B,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAAC,GAC7D,oBAAoB,CA4FtB"}
1
+ {"version":3,"file":"recommendation.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/recommendation.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,uDAAuD,CAAC;AAC9F,OAAO,KAAK,EACX,oBAAoB,EAEpB,uBAAuB,EAEvB,MAAM,YAAY,CAAC;AAgBpB,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,uBAAuB,EAAE,EAC/B,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;IACT,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,kBAAkB,CAAC;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACjC,GACC,oBAAoB,CA6GtB"}
@@ -52,6 +52,7 @@ export function buildChartPatternAnalysis(hits, barCount, patternsScanned, lastC
52
52
  }
53
53
  return enrichPatternMenuEntry(hit, {
54
54
  index,
55
+ patternNumber: index + 1,
55
56
  id: hit.id,
56
57
  name: hit.name,
57
58
  confidence: hit.confidence,
@@ -73,6 +74,22 @@ export function buildChartPatternAnalysis(hits, barCount, patternsScanned, lastC
73
74
  return primary;
74
75
  })(), lastClose, options?.tradePatternNumber ?? primaryMenuNumber, {
75
76
  minConfidence: options?.minConfidence,
77
+ ...(options?.entryProximityPct != null
78
+ ? { entryProximityPct: options.entryProximityPct }
79
+ : {}),
80
+ ...(options?.entryProximityMode != null
81
+ ? { entryProximityMode: options.entryProximityMode }
82
+ : {}),
83
+ ...(options?.entryProximityAtrPeriod != null
84
+ ? { entryProximityAtrPeriod: options.entryProximityAtrPeriod }
85
+ : {}),
86
+ ...(options?.invalidationOffsetPct != null
87
+ ? { invalidationOffsetPct: options.invalidationOffsetPct }
88
+ : {}),
89
+ ...(options?.invalidationOffsetMode != null
90
+ ? { invalidationOffsetMode: options.invalidationOffsetMode }
91
+ : {}),
92
+ ...(options?.bars != null ? { bars: options.bars } : {}),
76
93
  }));
77
94
  return {
78
95
  summary,
@@ -1 +1 @@
1
- {"version":3,"file":"recommendation.js","sourceRoot":"","sources":["../../../src/core/chart-patterns/recommendation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recommendation.js","sourceRoot":"","sources":["../../../src/core/chart-patterns/recommendation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/scan.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAC,oBAAoB,EAAE,eAAe,EAAgC,wBAAwB,EAAC,MAAM,YAAY,CAAC;AA2D9H,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAClC,OAAO,GAAE,wBAA6B,GACpC,eAAe,EAAE,CA2DnB;AAED,wBAAgB,4BAA4B,CAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAClC,OAAO,GAAE,wBAA6B,GACpC,oBAAoB,CAetB;AAED,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAE,qBAAqB,EAAC,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/scan.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAC,oBAAoB,EAAE,eAAe,EAAgC,wBAAwB,EAAC,MAAM,YAAY,CAAC;AA2D9H,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAClC,OAAO,GAAE,wBAA6B,GACpC,eAAe,EAAE,CA4DnB;AAED,wBAAgB,4BAA4B,CAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAClC,OAAO,GAAE,wBAA6B,GACpC,oBAAoB,CAuBtB;AAED,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAE,qBAAqB,EAAC,MAAM,cAAc,CAAC"}
@@ -60,8 +60,7 @@ export function scanChartPatterns(rawBars, options = {}) {
60
60
  if (!bars.length) {
61
61
  return [];
62
62
  }
63
- const patternIds = filterChartPatternIds(options.patternIds) ??
64
- CHART_PATTERN_CATALOG.map(e => e.id);
63
+ const patternIds = filterChartPatternIds((options.patternIds ?? options.patterns)) ?? CHART_PATTERN_CATALOG.map(e => e.id);
65
64
  const swingLookback = Math.max(2, Math.min(options.swingLookback ?? 3, Math.floor(bars.length / 10)));
66
65
  const swings = detectOrderedSwings(rawBars, swingLookback);
67
66
  const ctx = {
@@ -112,12 +111,18 @@ export function scanChartPatterns(rawBars, options = {}) {
112
111
  }
113
112
  export function analyzeChartPatternsFromBars(rawBars, options = {}) {
114
113
  const bars = normalizeBarsFromRows(rawBars);
115
- const patternIds = filterChartPatternIds(options.patternIds);
114
+ const patternIds = filterChartPatternIds((options.patternIds ?? options.patterns));
116
115
  const hits = scanChartPatterns(rawBars, options);
117
116
  const enriched = enrichChartPatternHits(hits, bars, rawBars);
118
117
  return buildChartPatternAnalysis(enriched, bars.length, patternIds?.length ?? CHART_PATTERN_CATALOG.length, lastCloseFromBars(bars), {
119
118
  minConfidence: options.minConfidence,
120
119
  tradePatternNumber: options.tradePatternNumber,
120
+ entryProximityPct: options.entryProximityPct,
121
+ entryProximityMode: options.entryProximityMode,
122
+ entryProximityAtrPeriod: options.entryProximityAtrPeriod,
123
+ invalidationOffsetPct: options.invalidationOffsetPct,
124
+ invalidationOffsetMode: options.invalidationOffsetMode,
125
+ bars: options.bars ?? rawBars,
121
126
  });
122
127
  }
123
128
  export { maxChartPatternMinBars, chartPatternsScannedCount, filterChartPatternIds } from './catalog.js';
@@ -1 +1 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/core/chart-patterns/scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/core/chart-patterns/scan.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { ChartTime } from '../chart/schemas.js';
2
+ import type { EntryProximityMode } from '../chart/analysis/trade-setups/pattern-limit-entry.js';
2
3
  export type ChartPatternDirection = 'bullish' | 'bearish' | 'neutral';
3
4
  export type ChartPatternClassification = 'bullish' | 'moderately_bullish' | 'neutral' | 'moderately_bearish' | 'bearish';
4
5
  export type ChartPatternCategory = 'reversal' | 'continuation';
@@ -116,6 +117,8 @@ export type PatternDrawingSpec = {
116
117
  };
117
118
  export type PatternMenuEntry = {
118
119
  index: number;
120
+ /** 1-based menu number for apply_chart_pattern_drawings / Mini App overlays. */
121
+ patternNumber: number;
119
122
  id: ChartPatternId;
120
123
  name: string;
121
124
  confidence: number;
@@ -194,6 +197,8 @@ export type ChartPatternCatalogEntry = {
194
197
  };
195
198
  export type ScanChartPatternsOptions = {
196
199
  patternIds?: ChartPatternId[];
200
+ /** Alias for `patternIds` (accepted by scan helpers and tests). */
201
+ patterns?: ChartPatternId[] | string[];
197
202
  focusWindow?: 'last' | number;
198
203
  minConfidence?: number;
199
204
  swingLookback?: number;
@@ -209,6 +214,14 @@ export type ScanChartPatternsOptions = {
209
214
  retestAtrMultiplier?: number;
210
215
  /** Re-bind trade setup to patternMenu #N from persisted tradeSetupSelection. */
211
216
  tradePatternNumber?: number;
217
+ /** Desk overrides (from trade-desk.yaml / analyze_* input). */
218
+ entryProximityPct?: number;
219
+ entryProximityMode?: EntryProximityMode;
220
+ entryProximityAtrPeriod?: number;
221
+ invalidationOffsetPct?: number;
222
+ invalidationOffsetMode?: EntryProximityMode;
223
+ /** Raw OHLCV rows for ATR-based desk offsets on the trade setup. */
224
+ bars?: Record<string, unknown>[];
212
225
  };
213
226
  export type TradeSetupSide = 'long' | 'short' | 'neutral';
214
227
  export type { ChartPatternTradeSetup } from '../chart/analysis/trade-setups/chart-pattern-trade-setup.js';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/chart-patterns/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { CoinbaseNormalizedCandle } from './schemas.js';
2
+ /** Normalize one Coinbase Advanced Trade candle `{ start, open, high, low, close, volume }`. */
3
+ export declare function normalizeCoinbaseCandle(raw: unknown): CoinbaseNormalizedCandle | null;
4
+ export declare function normalizeCoinbaseCandles(raw: unknown): CoinbaseNormalizedCandle[];
5
+ /** Keep newest N bars after ascending sort. */
6
+ export declare function trimCoinbaseCandles(candles: CoinbaseNormalizedCandle[], limit: number): CoinbaseNormalizedCandle[];
7
+ //# sourceMappingURL=candles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"candles.d.ts","sourceRoot":"","sources":["../../../src/core/coinbase/candles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,cAAc,CAAC;AAE3D,gGAAgG;AAChG,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,GAAG,IAAI,CAyBrF;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,EAAE,CAejF;AAED,+CAA+C;AAC/C,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,wBAAwB,EAAE,EACnC,KAAK,EAAE,MAAM,GACX,wBAAwB,EAAE,CAK5B"}