@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
@@ -21,6 +21,51 @@ export declare const AnalyzeTrendStructureInputSchema: z.ZodPreprocess<z.ZodObje
21
21
  entryProximityAtrPeriod: z.ZodOptional<z.ZodNumber>;
22
22
  entryOffsetPct: z.ZodOptional<z.ZodNumber>;
23
23
  invalidationOffsetPct: z.ZodOptional<z.ZodNumber>;
24
+ invalidationOffsetMode: z.ZodOptional<z.ZodEnum<{
25
+ price: "price";
26
+ atr: "atr";
27
+ }>>;
28
+ fibKeyLevelMinConfidence: z.ZodOptional<z.ZodNumber>;
29
+ donchianPeriod: z.ZodOptional<z.ZodNumber>;
30
+ donchianEntryMode: z.ZodOptional<z.ZodEnum<{
31
+ retest: "retest";
32
+ immediate: "immediate";
33
+ }>>;
34
+ donchianTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
35
+ supertrendPeriod: z.ZodOptional<z.ZodNumber>;
36
+ supertrendMultiplier: z.ZodOptional<z.ZodNumber>;
37
+ supertrendEntryMode: z.ZodOptional<z.ZodEnum<{
38
+ retest: "retest";
39
+ flip: "flip";
40
+ }>>;
41
+ supertrendTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
42
+ ichimokuConversionPeriod: z.ZodOptional<z.ZodNumber>;
43
+ ichimokuBasePeriod: z.ZodOptional<z.ZodNumber>;
44
+ ichimokuSpanPeriod: z.ZodOptional<z.ZodNumber>;
45
+ ichimokuDisplacement: z.ZodOptional<z.ZodNumber>;
46
+ ichimokuTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
47
+ zScorePeriod: z.ZodOptional<z.ZodNumber>;
48
+ zScoreEntry: z.ZodOptional<z.ZodNumber>;
49
+ zScoreExit: z.ZodOptional<z.ZodNumber>;
50
+ zScoreStopAtrMultiple: z.ZodOptional<z.ZodNumber>;
51
+ zScoreAtrFilter: z.ZodOptional<z.ZodEnum<{
52
+ none: "none";
53
+ contracting: "contracting";
54
+ }>>;
55
+ divergenceOscillator: z.ZodOptional<z.ZodEnum<{
56
+ rsi: "rsi";
57
+ stochasticrsi: "stochasticrsi";
58
+ both: "both";
59
+ }>>;
60
+ divergenceMaxLag: z.ZodOptional<z.ZodNumber>;
61
+ depthExchangeId: z.ZodOptional<z.ZodEnum<{
62
+ binance: "binance";
63
+ coinbase: "coinbase";
64
+ }>>;
65
+ depthSampleIntervalSec: z.ZodOptional<z.ZodNumber>;
66
+ depthAverageWindowSec: z.ZodOptional<z.ZodNumber>;
67
+ depthLimit: z.ZodOptional<z.ZodNumber>;
68
+ depthLevelCount: z.ZodOptional<z.ZodNumber>;
24
69
  tradeTrendLineNumber: z.ZodOptional<z.ZodNumber>;
25
70
  }, z.core.$strict>>;
26
71
  export declare const AnalyzeTrendStructureOutputSchema: z.ZodObject<{
@@ -64,6 +109,7 @@ export declare const AnalyzeTrendStructureOutputSchema: z.ZodObject<{
64
109
  resistance: "resistance";
65
110
  }>;
66
111
  score: z.ZodNumber;
112
+ confidence: z.ZodNumber;
67
113
  touchCount: z.ZodNumber;
68
114
  isPrimary: z.ZodBoolean;
69
115
  barSpan: z.ZodObject<{
@@ -187,9 +233,53 @@ export declare const AnalyzeKeyLevelsInputSchema: z.ZodPreprocess<z.ZodObject<{
187
233
  entryProximityAtrPeriod: z.ZodOptional<z.ZodNumber>;
188
234
  entryOffsetPct: z.ZodOptional<z.ZodNumber>;
189
235
  invalidationOffsetPct: z.ZodOptional<z.ZodNumber>;
236
+ invalidationOffsetMode: z.ZodOptional<z.ZodEnum<{
237
+ price: "price";
238
+ atr: "atr";
239
+ }>>;
240
+ fibKeyLevelMinConfidence: z.ZodOptional<z.ZodNumber>;
241
+ donchianPeriod: z.ZodOptional<z.ZodNumber>;
242
+ donchianEntryMode: z.ZodOptional<z.ZodEnum<{
243
+ retest: "retest";
244
+ immediate: "immediate";
245
+ }>>;
246
+ donchianTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
247
+ supertrendPeriod: z.ZodOptional<z.ZodNumber>;
248
+ supertrendMultiplier: z.ZodOptional<z.ZodNumber>;
249
+ supertrendEntryMode: z.ZodOptional<z.ZodEnum<{
250
+ retest: "retest";
251
+ flip: "flip";
252
+ }>>;
253
+ supertrendTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
254
+ ichimokuConversionPeriod: z.ZodOptional<z.ZodNumber>;
255
+ ichimokuBasePeriod: z.ZodOptional<z.ZodNumber>;
256
+ ichimokuSpanPeriod: z.ZodOptional<z.ZodNumber>;
257
+ ichimokuDisplacement: z.ZodOptional<z.ZodNumber>;
258
+ ichimokuTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
259
+ zScorePeriod: z.ZodOptional<z.ZodNumber>;
260
+ zScoreEntry: z.ZodOptional<z.ZodNumber>;
261
+ zScoreExit: z.ZodOptional<z.ZodNumber>;
262
+ zScoreStopAtrMultiple: z.ZodOptional<z.ZodNumber>;
263
+ zScoreAtrFilter: z.ZodOptional<z.ZodEnum<{
264
+ none: "none";
265
+ contracting: "contracting";
266
+ }>>;
267
+ divergenceOscillator: z.ZodOptional<z.ZodEnum<{
268
+ rsi: "rsi";
269
+ stochasticrsi: "stochasticrsi";
270
+ both: "both";
271
+ }>>;
272
+ divergenceMaxLag: z.ZodOptional<z.ZodNumber>;
273
+ depthExchangeId: z.ZodOptional<z.ZodEnum<{
274
+ binance: "binance";
275
+ coinbase: "coinbase";
276
+ }>>;
277
+ depthSampleIntervalSec: z.ZodOptional<z.ZodNumber>;
278
+ depthAverageWindowSec: z.ZodOptional<z.ZodNumber>;
279
+ depthLimit: z.ZodOptional<z.ZodNumber>;
280
+ depthLevelCount: z.ZodOptional<z.ZodNumber>;
190
281
  maxLevels: z.ZodOptional<z.ZodNumber>;
191
282
  tradeLevelNumber: z.ZodOptional<z.ZodNumber>;
192
- tradeBrokenLevelNumber: z.ZodOptional<z.ZodNumber>;
193
283
  }, z.core.$strict>>;
194
284
  export declare const AnalyzeKeyLevelsOutputSchema: z.ZodObject<{
195
285
  analysis: z.ZodObject<{
@@ -320,6 +410,51 @@ export declare const AnalyzeKeyLevelFibonacciInputSchema: z.ZodPreprocess<z.ZodO
320
410
  entryProximityAtrPeriod: z.ZodOptional<z.ZodNumber>;
321
411
  entryOffsetPct: z.ZodOptional<z.ZodNumber>;
322
412
  invalidationOffsetPct: z.ZodOptional<z.ZodNumber>;
413
+ invalidationOffsetMode: z.ZodOptional<z.ZodEnum<{
414
+ price: "price";
415
+ atr: "atr";
416
+ }>>;
417
+ fibKeyLevelMinConfidence: z.ZodOptional<z.ZodNumber>;
418
+ donchianPeriod: z.ZodOptional<z.ZodNumber>;
419
+ donchianEntryMode: z.ZodOptional<z.ZodEnum<{
420
+ retest: "retest";
421
+ immediate: "immediate";
422
+ }>>;
423
+ donchianTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
424
+ supertrendPeriod: z.ZodOptional<z.ZodNumber>;
425
+ supertrendMultiplier: z.ZodOptional<z.ZodNumber>;
426
+ supertrendEntryMode: z.ZodOptional<z.ZodEnum<{
427
+ retest: "retest";
428
+ flip: "flip";
429
+ }>>;
430
+ supertrendTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
431
+ ichimokuConversionPeriod: z.ZodOptional<z.ZodNumber>;
432
+ ichimokuBasePeriod: z.ZodOptional<z.ZodNumber>;
433
+ ichimokuSpanPeriod: z.ZodOptional<z.ZodNumber>;
434
+ ichimokuDisplacement: z.ZodOptional<z.ZodNumber>;
435
+ ichimokuTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
436
+ zScorePeriod: z.ZodOptional<z.ZodNumber>;
437
+ zScoreEntry: z.ZodOptional<z.ZodNumber>;
438
+ zScoreExit: z.ZodOptional<z.ZodNumber>;
439
+ zScoreStopAtrMultiple: z.ZodOptional<z.ZodNumber>;
440
+ zScoreAtrFilter: z.ZodOptional<z.ZodEnum<{
441
+ none: "none";
442
+ contracting: "contracting";
443
+ }>>;
444
+ divergenceOscillator: z.ZodOptional<z.ZodEnum<{
445
+ rsi: "rsi";
446
+ stochasticrsi: "stochasticrsi";
447
+ both: "both";
448
+ }>>;
449
+ divergenceMaxLag: z.ZodOptional<z.ZodNumber>;
450
+ depthExchangeId: z.ZodOptional<z.ZodEnum<{
451
+ binance: "binance";
452
+ coinbase: "coinbase";
453
+ }>>;
454
+ depthSampleIntervalSec: z.ZodOptional<z.ZodNumber>;
455
+ depthAverageWindowSec: z.ZodOptional<z.ZodNumber>;
456
+ depthLimit: z.ZodOptional<z.ZodNumber>;
457
+ depthLevelCount: z.ZodOptional<z.ZodNumber>;
323
458
  maxLevels: z.ZodOptional<z.ZodNumber>;
324
459
  fibPairNumber: z.ZodOptional<z.ZodNumber>;
325
460
  tradeFibSide: z.ZodOptional<z.ZodEnum<{
@@ -355,10 +490,8 @@ export declare const AnalyzeKeyLevelFibonacciOutputSchema: z.ZodObject<{
355
490
  fibPairs: z.ZodArray<z.ZodObject<{
356
491
  pairNumber: z.ZodNumber;
357
492
  pairKind: z.ZodEnum<{
358
- primary_range: "primary_range";
359
- concentric: "concentric";
493
+ strongest_bracket: "strongest_bracket";
360
494
  }>;
361
- concentricRank: z.ZodOptional<z.ZodNumber>;
362
495
  lowLevelNumber: z.ZodNumber;
363
496
  highLevelNumber: z.ZodNumber;
364
497
  low: z.ZodNumber;
@@ -369,17 +502,13 @@ export declare const AnalyzeKeyLevelFibonacciOutputSchema: z.ZodObject<{
369
502
  down: "down";
370
503
  }>;
371
504
  retracement618: z.ZodNumber;
372
- extension1618Up: z.ZodNumber;
373
- extension1618Down: z.ZodNumber;
374
505
  isPrimaryTradePair: z.ZodOptional<z.ZodBoolean>;
375
506
  }, z.core.$strict>>;
376
507
  primaryFibPair: z.ZodNullable<z.ZodObject<{
377
508
  pairNumber: z.ZodNumber;
378
509
  pairKind: z.ZodEnum<{
379
- primary_range: "primary_range";
380
- concentric: "concentric";
510
+ strongest_bracket: "strongest_bracket";
381
511
  }>;
382
- concentricRank: z.ZodOptional<z.ZodNumber>;
383
512
  lowLevelNumber: z.ZodNumber;
384
513
  highLevelNumber: z.ZodNumber;
385
514
  low: z.ZodNumber;
@@ -390,8 +519,6 @@ export declare const AnalyzeKeyLevelFibonacciOutputSchema: z.ZodObject<{
390
519
  down: "down";
391
520
  }>;
392
521
  retracement618: z.ZodNumber;
393
- extension1618Up: z.ZodNumber;
394
- extension1618Down: z.ZodNumber;
395
522
  isPrimaryTradePair: z.ZodOptional<z.ZodBoolean>;
396
523
  }, z.core.$strict>>;
397
524
  keyLevelFibTradeSetup: z.ZodNullable<z.ZodObject<{}, z.core.$catchall<z.ZodUnknown>>>;
@@ -481,6 +608,51 @@ export declare const AnalyzeMomentumInputSchema: z.ZodPreprocess<z.ZodObject<{
481
608
  entryProximityAtrPeriod: z.ZodOptional<z.ZodNumber>;
482
609
  entryOffsetPct: z.ZodOptional<z.ZodNumber>;
483
610
  invalidationOffsetPct: z.ZodOptional<z.ZodNumber>;
611
+ invalidationOffsetMode: z.ZodOptional<z.ZodEnum<{
612
+ price: "price";
613
+ atr: "atr";
614
+ }>>;
615
+ fibKeyLevelMinConfidence: z.ZodOptional<z.ZodNumber>;
616
+ donchianPeriod: z.ZodOptional<z.ZodNumber>;
617
+ donchianEntryMode: z.ZodOptional<z.ZodEnum<{
618
+ retest: "retest";
619
+ immediate: "immediate";
620
+ }>>;
621
+ donchianTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
622
+ supertrendPeriod: z.ZodOptional<z.ZodNumber>;
623
+ supertrendMultiplier: z.ZodOptional<z.ZodNumber>;
624
+ supertrendEntryMode: z.ZodOptional<z.ZodEnum<{
625
+ retest: "retest";
626
+ flip: "flip";
627
+ }>>;
628
+ supertrendTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
629
+ ichimokuConversionPeriod: z.ZodOptional<z.ZodNumber>;
630
+ ichimokuBasePeriod: z.ZodOptional<z.ZodNumber>;
631
+ ichimokuSpanPeriod: z.ZodOptional<z.ZodNumber>;
632
+ ichimokuDisplacement: z.ZodOptional<z.ZodNumber>;
633
+ ichimokuTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
634
+ zScorePeriod: z.ZodOptional<z.ZodNumber>;
635
+ zScoreEntry: z.ZodOptional<z.ZodNumber>;
636
+ zScoreExit: z.ZodOptional<z.ZodNumber>;
637
+ zScoreStopAtrMultiple: z.ZodOptional<z.ZodNumber>;
638
+ zScoreAtrFilter: z.ZodOptional<z.ZodEnum<{
639
+ none: "none";
640
+ contracting: "contracting";
641
+ }>>;
642
+ divergenceOscillator: z.ZodOptional<z.ZodEnum<{
643
+ rsi: "rsi";
644
+ stochasticrsi: "stochasticrsi";
645
+ both: "both";
646
+ }>>;
647
+ divergenceMaxLag: z.ZodOptional<z.ZodNumber>;
648
+ depthExchangeId: z.ZodOptional<z.ZodEnum<{
649
+ binance: "binance";
650
+ coinbase: "coinbase";
651
+ }>>;
652
+ depthSampleIntervalSec: z.ZodOptional<z.ZodNumber>;
653
+ depthAverageWindowSec: z.ZodOptional<z.ZodNumber>;
654
+ depthLimit: z.ZodOptional<z.ZodNumber>;
655
+ depthLevelCount: z.ZodOptional<z.ZodNumber>;
484
656
  rsiPeriod: z.ZodOptional<z.ZodNumber>;
485
657
  }, z.core.$strict>>;
486
658
  export declare const AnalyzeMomentumOutputSchema: z.ZodObject<{
@@ -620,6 +792,51 @@ export declare const AnalyzeRangeVolatilityInputSchema: z.ZodPreprocess<z.ZodObj
620
792
  entryProximityAtrPeriod: z.ZodOptional<z.ZodNumber>;
621
793
  entryOffsetPct: z.ZodOptional<z.ZodNumber>;
622
794
  invalidationOffsetPct: z.ZodOptional<z.ZodNumber>;
795
+ invalidationOffsetMode: z.ZodOptional<z.ZodEnum<{
796
+ price: "price";
797
+ atr: "atr";
798
+ }>>;
799
+ fibKeyLevelMinConfidence: z.ZodOptional<z.ZodNumber>;
800
+ donchianPeriod: z.ZodOptional<z.ZodNumber>;
801
+ donchianEntryMode: z.ZodOptional<z.ZodEnum<{
802
+ retest: "retest";
803
+ immediate: "immediate";
804
+ }>>;
805
+ donchianTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
806
+ supertrendPeriod: z.ZodOptional<z.ZodNumber>;
807
+ supertrendMultiplier: z.ZodOptional<z.ZodNumber>;
808
+ supertrendEntryMode: z.ZodOptional<z.ZodEnum<{
809
+ retest: "retest";
810
+ flip: "flip";
811
+ }>>;
812
+ supertrendTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
813
+ ichimokuConversionPeriod: z.ZodOptional<z.ZodNumber>;
814
+ ichimokuBasePeriod: z.ZodOptional<z.ZodNumber>;
815
+ ichimokuSpanPeriod: z.ZodOptional<z.ZodNumber>;
816
+ ichimokuDisplacement: z.ZodOptional<z.ZodNumber>;
817
+ ichimokuTargetAtrMultiple: z.ZodOptional<z.ZodNumber>;
818
+ zScorePeriod: z.ZodOptional<z.ZodNumber>;
819
+ zScoreEntry: z.ZodOptional<z.ZodNumber>;
820
+ zScoreExit: z.ZodOptional<z.ZodNumber>;
821
+ zScoreStopAtrMultiple: z.ZodOptional<z.ZodNumber>;
822
+ zScoreAtrFilter: z.ZodOptional<z.ZodEnum<{
823
+ none: "none";
824
+ contracting: "contracting";
825
+ }>>;
826
+ divergenceOscillator: z.ZodOptional<z.ZodEnum<{
827
+ rsi: "rsi";
828
+ stochasticrsi: "stochasticrsi";
829
+ both: "both";
830
+ }>>;
831
+ divergenceMaxLag: z.ZodOptional<z.ZodNumber>;
832
+ depthExchangeId: z.ZodOptional<z.ZodEnum<{
833
+ binance: "binance";
834
+ coinbase: "coinbase";
835
+ }>>;
836
+ depthSampleIntervalSec: z.ZodOptional<z.ZodNumber>;
837
+ depthAverageWindowSec: z.ZodOptional<z.ZodNumber>;
838
+ depthLimit: z.ZodOptional<z.ZodNumber>;
839
+ depthLevelCount: z.ZodOptional<z.ZodNumber>;
623
840
  atrPeriod: z.ZodOptional<z.ZodNumber>;
624
841
  }, z.core.$strict>>;
625
842
  export declare const AnalyzeRangeVolatilityOutputSchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"analyze-tools.d.ts","sourceRoot":"","sources":["../../../../src/core/chart/analysis/analyze-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAoD/C,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;mBAM5C,CAAC;AAmEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiCpC,CAAC;AAEX,wBAAsB,qBAAqB,CAC1C,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC,CAAC,CA8JvE;AAqCD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;mBAQvC,CAAC;AACF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA+B/B,CAAC;AAEX,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAQ/C,CAAC;AACF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAevC,CAAC;AAEX,wBAAsB,gBAAgB,CACrC,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAqGlE;AAED,wBAAsB,wBAAwB,CAC7C,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC,CAAC,CA8F1E;AAED,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;mBAKtC,CAAC;AACF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAyC9B,CAAC;AAWX,wBAAsB,eAAe,CACpC,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAwGjE;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;mBAK7C,CAAC;AACF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwBrC,CAAC;AAcX,wBAAsB,sBAAsB,CAC3C,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC,CAAC,CAyIxE"}
1
+ {"version":3,"file":"analyze-tools.d.ts","sourceRoot":"","sources":["../../../../src/core/chart/analysis/analyze-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAuD/C,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAM5C,CAAC;AAoEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiCpC,CAAC;AAEX,wBAAsB,qBAAqB,CAC1C,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC,CAAC,CAiKvE;AAkCD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAOvC,CAAC;AACF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA+B/B,CAAC;AAEX,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAQ/C,CAAC;AACF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAevC,CAAC;AAEX,wBAAsB,gBAAgB,CACrC,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAiGlE;AAED,wBAAsB,wBAAwB,CAC7C,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC,CAAC,CA6G1E;AAED,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAKtC,CAAC;AACF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAyC9B,CAAC;AAWX,wBAAsB,eAAe,CACpC,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAwGjE;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAK7C,CAAC;AACF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwBrC,CAAC;AAcX,wBAAsB,sBAAsB,CAC3C,KAAK,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC,CAAC,CAyIxE"}
@@ -12,14 +12,14 @@ import { buildTrendLineMenu, pickTrendLineForTradeSetup, trendLineForTradeSetupB
12
12
  import { buildKeyLevelsTradeSetup } from './trade-setups/key-levels-trade-setup.js';
13
13
  import { buildKeyLevelFibRetraceTradeSetup, invertedFib618 } from './trade-setups/key-level-fib-retrace-trade-setup.js';
14
14
  import { buildKeyLevelAnalysisDataset } from './key-levels-dataset.js';
15
- import { keyLevelMenuDisplayLabel, pickOuterConcentricFibPair, } from './key-level-menu-summary.js';
15
+ import { DEFAULT_FIB_KEY_LEVEL_MIN_CONFIDENCE, keyLevelConfidenceFromStrength, keyLevelMenuDisplayLabel, pickStrongestBracketFibPair, } from './key-level-menu-summary.js';
16
16
  import { buildMomentumTradeSetup } from './trade-setups/momentum-trade-setup.js';
17
17
  import { buildMomentumHighlight } from './momentum-highlight.js';
18
18
  import { buildRangeVolatilityTradeSetup } from './trade-setups/range-volatility-trade-setup.js';
19
19
  import { buildRangeVolatilityHighlight } from './range-volatility-highlight.js';
20
20
  import { buildTrendStructureTradeSetup } from './trade-setups/trend-structure-trade-setup.js';
21
21
  import { ohlcvToolRejectIfLineOnly } from './time-series-analyze-tools.js';
22
- import { pickTradeDeskUniversalFromInput, tradeDeskUniversalInputSchema, } from './trade-setups/trade-desk-universal-input.js';
22
+ import { pickFibKeyLevelMinConfidenceFromInput, pickTradeDeskUniversalFromInput, tradeDeskUniversalInputSchema, } from './trade-setups/trade-desk-universal-input.js';
23
23
  const barsInputSchema = z
24
24
  .object({
25
25
  toolResult: z.unknown().optional(),
@@ -62,6 +62,7 @@ const trendLineMenuEntrySchema = z
62
62
  trendLineNumber: z.number().int(),
63
63
  kind: z.enum(['support', 'resistance']),
64
64
  score: z.number(),
65
+ confidence: z.number().min(0).max(1),
65
66
  touchCount: z.number(),
66
67
  isPrimary: z.boolean(),
67
68
  barSpan: z
@@ -247,9 +248,12 @@ export async function analyzeTrendStructure(input) {
247
248
  lastClose: close ?? 0,
248
249
  swingHigh: swingHigh ? { price: swingHigh.price } : null,
249
250
  swingLow: swingLow ? { price: swingLow.price } : null,
251
+ swingHighs: resistance.slice(0, 12).map(s => ({ price: s.price })),
252
+ swingLows: support.slice(0, 12).map(s => ({ price: s.price })),
250
253
  primaryTrendLine: tradeTrendLine,
251
254
  trendLineNumber: tradeTrendPick.trendLineNumber,
252
255
  bars,
256
+ ...pickTradeDeskUniversalFromInput(parsed.data),
253
257
  });
254
258
  return {
255
259
  ok: true,
@@ -289,8 +293,7 @@ const keyLevelMenuEntrySchema = z
289
293
  const keyLevelFibPairSchema = z
290
294
  .object({
291
295
  pairNumber: z.number().int(),
292
- pairKind: z.enum(['primary_range', 'concentric']),
293
- concentricRank: z.number().int().optional(),
296
+ pairKind: z.enum(['strongest_bracket']),
294
297
  lowLevelNumber: z.number().int(),
295
298
  highLevelNumber: z.number().int(),
296
299
  low: z.number(),
@@ -298,8 +301,6 @@ const keyLevelFibPairSchema = z
298
301
  closeAboveMid: z.boolean(),
299
302
  chartFibTrend: z.enum(['up', 'down']),
300
303
  retracement618: z.number(),
301
- extension1618Up: z.number(),
302
- extension1618Down: z.number(),
303
304
  isPrimaryTradePair: z.boolean().optional(),
304
305
  })
305
306
  .strict();
@@ -307,7 +308,6 @@ export const AnalyzeKeyLevelsInputSchema = z.preprocess(preprocessOhlcvToolInput
307
308
  maxLevels: z.number().int().min(1).max(12).optional(),
308
309
  /** Re-bind trade setup to levelMenu #N from a persisted tradeSetupSelection. */
309
310
  tradeLevelNumber: z.number().int().min(1).max(64).optional(),
310
- tradeBrokenLevelNumber: z.number().int().min(1).max(64).optional(),
311
311
  }));
312
312
  export const AnalyzeKeyLevelsOutputSchema = z
313
313
  .object({
@@ -394,12 +394,8 @@ export async function analyzeKeyLevels(input) {
394
394
  : null,
395
395
  levels,
396
396
  levelMenu,
397
- fibPairs: [],
398
397
  bars,
399
398
  ...(parsed.data.tradeLevelNumber != null ? { tradeLevelNumber: parsed.data.tradeLevelNumber } : {}),
400
- ...(parsed.data.tradeBrokenLevelNumber != null
401
- ? { tradeBrokenLevelNumber: parsed.data.tradeBrokenLevelNumber }
402
- : {}),
403
399
  ...pickTradeDeskUniversalFromInput(parsed.data),
404
400
  });
405
401
  const summary = `${levels.length} key level(s) · nearest S/R vs last close`;
@@ -412,7 +408,7 @@ export async function analyzeKeyLevels(input) {
412
408
  let msg = `${topLabel} ranks highest (strength ${top.strength}, ${top.touchCount} touch(es)). ` +
413
409
  'Nearest-level trade uses closest support below / resistance above last close (not Fib). ' +
414
410
  'Use levelMenu #N with apply_key_level_drawings (level line only). ' +
415
- 'For outer-range Fib 0.618 retrace, run analyze_key_level_fibonacci.';
411
+ 'For strongest-bracket Fib 0.618 retrace, run analyze_key_level_fibonacci.';
416
412
  if (keyLevelsTradeSetup?.levelNumber != null) {
417
413
  const tradeRow = levelMenu.find(m => m.levelNumber === keyLevelsTradeSetup.levelNumber);
418
414
  if (tradeRow) {
@@ -472,65 +468,65 @@ export async function analyzeKeyLevelFibonacci(input) {
472
468
  if (!bars.length) {
473
469
  return { ok: false, reason: missingOhlcvBarsReason(parsed.data) };
474
470
  }
475
- const dataset = buildKeyLevelAnalysisDataset(bars, { maxLevels: parsed.data.maxLevels ?? 8 });
471
+ const fibKeyLevelMinConfidence = pickFibKeyLevelMinConfidenceFromInput(parsed.data) ?? DEFAULT_FIB_KEY_LEVEL_MIN_CONFIDENCE;
472
+ const dataset = buildKeyLevelAnalysisDataset(bars, {
473
+ maxLevels: parsed.data.maxLevels ?? 8,
474
+ fibKeyLevelMinConfidence,
475
+ });
476
476
  if (!dataset.ok) {
477
477
  return dataset;
478
478
  }
479
479
  const { close, levelMenu, fibPairs } = dataset.data;
480
480
  const primaryFibPair = (parsed.data.fibPairNumber != null
481
481
  ? fibPairs.find(p => p.pairNumber === parsed.data.fibPairNumber)
482
- : undefined) ?? pickOuterConcentricFibPair(fibPairs);
482
+ : undefined) ?? pickStrongestBracketFibPair(fibPairs);
483
483
  const meta = analysisMeta(bars, parsed.data.title, parsed.data.toolResult, liveMerge, fingerprint);
484
- const keyLevelFibTradeSetup = buildKeyLevelFibRetraceTradeSetup({
485
- lastClose: close,
486
- levelMenu,
487
- fibPairs,
488
- bars,
489
- ...(parsed.data.fibPairNumber != null ? { fibPairNumber: parsed.data.fibPairNumber } : {}),
490
- ...(parsed.data.tradeFibSide != null ? { defaultSidePreference: parsed.data.tradeFibSide } : {}),
491
- ...pickTradeDeskUniversalFromInput(parsed.data),
492
- });
484
+ const keyLevelFibTradeSetup = primaryFibPair
485
+ ? buildKeyLevelFibRetraceTradeSetup({
486
+ lastClose: close,
487
+ levelMenu,
488
+ fibPairs,
489
+ bars,
490
+ fibKeyLevelMinConfidence,
491
+ ...(parsed.data.fibPairNumber != null ? { fibPairNumber: parsed.data.fibPairNumber } : {}),
492
+ ...(parsed.data.tradeFibSide != null ? { defaultSidePreference: parsed.data.tradeFibSide } : {}),
493
+ ...pickTradeDeskUniversalFromInput(parsed.data),
494
+ })
495
+ : null;
496
+ const lowRow = primaryFibPair
497
+ ? levelMenu.find(m => m.levelNumber === primaryFibPair.lowLevelNumber)
498
+ : undefined;
499
+ const highRow = primaryFibPair
500
+ ? levelMenu.find(m => m.levelNumber === primaryFibPair.highLevelNumber)
501
+ : undefined;
493
502
  const summary = primaryFibPair
494
- ? keyLevelFibTradeSetup?.priceRegime === 'above_range'
495
- ? `Fib range #${primaryFibPair.pairNumber} · above high · 1.618 ext @ ${primaryFibPair.extension1618Up.toFixed(2)}`
496
- : keyLevelFibTradeSetup?.priceRegime === 'below_range'
497
- ? `Fib range #${primaryFibPair.pairNumber} · below low · 1.618 ext @ ${primaryFibPair.extension1618Down.toFixed(2)}`
498
- : `Fib range #${primaryFibPair.pairNumber} (levels #${primaryFibPair.lowLevelNumber}–#${primaryFibPair.highLevelNumber}) · 0.618 @ ${primaryFibPair.retracement618.toFixed(2)}`
499
- : 'No concentric Fib range pair in window';
503
+ ? `Fib bracket #${primaryFibPair.pairNumber} (levels #${primaryFibPair.lowLevelNumber}–#${primaryFibPair.highLevelNumber}) · 0.618 @ ${primaryFibPair.retracement618.toFixed(2)}`
504
+ : 'No strong key-level Fib bracket (need strong levels below and above last close)';
500
505
  const interpretation = (() => {
501
- if (!primaryFibPair) {
502
- return 'Need at least one swing support and one swing resistance to form an outer Fib range.';
503
- }
504
- let msg = `Outer concentric pair spans ${primaryFibPair.low.toFixed(2)}–${primaryFibPair.high.toFixed(2)} ` +
505
- `(Level #${primaryFibPair.lowLevelNumber} swing low × Level #${primaryFibPair.highLevelNumber} swing high). `;
506
- if (keyLevelFibTradeSetup?.priceRegime === 'above_range') {
507
- msg +=
508
- `Last close is above range high — primary long targets Fib 1.618 extension at ${primaryFibPair.extension1618Up.toFixed(2)}. ` +
509
- 'Use apply_key_fib_drawings with fibPairNumber. Optional breakRetestAlternative for retest at broken high — see trade-defaults.';
510
- }
511
- else if (keyLevelFibTradeSetup?.priceRegime === 'below_range') {
512
- msg +=
513
- `Last close is below range low — primary short targets Fib 1.618 extension at ${primaryFibPair.extension1618Down.toFixed(2)} (reversed range). ` +
514
- 'Use apply_key_fib_drawings with fibPairNumber. Optional breakRetestAlternative for retest at broken low — see trade-defaults.';
515
- }
516
- else {
517
- const inverted = keyLevelFibTradeSetup?.fibRangeInverted === true;
518
- msg += inverted
519
- ? `Below standard 0.618 — inverted range (upper=0 / lower=1); inverted 0.618 at ${invertedFib618(primaryFibPair.low, primaryFibPair.high).toFixed(2)}. Default ${keyLevelFibTradeSetup?.defaultSide ?? 'long'} toward ${keyLevelFibTradeSetup?.targetLabel ?? '0.618'}. `
520
- : `Above standard 0.618 — default ${keyLevelFibTradeSetup?.defaultSide ?? 'short'} toward Fib 0.618 at ${primaryFibPair.retracement618.toFixed(2)} (long alternate toward upper). `;
521
- msg +=
522
- 'Use apply_key_fib_drawings with fibPairNumber to draw the Fib range (not level-only apply). Toggle long/short in the trade build form.';
506
+ if (!primaryFibPair || !lowRow || !highRow) {
507
+ return (`No valid strongest-bracket Fib range: need a key level below and above last close ` +
508
+ `each with confidence (strength/100) ≥ ${fibKeyLevelMinConfidence.toFixed(2)} ` +
509
+ `(trade-desk fibKeyLevelMinConfidence). For break+retest of a broken level, use analyze_key_levels.`);
523
510
  }
511
+ const lowConf = keyLevelConfidenceFromStrength(lowRow.strength);
512
+ const highConf = keyLevelConfidenceFromStrength(highRow.strength);
513
+ const lowLabel = keyLevelMenuDisplayLabel(lowRow.kind, lowRow.levelNumber, lowRow.price, lowRow.swingKind);
514
+ const highLabel = keyLevelMenuDisplayLabel(highRow.kind, highRow.levelNumber, highRow.price, highRow.swingKind);
515
+ let msg = `Strongest-bracket Fib uses ${lowLabel} below (strength ${lowRow.strength}, confidence ${lowConf.toFixed(2)}) ` +
516
+ `× ${highLabel} above (strength ${highRow.strength}, confidence ${highConf.toFixed(2)}); ` +
517
+ `range ${primaryFibPair.low.toFixed(2)}–${primaryFibPair.high.toFixed(2)} (last close inside). `;
518
+ const inverted = keyLevelFibTradeSetup?.fibRangeInverted === true;
519
+ msg += inverted
520
+ ? `Below standard 0.618 — inverted range (upper=0 / lower=1); inverted 0.618 at ${invertedFib618(primaryFibPair.low, primaryFibPair.high).toFixed(2)}. Default ${keyLevelFibTradeSetup?.defaultSide ?? 'long'} toward ${keyLevelFibTradeSetup?.targetLabel ?? '0.618'}. `
521
+ : `Above standard 0.618 — default ${keyLevelFibTradeSetup?.defaultSide ?? 'short'} toward Fib 0.618 at ${primaryFibPair.retracement618.toFixed(2)} (long alternate toward upper). `;
522
+ msg +=
523
+ 'Use apply_key_fib_drawings with fibPairNumber to draw the Fib range (0 / 0.618 / 1). Toggle long/short in the trade build form. Break+retest of a level is analyze_key_levels, not Fib.';
524
524
  if (keyLevelFibTradeSetup?.status === 'clear') {
525
525
  msg += ` Trade setup: ${keyLevelFibTradeSetup.side} — ${keyLevelFibTradeSetup.entryLabel} toward ${keyLevelFibTradeSetup.targetLabel ?? 'target'}.`;
526
526
  }
527
527
  else if (keyLevelFibTradeSetup?.unclearReason) {
528
528
  msg += ` ${keyLevelFibTradeSetup.unclearReason}`;
529
529
  }
530
- if (keyLevelFibTradeSetup?.breakRetestAlternative) {
531
- const alt = keyLevelFibTradeSetup.breakRetestAlternative;
532
- msg += ` Break+retest alternate at Level #${alt.brokenLevelNumber} (${alt.status}) — see trade-defaults to switch.`;
533
- }
534
530
  return msg;
535
531
  })();
536
532
  return {