dexbot 1.4.20 → 1.4.22

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 (674) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/README.md +23 -13
  3. package/analysis/ama_fitting/analyze_ama_price_changes.ts +7 -3
  4. package/analysis/ama_fitting/analyze_lambda_vs_slow.ts +3 -3
  5. package/analysis/ama_fitting/calibrate_convergence_er.ts +8 -6
  6. package/analysis/ama_fitting/fetch_lp_candles.ts +8 -3
  7. package/analysis/ama_fitting/generate_unified_comparison_chart.ts +30 -67
  8. package/analysis/ama_fitting/optimizer_high_resolution.ts +22 -13
  9. package/analysis/ama_fitting/package.json +1 -1
  10. package/analysis/analyze_derivatives.ts +4 -4
  11. package/analysis/analyze_dynamic_weight.ts +21 -5
  12. package/analysis/analyze_kalman.ts +54 -25
  13. package/analysis/analyze_regime.ts +2 -2
  14. package/analysis/analyze_regime_windows.ts +27 -19
  15. package/analysis/analyze_risk_profile.ts +3 -3
  16. package/analysis/analyze_trade_heatmap.ts +3 -3
  17. package/analysis/analyze_volatility.ts +2 -2
  18. package/analysis/bot_fitting/README.md +93 -19
  19. package/analysis/bot_fitting/backtest_ama_sweep.ts +316 -199
  20. package/analysis/bot_fitting/backtest_bot_fitting.ts +520 -85
  21. package/analysis/bot_fitting/shared_utils.ts +16 -10
  22. package/analysis/bot_key_utils.ts +14 -11
  23. package/analysis/bot_usage/discover_bot_accounts.ts +5 -3
  24. package/analysis/bot_usage/kibana_bot_queries.ts +2 -257
  25. package/analysis/chart_css.ts +6 -4
  26. package/analysis/chart_ui.ts +0 -1
  27. package/analysis/chart_utils.ts +11 -2
  28. package/analysis/derivative_chart_generator.ts +2 -2
  29. package/analysis/math_utils.ts +1 -8
  30. package/analysis/price_sources.ts +8 -2
  31. package/analysis/resolve_source.ts +1 -1
  32. package/analysis/results/ama_sweep_results_lp_pool_133_1h.json +2455 -0
  33. package/analysis/results/bot_fitting_results_lp_pool_133_1h.json +218 -0
  34. package/analysis/trade_profitability.ts +61 -28
  35. package/analysis/tradingview/analyze_tradingview.ts +1 -1
  36. package/analysis/tradingview/h-bts_tradingview.html +1570 -0
  37. package/analysis/tradingview/t-bts_tradingview.html +1570 -0
  38. package/analysis/tradingview/tradingview_uplot_chart_generator.ts +302 -74
  39. package/analysis/trend_detection/DYNAMIC_WEIGHT_RESEARCH.md +1 -1
  40. package/analysis/trend_detection/derivative_analyzer.ts +12 -3
  41. package/analysis/trend_detection/dynamic_weight_chart_generator.ts +25 -27
  42. package/analysis/trend_detection/hurst_analyzer.ts +1 -1
  43. package/analysis/trend_detection/kalman_chart_generator.ts +42 -14
  44. package/analysis/trend_detection/package.json +1 -1
  45. package/analysis/trend_detection/regime_chart_generator.ts +39 -19
  46. package/analysis/trend_detection/tests/test_kalman_trend.ts +1 -1
  47. package/analysis/trend_detection/tests/test_kalman_velocity_smoothing.ts +1 -1
  48. package/analysis/trend_detection/volatility_chart_generator.ts +1 -1
  49. package/claw/ecosystem.config.cjs +2 -3
  50. package/claw/examples/memu_integration_example.ts +17 -17
  51. package/claw/index.ts +1 -1
  52. package/claw/modules/chain_actions.ts +51 -54
  53. package/claw/modules/chain_broadcast.ts +66 -104
  54. package/claw/modules/claw_bridge.ts +63 -83
  55. package/claw/modules/claw_catalog.ts +48 -17
  56. package/claw/modules/claw_infra.ts +1 -5
  57. package/claw/modules/claw_launcher.ts +48 -50
  58. package/claw/modules/claw_skill_md.ts +15 -21
  59. package/claw/modules/credit_runtime_adapter.ts +3 -19
  60. package/claw/modules/decision_loop.ts +9 -9
  61. package/claw/modules/dexbot_bridge.ts +8 -8
  62. package/claw/modules/dexbot_profiles.ts +5 -21
  63. package/claw/modules/feed_price_source.ts +1 -1
  64. package/claw/modules/honest_ecosystem.ts +24 -8
  65. package/claw/modules/kibana_price_source.ts +1 -1
  66. package/claw/modules/launcher_mode_detector.ts +1 -1
  67. package/claw/modules/launcher_paths.ts +1 -1
  68. package/claw/modules/liquidity_pools.ts +10 -3
  69. package/claw/modules/mcp_utils.ts +109 -0
  70. package/claw/modules/memu_bridge.ts +76 -54
  71. package/claw/modules/mpa_utils.ts +26 -3
  72. package/claw/modules/position_discovery.ts +17 -28
  73. package/claw/modules/position_health.ts +1 -1
  74. package/claw/modules/position_manager.ts +32 -41
  75. package/claw/modules/position_manager_watch.ts +3 -2
  76. package/claw/modules/short_mpa_strategy.ts +1 -9
  77. package/claw/modules/skill_utils.ts +5 -3
  78. package/claw/modules/utils.ts +9 -1
  79. package/claw/package.json +3 -3
  80. package/claw/runtimes/openclaw-plugin/index.ts +27 -10
  81. package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
  82. package/claw/runtimes/openclaw-plugin/package.json +1 -1
  83. package/claw/scripts/claw_bridge.ts +1 -1
  84. package/claw/scripts/claw_mcp_server.ts +19 -78
  85. package/claw/scripts/honest_assets_report.ts +19 -84
  86. package/claw/scripts/memu_mcp_server.ts +57 -155
  87. package/claw/skills/launcher-ops/references/launcher-workflow.md +2 -2
  88. package/claw/tests/package.json +1 -1
  89. package/claw/tests/test_claw_bridge.ts +47 -19
  90. package/claw/tests/test_claw_catalog_and_credentials.ts +8 -4
  91. package/claw/tests/test_claw_chain_layer.ts +39 -19
  92. package/claw/tests/test_claw_data_flow.ts +28 -20
  93. package/claw/tests/test_claw_domain_logic.ts +25 -19
  94. package/claw/tests/test_claw_manifest_and_matrix.ts +23 -3
  95. package/claw/tests/test_claw_mcp_transport.ts +13 -8
  96. package/claw/tests/test_claw_regressions.ts +254 -128
  97. package/claw/tests/test_claw_skill_generation.ts +1 -1
  98. package/claw/tests/test_nullclaw_tmp_integration.ts +2 -3
  99. package/claw/tests/test_position_health.ts +1 -77
  100. package/claw/tests/test_position_manager.ts +20 -18
  101. package/claw/tests/test_position_manager_watch_health.ts +39 -43
  102. package/claw/tests/test_short_mpa_strategy.ts +20 -17
  103. package/claw/tsconfig.json +4 -3
  104. package/dist/analysis/ama_fitting/analyze_ama_price_changes.js +7 -3
  105. package/dist/analysis/ama_fitting/analyze_ama_price_changes.js.map +1 -1
  106. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js +3 -3
  107. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js.map +1 -1
  108. package/dist/analysis/ama_fitting/calibrate_convergence_er.js +8 -6
  109. package/dist/analysis/ama_fitting/calibrate_convergence_er.js.map +1 -1
  110. package/dist/analysis/ama_fitting/fetch_lp_candles.js +8 -3
  111. package/dist/analysis/ama_fitting/fetch_lp_candles.js.map +1 -1
  112. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts +2 -2
  113. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts.map +1 -1
  114. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js +31 -75
  115. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js.map +1 -1
  116. package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts.map +1 -1
  117. package/dist/analysis/ama_fitting/optimizer_high_resolution.js +21 -13
  118. package/dist/analysis/ama_fitting/optimizer_high_resolution.js.map +1 -1
  119. package/dist/analysis/analyze_derivatives.d.ts +0 -18
  120. package/dist/analysis/analyze_derivatives.d.ts.map +1 -1
  121. package/dist/analysis/analyze_derivatives.js +4 -4
  122. package/dist/analysis/analyze_derivatives.js.map +1 -1
  123. package/dist/analysis/analyze_dynamic_weight.d.ts +0 -11
  124. package/dist/analysis/analyze_dynamic_weight.d.ts.map +1 -1
  125. package/dist/analysis/analyze_dynamic_weight.js +19 -5
  126. package/dist/analysis/analyze_dynamic_weight.js.map +1 -1
  127. package/dist/analysis/analyze_kalman.d.ts +0 -10
  128. package/dist/analysis/analyze_kalman.d.ts.map +1 -1
  129. package/dist/analysis/analyze_kalman.js +51 -26
  130. package/dist/analysis/analyze_kalman.js.map +1 -1
  131. package/dist/analysis/analyze_regime.d.ts +0 -17
  132. package/dist/analysis/analyze_regime.d.ts.map +1 -1
  133. package/dist/analysis/analyze_regime.js +2 -2
  134. package/dist/analysis/analyze_regime.js.map +1 -1
  135. package/dist/analysis/analyze_regime_windows.d.ts +0 -16
  136. package/dist/analysis/analyze_regime_windows.d.ts.map +1 -1
  137. package/dist/analysis/analyze_regime_windows.js +28 -21
  138. package/dist/analysis/analyze_regime_windows.js.map +1 -1
  139. package/dist/analysis/analyze_risk_profile.js +3 -3
  140. package/dist/analysis/analyze_risk_profile.js.map +1 -1
  141. package/dist/analysis/analyze_trade_heatmap.js +3 -3
  142. package/dist/analysis/analyze_trade_heatmap.js.map +1 -1
  143. package/dist/analysis/analyze_volatility.d.ts +0 -19
  144. package/dist/analysis/analyze_volatility.d.ts.map +1 -1
  145. package/dist/analysis/analyze_volatility.js +2 -2
  146. package/dist/analysis/analyze_volatility.js.map +1 -1
  147. package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts +30 -14
  148. package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts.map +1 -1
  149. package/dist/analysis/bot_fitting/backtest_ama_sweep.js +330 -193
  150. package/dist/analysis/bot_fitting/backtest_ama_sweep.js.map +1 -1
  151. package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts +136 -1
  152. package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts.map +1 -1
  153. package/dist/analysis/bot_fitting/backtest_bot_fitting.js +527 -83
  154. package/dist/analysis/bot_fitting/backtest_bot_fitting.js.map +1 -1
  155. package/dist/analysis/bot_fitting/shared_utils.d.ts +2 -13
  156. package/dist/analysis/bot_fitting/shared_utils.d.ts.map +1 -1
  157. package/dist/analysis/bot_fitting/shared_utils.js +15 -9
  158. package/dist/analysis/bot_fitting/shared_utils.js.map +1 -1
  159. package/dist/analysis/bot_key_utils.d.ts +1 -1
  160. package/dist/analysis/bot_key_utils.d.ts.map +1 -1
  161. package/dist/analysis/bot_key_utils.js +14 -11
  162. package/dist/analysis/bot_key_utils.js.map +1 -1
  163. package/dist/analysis/bot_usage/discover_bot_accounts.js +5 -3
  164. package/dist/analysis/bot_usage/discover_bot_accounts.js.map +1 -1
  165. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +1 -337
  166. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -1
  167. package/dist/analysis/bot_usage/kibana_bot_queries.js +2 -242
  168. package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -1
  169. package/dist/analysis/chart_css.d.ts +2 -14
  170. package/dist/analysis/chart_css.d.ts.map +1 -1
  171. package/dist/analysis/chart_css.js +6 -3
  172. package/dist/analysis/chart_css.js.map +1 -1
  173. package/dist/analysis/chart_ui.d.ts.map +1 -1
  174. package/dist/analysis/chart_ui.js.map +1 -1
  175. package/dist/analysis/chart_utils.d.ts.map +1 -1
  176. package/dist/analysis/chart_utils.js +15 -2
  177. package/dist/analysis/chart_utils.js.map +1 -1
  178. package/dist/analysis/derivative_chart_generator.js +2 -2
  179. package/dist/analysis/derivative_chart_generator.js.map +1 -1
  180. package/dist/analysis/math_utils.d.ts +3 -5
  181. package/dist/analysis/math_utils.d.ts.map +1 -1
  182. package/dist/analysis/math_utils.js +3 -5
  183. package/dist/analysis/math_utils.js.map +1 -1
  184. package/dist/analysis/price_sources.d.ts +1 -0
  185. package/dist/analysis/price_sources.d.ts.map +1 -1
  186. package/dist/analysis/price_sources.js +8 -2
  187. package/dist/analysis/price_sources.js.map +1 -1
  188. package/dist/analysis/resolve_source.d.ts.map +1 -1
  189. package/dist/analysis/resolve_source.js +1 -1
  190. package/dist/analysis/resolve_source.js.map +1 -1
  191. package/dist/analysis/trade_profitability.d.ts.map +1 -1
  192. package/dist/analysis/trade_profitability.js +58 -29
  193. package/dist/analysis/trade_profitability.js.map +1 -1
  194. package/dist/analysis/tradingview/analyze_tradingview.js +1 -1
  195. package/dist/analysis/tradingview/analyze_tradingview.js.map +1 -1
  196. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts.map +1 -1
  197. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js +302 -74
  198. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js.map +1 -1
  199. package/dist/analysis/trend_detection/derivative_analyzer.d.ts +1 -0
  200. package/dist/analysis/trend_detection/derivative_analyzer.d.ts.map +1 -1
  201. package/dist/analysis/trend_detection/derivative_analyzer.js +12 -3
  202. package/dist/analysis/trend_detection/derivative_analyzer.js.map +1 -1
  203. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts.map +1 -1
  204. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js +26 -27
  205. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js.map +1 -1
  206. package/dist/analysis/trend_detection/hurst_analyzer.d.ts +1 -1
  207. package/dist/analysis/trend_detection/hurst_analyzer.d.ts.map +1 -1
  208. package/dist/analysis/trend_detection/hurst_analyzer.js +1 -1
  209. package/dist/analysis/trend_detection/hurst_analyzer.js.map +1 -1
  210. package/dist/analysis/trend_detection/kalman_chart_generator.d.ts.map +1 -1
  211. package/dist/analysis/trend_detection/kalman_chart_generator.js +41 -13
  212. package/dist/analysis/trend_detection/kalman_chart_generator.js.map +1 -1
  213. package/dist/analysis/trend_detection/regime_chart_generator.d.ts.map +1 -1
  214. package/dist/analysis/trend_detection/regime_chart_generator.js +38 -19
  215. package/dist/analysis/trend_detection/regime_chart_generator.js.map +1 -1
  216. package/dist/analysis/trend_detection/tests/test_kalman_trend.js +1 -1
  217. package/dist/analysis/trend_detection/tests/test_kalman_trend.js.map +1 -1
  218. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js +1 -1
  219. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js.map +1 -1
  220. package/dist/analysis/trend_detection/volatility_chart_generator.js +1 -1
  221. package/dist/analysis/trend_detection/volatility_chart_generator.js.map +1 -1
  222. package/dist/bot.js +3 -3
  223. package/dist/bot.js.map +1 -1
  224. package/dist/credential-daemon.d.ts +1 -1
  225. package/dist/credential-daemon.js +2 -2
  226. package/dist/credential-daemon.js.map +1 -1
  227. package/dist/dexbot.d.ts.map +1 -1
  228. package/dist/dexbot.js +25 -22
  229. package/dist/dexbot.js.map +1 -1
  230. package/dist/market_adapter/ama_signal_runner.js +6 -4
  231. package/dist/market_adapter/ama_signal_runner.js.map +1 -1
  232. package/dist/market_adapter/candle_utils.d.ts +1 -3
  233. package/dist/market_adapter/candle_utils.d.ts.map +1 -1
  234. package/dist/market_adapter/candle_utils.js +1 -11
  235. package/dist/market_adapter/candle_utils.js.map +1 -1
  236. package/dist/market_adapter/core/asymmetric_bounds.d.ts.map +1 -1
  237. package/dist/market_adapter/core/asymmetric_bounds.js +33 -30
  238. package/dist/market_adapter/core/asymmetric_bounds.js.map +1 -1
  239. package/dist/market_adapter/core/config_normalizers.d.ts.map +1 -1
  240. package/dist/market_adapter/core/config_normalizers.js +10 -1
  241. package/dist/market_adapter/core/config_normalizers.js.map +1 -1
  242. package/dist/market_adapter/core/kibana_candles.d.ts +18 -42
  243. package/dist/market_adapter/core/kibana_candles.d.ts.map +1 -1
  244. package/dist/market_adapter/core/kibana_candles.js +101 -7
  245. package/dist/market_adapter/core/kibana_candles.js.map +1 -1
  246. package/dist/market_adapter/core/kibana_client.d.ts +1 -17
  247. package/dist/market_adapter/core/kibana_client.d.ts.map +1 -1
  248. package/dist/market_adapter/core/kibana_client.js +40 -7
  249. package/dist/market_adapter/core/kibana_client.js.map +1 -1
  250. package/dist/market_adapter/core/kibana_market_candles.d.ts +0 -27
  251. package/dist/market_adapter/core/kibana_market_candles.d.ts.map +1 -1
  252. package/dist/market_adapter/core/kibana_market_candles.js +1 -1
  253. package/dist/market_adapter/core/kibana_market_candles.js.map +1 -1
  254. package/dist/market_adapter/core/market_adapter_service.d.ts +22 -13
  255. package/dist/market_adapter/core/market_adapter_service.d.ts.map +1 -1
  256. package/dist/market_adapter/core/market_adapter_service.js +96 -38
  257. package/dist/market_adapter/core/market_adapter_service.js.map +1 -1
  258. package/dist/market_adapter/core/signals/hurst_analyzer.d.ts +10 -1
  259. package/dist/market_adapter/core/signals/hurst_analyzer.d.ts.map +1 -1
  260. package/dist/market_adapter/core/signals/hurst_analyzer.js +28 -17
  261. package/dist/market_adapter/core/signals/hurst_analyzer.js.map +1 -1
  262. package/dist/market_adapter/core/signals/kalman_trend_analyzer.d.ts +5 -0
  263. package/dist/market_adapter/core/signals/kalman_trend_analyzer.d.ts.map +1 -1
  264. package/dist/market_adapter/core/signals/kalman_trend_analyzer.js +24 -24
  265. package/dist/market_adapter/core/signals/kalman_trend_analyzer.js.map +1 -1
  266. package/dist/market_adapter/core/signals/kalman_velocity_smoothing.d.ts.map +1 -1
  267. package/dist/market_adapter/core/signals/kalman_velocity_smoothing.js +5 -1
  268. package/dist/market_adapter/core/signals/kalman_velocity_smoothing.js.map +1 -1
  269. package/dist/market_adapter/core/signals/permutation_entropy_analyzer.d.ts.map +1 -1
  270. package/dist/market_adapter/core/signals/permutation_entropy_analyzer.js +20 -3
  271. package/dist/market_adapter/core/signals/permutation_entropy_analyzer.js.map +1 -1
  272. package/dist/market_adapter/core/strategies/ama.js +1 -1
  273. package/dist/market_adapter/core/strategies/ama.js.map +1 -1
  274. package/dist/market_adapter/core/strategies/ama_slope_model.d.ts +2 -2
  275. package/dist/market_adapter/core/strategies/ama_slope_model.d.ts.map +1 -1
  276. package/dist/market_adapter/core/strategies/ama_slope_model.js +16 -4
  277. package/dist/market_adapter/core/strategies/ama_slope_model.js.map +1 -1
  278. package/dist/market_adapter/core/strategies/atr/calculator.d.ts +4 -3
  279. package/dist/market_adapter/core/strategies/atr/calculator.d.ts.map +1 -1
  280. package/dist/market_adapter/core/strategies/atr/calculator.js +16 -8
  281. package/dist/market_adapter/core/strategies/atr/calculator.js.map +1 -1
  282. package/dist/market_adapter/core/strategies/collateral_manager.d.ts.map +1 -1
  283. package/dist/market_adapter/core/strategies/collateral_manager.js +8 -3
  284. package/dist/market_adapter/core/strategies/collateral_manager.js.map +1 -1
  285. package/dist/market_adapter/core/strategies/dynamic_weight_series.d.ts +40 -1
  286. package/dist/market_adapter/core/strategies/dynamic_weight_series.d.ts.map +1 -1
  287. package/dist/market_adapter/core/strategies/dynamic_weight_series.js +116 -2
  288. package/dist/market_adapter/core/strategies/dynamic_weight_series.js.map +1 -1
  289. package/dist/market_adapter/core/strategies/regime_gate.d.ts +1 -2
  290. package/dist/market_adapter/core/strategies/regime_gate.d.ts.map +1 -1
  291. package/dist/market_adapter/core/strategies/regime_gate.js +27 -21
  292. package/dist/market_adapter/core/strategies/regime_gate.js.map +1 -1
  293. package/dist/market_adapter/core/strategies/volatility_shift.d.ts.map +1 -1
  294. package/dist/market_adapter/core/strategies/volatility_shift.js +3 -0
  295. package/dist/market_adapter/core/strategies/volatility_shift.js.map +1 -1
  296. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js +71 -57
  297. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js.map +1 -1
  298. package/dist/market_adapter/inputs/fetch_lp_data.d.ts +0 -26
  299. package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -1
  300. package/dist/market_adapter/inputs/fetch_lp_data.js +72 -19
  301. package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -1
  302. package/dist/market_adapter/inputs/kibana_source.d.ts +5 -30
  303. package/dist/market_adapter/inputs/kibana_source.d.ts.map +1 -1
  304. package/dist/market_adapter/inputs/kibana_source.js +6 -3
  305. package/dist/market_adapter/inputs/kibana_source.js.map +1 -1
  306. package/dist/market_adapter/lp_chart_core.js +1 -1
  307. package/dist/market_adapter/lp_chart_core.js.map +1 -1
  308. package/dist/market_adapter/lp_chart_runner.d.ts +10 -1
  309. package/dist/market_adapter/lp_chart_runner.d.ts.map +1 -1
  310. package/dist/market_adapter/lp_chart_runner.js +2 -2
  311. package/dist/market_adapter/lp_chart_runner.js.map +1 -1
  312. package/dist/market_adapter/lp_chart_strategy_loader.d.ts +1 -2
  313. package/dist/market_adapter/lp_chart_strategy_loader.d.ts.map +1 -1
  314. package/dist/market_adapter/lp_chart_strategy_loader.js +5 -5
  315. package/dist/market_adapter/lp_chart_strategy_loader.js.map +1 -1
  316. package/dist/market_adapter/market_adapter.d.ts +1 -2
  317. package/dist/market_adapter/market_adapter.d.ts.map +1 -1
  318. package/dist/market_adapter/market_adapter.js +5 -7
  319. package/dist/market_adapter/market_adapter.js.map +1 -1
  320. package/dist/market_adapter/test_helpers.d.ts +3 -3
  321. package/dist/market_adapter/test_helpers.d.ts.map +1 -1
  322. package/dist/market_adapter/test_helpers.js +3 -3
  323. package/dist/market_adapter/test_helpers.js.map +1 -1
  324. package/dist/market_adapter/utils/adapter_client.js +1 -1
  325. package/dist/market_adapter/utils/adapter_client.js.map +1 -1
  326. package/dist/market_adapter/utils/atomic_write.js +1 -1
  327. package/dist/market_adapter/utils/atomic_write.js.map +1 -1
  328. package/dist/market_adapter/utils/chain.d.ts +0 -2
  329. package/dist/market_adapter/utils/chain.d.ts.map +1 -1
  330. package/dist/market_adapter/utils/chain.js +2 -3
  331. package/dist/market_adapter/utils/chain.js.map +1 -1
  332. package/dist/market_adapter/utils/data_discovery.d.ts.map +1 -1
  333. package/dist/market_adapter/utils/data_discovery.js +24 -8
  334. package/dist/market_adapter/utils/data_discovery.js.map +1 -1
  335. package/dist/market_adapter/utils/dynamic_grid_snapshot.d.ts.map +1 -1
  336. package/dist/market_adapter/utils/dynamic_grid_snapshot.js +2 -5
  337. package/dist/market_adapter/utils/dynamic_grid_snapshot.js.map +1 -1
  338. package/dist/market_adapter/utils/file_lock.d.ts +4 -1
  339. package/dist/market_adapter/utils/file_lock.d.ts.map +1 -1
  340. package/dist/market_adapter/utils/file_lock.js +89 -25
  341. package/dist/market_adapter/utils/file_lock.js.map +1 -1
  342. package/dist/market_adapter/utils/native_history.d.ts.map +1 -1
  343. package/dist/market_adapter/utils/native_history.js +5 -1
  344. package/dist/market_adapter/utils/native_history.js.map +1 -1
  345. package/dist/modules/account_bots.d.ts +3 -0
  346. package/dist/modules/account_bots.d.ts.map +1 -1
  347. package/dist/modules/account_bots.js +157 -47
  348. package/dist/modules/account_bots.js.map +1 -1
  349. package/dist/modules/account_orders.d.ts +1 -7
  350. package/dist/modules/account_orders.d.ts.map +1 -1
  351. package/dist/modules/account_orders.js +9 -17
  352. package/dist/modules/account_orders.js.map +1 -1
  353. package/dist/modules/authority_resolver.js +1 -1
  354. package/dist/modules/authority_resolver.js.map +1 -1
  355. package/dist/modules/bitshares-native/chain_client.js +1 -1
  356. package/dist/modules/bitshares-native/chain_client.js.map +1 -1
  357. package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts +0 -12
  358. package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts.map +1 -1
  359. package/dist/modules/bitshares-native/crypto/ecc.browser.js +1 -1
  360. package/dist/modules/bitshares-native/crypto/ecc.browser.js.map +1 -1
  361. package/dist/modules/bitshares-native/crypto/ecc_selector.js +1 -1
  362. package/dist/modules/bitshares-native/crypto/ecc_selector.js.map +1 -1
  363. package/dist/modules/bitshares-native/index.d.ts.map +1 -1
  364. package/dist/modules/bitshares-native/index.js +1 -1
  365. package/dist/modules/bitshares-native/index.js.map +1 -1
  366. package/dist/modules/bitshares-native/lru_cache.js +1 -1
  367. package/dist/modules/bitshares-native/lru_cache.js.map +1 -1
  368. package/dist/modules/bitshares-native/resolvers.d.ts +0 -2
  369. package/dist/modules/bitshares-native/resolvers.d.ts.map +1 -1
  370. package/dist/modules/bitshares-native/resolvers.js +18 -4
  371. package/dist/modules/bitshares-native/resolvers.js.map +1 -1
  372. package/dist/modules/bitshares-native/serial/chain_constants.js +1 -1
  373. package/dist/modules/bitshares-native/serial/chain_constants.js.map +1 -1
  374. package/dist/modules/bitshares-native/serial/index.d.ts.map +1 -1
  375. package/dist/modules/bitshares-native/serial/index.js +1 -1
  376. package/dist/modules/bitshares-native/serial/index.js.map +1 -1
  377. package/dist/modules/bitshares-native/serial/operations.js +1 -1
  378. package/dist/modules/bitshares-native/serial/operations.js.map +1 -1
  379. package/dist/modules/bitshares-native/serial/serializer.js +1 -1
  380. package/dist/modules/bitshares-native/serial/serializer.js.map +1 -1
  381. package/dist/modules/bitshares-native/serial/types.js +1 -1
  382. package/dist/modules/bitshares-native/serial/types.js.map +1 -1
  383. package/dist/modules/bitshares-native/signing_client.js +2 -2
  384. package/dist/modules/bitshares-native/signing_client.js.map +1 -1
  385. package/dist/modules/bitshares-native/subscriptions.d.ts.map +1 -1
  386. package/dist/modules/bitshares-native/subscriptions.js +5 -14
  387. package/dist/modules/bitshares-native/subscriptions.js.map +1 -1
  388. package/dist/modules/bitshares-native/transport.js +1 -1
  389. package/dist/modules/bitshares-native/transport.js.map +1 -1
  390. package/dist/modules/bitshares-native/tx/builder.js +1 -1
  391. package/dist/modules/bitshares-native/tx/builder.js.map +1 -1
  392. package/dist/modules/bitshares-native/tx/tx_cache.d.ts +3 -2
  393. package/dist/modules/bitshares-native/tx/tx_cache.d.ts.map +1 -1
  394. package/dist/modules/bitshares-native/tx/tx_cache.js +7 -4
  395. package/dist/modules/bitshares-native/tx/tx_cache.js.map +1 -1
  396. package/dist/modules/bitshares_client.d.ts +2 -14
  397. package/dist/modules/bitshares_client.d.ts.map +1 -1
  398. package/dist/modules/bitshares_client.js +32 -41
  399. package/dist/modules/bitshares_client.js.map +1 -1
  400. package/dist/modules/bot_settings.d.ts.map +1 -1
  401. package/dist/modules/bot_settings.js +12 -19
  402. package/dist/modules/bot_settings.js.map +1 -1
  403. package/dist/modules/bots_file_lock.d.ts +1 -1
  404. package/dist/modules/bots_file_lock.js +1 -1
  405. package/dist/modules/broadcast_failure.d.ts +13 -0
  406. package/dist/modules/broadcast_failure.d.ts.map +1 -1
  407. package/dist/modules/broadcast_failure.js +0 -13
  408. package/dist/modules/broadcast_failure.js.map +1 -1
  409. package/dist/modules/chain_keys.js +2 -2
  410. package/dist/modules/chain_keys.js.map +1 -1
  411. package/dist/modules/chain_orders.d.ts +2 -3
  412. package/dist/modules/chain_orders.d.ts.map +1 -1
  413. package/dist/modules/chain_orders.js +23 -42
  414. package/dist/modules/chain_orders.js.map +1 -1
  415. package/dist/modules/config.d.ts.map +1 -1
  416. package/dist/modules/config.js +5 -2
  417. package/dist/modules/config.js.map +1 -1
  418. package/dist/modules/constants.d.ts +21 -21
  419. package/dist/modules/constants.d.ts.map +1 -1
  420. package/dist/modules/constants.js +53 -60
  421. package/dist/modules/constants.js.map +1 -1
  422. package/dist/modules/cr_planner.d.ts +1 -7
  423. package/dist/modules/cr_planner.d.ts.map +1 -1
  424. package/dist/modules/cr_planner.js +3 -77
  425. package/dist/modules/cr_planner.js.map +1 -1
  426. package/dist/modules/credential_policy.d.ts +0 -4
  427. package/dist/modules/credential_policy.d.ts.map +1 -1
  428. package/dist/modules/credential_policy.js +18 -3
  429. package/dist/modules/credential_policy.js.map +1 -1
  430. package/dist/modules/credit_runtime.d.ts +0 -7
  431. package/dist/modules/credit_runtime.d.ts.map +1 -1
  432. package/dist/modules/credit_runtime.js +21 -60
  433. package/dist/modules/credit_runtime.js.map +1 -1
  434. package/dist/modules/crypto/index.d.ts +0 -2
  435. package/dist/modules/crypto/index.d.ts.map +1 -1
  436. package/dist/modules/crypto/index.js +0 -2
  437. package/dist/modules/crypto/index.js.map +1 -1
  438. package/dist/modules/crypto/sync.js.map +1 -1
  439. package/dist/modules/daemon_node_health.js +1 -1
  440. package/dist/modules/daemon_node_health.js.map +1 -1
  441. package/dist/modules/dexbot_class.d.ts +8 -134
  442. package/dist/modules/dexbot_class.d.ts.map +1 -1
  443. package/dist/modules/dexbot_class.js +39 -199
  444. package/dist/modules/dexbot_class.js.map +1 -1
  445. package/dist/modules/dexbot_credential_client.js +1 -1
  446. package/dist/modules/dexbot_credential_client.js.map +1 -1
  447. package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
  448. package/dist/modules/dexbot_fill_runtime.js +3 -6
  449. package/dist/modules/dexbot_fill_runtime.js.map +1 -1
  450. package/dist/modules/dexbot_maintenance_runtime.d.ts +6 -34
  451. package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
  452. package/dist/modules/dexbot_maintenance_runtime.js +27 -19
  453. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
  454. package/dist/modules/dexbot_startup_runtime.d.ts.map +1 -1
  455. package/dist/modules/dexbot_startup_runtime.js +31 -15
  456. package/dist/modules/dexbot_startup_runtime.js.map +1 -1
  457. package/dist/modules/dexbot_state_recovery.d.ts +2 -2
  458. package/dist/modules/dexbot_state_recovery.d.ts.map +1 -1
  459. package/dist/modules/dexbot_state_recovery.js +11 -7
  460. package/dist/modules/dexbot_state_recovery.js.map +1 -1
  461. package/dist/modules/fund_registry.d.ts.map +1 -1
  462. package/dist/modules/fund_registry.js +24 -6
  463. package/dist/modules/fund_registry.js.map +1 -1
  464. package/dist/modules/general_settings.d.ts +1 -2
  465. package/dist/modules/general_settings.d.ts.map +1 -1
  466. package/dist/modules/general_settings.js +1 -2
  467. package/dist/modules/general_settings.js.map +1 -1
  468. package/dist/modules/graceful_shutdown.d.ts.map +1 -1
  469. package/dist/modules/graceful_shutdown.js +10 -1
  470. package/dist/modules/graceful_shutdown.js.map +1 -1
  471. package/dist/modules/grid_price_source.d.ts +19 -0
  472. package/dist/modules/grid_price_source.d.ts.map +1 -0
  473. package/dist/modules/grid_price_source.js +23 -0
  474. package/dist/modules/grid_price_source.js.map +1 -0
  475. package/dist/modules/key_store.d.ts +0 -5
  476. package/dist/modules/key_store.d.ts.map +1 -1
  477. package/dist/modules/key_store.js +1 -14
  478. package/dist/modules/key_store.js.map +1 -1
  479. package/dist/modules/launcher/bot_supervisor.d.ts.map +1 -1
  480. package/dist/modules/launcher/bot_supervisor.js +15 -26
  481. package/dist/modules/launcher/bot_supervisor.js.map +1 -1
  482. package/dist/modules/launcher/child_env.d.ts +1 -2
  483. package/dist/modules/launcher/child_env.d.ts.map +1 -1
  484. package/dist/modules/launcher/child_env.js +1 -1
  485. package/dist/modules/launcher/child_env.js.map +1 -1
  486. package/dist/modules/launcher/foreign_cred_daemon.d.ts.map +1 -1
  487. package/dist/modules/launcher/foreign_cred_daemon.js +7 -13
  488. package/dist/modules/launcher/foreign_cred_daemon.js.map +1 -1
  489. package/dist/modules/launcher/market_adapter_runtime.d.ts +3 -4
  490. package/dist/modules/launcher/market_adapter_runtime.d.ts.map +1 -1
  491. package/dist/modules/launcher/market_adapter_runtime.js +10 -29
  492. package/dist/modules/launcher/market_adapter_runtime.js.map +1 -1
  493. package/dist/modules/launcher/market_adapter_watchdog.d.ts.map +1 -1
  494. package/dist/modules/launcher/market_adapter_watchdog.js +3 -2
  495. package/dist/modules/launcher/market_adapter_watchdog.js.map +1 -1
  496. package/dist/modules/launcher/monolithic_runtime.d.ts +0 -1
  497. package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -1
  498. package/dist/modules/launcher/monolithic_runtime.js +4 -18
  499. package/dist/modules/launcher/monolithic_runtime.js.map +1 -1
  500. package/dist/modules/launcher/runtime_entry.d.ts.map +1 -1
  501. package/dist/modules/launcher/runtime_entry.js +4 -5
  502. package/dist/modules/launcher/runtime_entry.js.map +1 -1
  503. package/dist/modules/launcher/status_reporting.d.ts +1 -2
  504. package/dist/modules/launcher/status_reporting.d.ts.map +1 -1
  505. package/dist/modules/launcher/status_reporting.js +2 -5
  506. package/dist/modules/launcher/status_reporting.js.map +1 -1
  507. package/dist/modules/launcher/supervisor_control.js +1 -1
  508. package/dist/modules/launcher/supervisor_control.js.map +1 -1
  509. package/dist/modules/market_adapter_whitelist.d.ts +2 -2
  510. package/dist/modules/market_adapter_whitelist.d.ts.map +1 -1
  511. package/dist/modules/market_adapter_whitelist.js +12 -6
  512. package/dist/modules/market_adapter_whitelist.js.map +1 -1
  513. package/dist/modules/node_failure_ledger.d.ts +23 -0
  514. package/dist/modules/node_failure_ledger.d.ts.map +1 -1
  515. package/dist/modules/node_failure_ledger.js +0 -23
  516. package/dist/modules/node_failure_ledger.js.map +1 -1
  517. package/dist/modules/node_manager.d.ts.map +1 -1
  518. package/dist/modules/node_manager.js +3 -3
  519. package/dist/modules/node_manager.js.map +1 -1
  520. package/dist/modules/order/accounting.js +3 -3
  521. package/dist/modules/order/accounting.js.map +1 -1
  522. package/dist/modules/order/async_lock.d.ts +6 -0
  523. package/dist/modules/order/async_lock.d.ts.map +1 -1
  524. package/dist/modules/order/async_lock.js +11 -0
  525. package/dist/modules/order/async_lock.js.map +1 -1
  526. package/dist/modules/order/export.d.ts +1 -1
  527. package/dist/modules/order/export.js +10 -10
  528. package/dist/modules/order/export.js.map +1 -1
  529. package/dist/modules/order/format.d.ts +1 -8
  530. package/dist/modules/order/format.d.ts.map +1 -1
  531. package/dist/modules/order/format.js +0 -14
  532. package/dist/modules/order/format.js.map +1 -1
  533. package/dist/modules/order/grid.d.ts +2 -12
  534. package/dist/modules/order/grid.d.ts.map +1 -1
  535. package/dist/modules/order/grid.js +23 -24
  536. package/dist/modules/order/grid.js.map +1 -1
  537. package/dist/modules/order/grid_reconcile.d.ts +1 -1
  538. package/dist/modules/order/grid_reconcile.js +1 -1
  539. package/dist/modules/order/grid_reconcile_internal.js +1 -1
  540. package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
  541. package/dist/modules/order/logger.d.ts +3 -0
  542. package/dist/modules/order/logger.d.ts.map +1 -1
  543. package/dist/modules/order/logger.js +23 -14
  544. package/dist/modules/order/logger.js.map +1 -1
  545. package/dist/modules/order/logger_state.d.ts +5 -22
  546. package/dist/modules/order/logger_state.d.ts.map +1 -1
  547. package/dist/modules/order/logger_state.js +6 -25
  548. package/dist/modules/order/logger_state.js.map +1 -1
  549. package/dist/modules/order/manager.d.ts +1 -4
  550. package/dist/modules/order/manager.d.ts.map +1 -1
  551. package/dist/modules/order/manager.js +34 -33
  552. package/dist/modules/order/manager.js.map +1 -1
  553. package/dist/modules/order/processed_fill_store.d.ts +0 -5
  554. package/dist/modules/order/processed_fill_store.d.ts.map +1 -1
  555. package/dist/modules/order/processed_fill_store.js +10 -15
  556. package/dist/modules/order/processed_fill_store.js.map +1 -1
  557. package/dist/modules/order/strategy.d.ts +6 -4
  558. package/dist/modules/order/strategy.d.ts.map +1 -1
  559. package/dist/modules/order/strategy.js +6 -4
  560. package/dist/modules/order/strategy.js.map +1 -1
  561. package/dist/modules/order/sync_engine.d.ts.map +1 -1
  562. package/dist/modules/order/sync_engine.js +17 -10
  563. package/dist/modules/order/sync_engine.js.map +1 -1
  564. package/dist/modules/order/utils/math.d.ts +7 -1
  565. package/dist/modules/order/utils/math.d.ts.map +1 -1
  566. package/dist/modules/order/utils/math.js +19 -1
  567. package/dist/modules/order/utils/math.js.map +1 -1
  568. package/dist/modules/order/utils/order.d.ts.map +1 -1
  569. package/dist/modules/order/utils/order.js +11 -4
  570. package/dist/modules/order/utils/order.js.map +1 -1
  571. package/dist/modules/order/utils/system.d.ts +3 -8
  572. package/dist/modules/order/utils/system.d.ts.map +1 -1
  573. package/dist/modules/order/utils/system.js +14 -4
  574. package/dist/modules/order/utils/system.js.map +1 -1
  575. package/dist/modules/order/utils/validate.js +1 -1
  576. package/dist/modules/order/utils/validate.js.map +1 -1
  577. package/dist/modules/path_api.js +1 -1
  578. package/dist/modules/path_api.js.map +1 -1
  579. package/dist/modules/paths.d.ts +1 -7
  580. package/dist/modules/paths.d.ts.map +1 -1
  581. package/dist/modules/paths.js +1 -1
  582. package/dist/modules/paths.js.map +1 -1
  583. package/dist/modules/process_discovery.d.ts +3 -0
  584. package/dist/modules/process_discovery.d.ts.map +1 -1
  585. package/dist/modules/process_discovery.js +15 -1
  586. package/dist/modules/process_discovery.js.map +1 -1
  587. package/dist/modules/runtime_settings.js +4 -2
  588. package/dist/modules/runtime_settings.js.map +1 -1
  589. package/dist/modules/settings_merge.d.ts +5 -1
  590. package/dist/modules/settings_merge.d.ts.map +1 -1
  591. package/dist/modules/settings_merge.js +17 -4
  592. package/dist/modules/settings_merge.js.map +1 -1
  593. package/dist/modules/socket_json_client.d.ts.map +1 -1
  594. package/dist/modules/socket_json_client.js +12 -2
  595. package/dist/modules/socket_json_client.js.map +1 -1
  596. package/dist/modules/storage/browser_adapter.d.ts +8 -3
  597. package/dist/modules/storage/browser_adapter.d.ts.map +1 -1
  598. package/dist/modules/storage/browser_adapter.js +58 -7
  599. package/dist/modules/storage/browser_adapter.js.map +1 -1
  600. package/dist/modules/storage/index.d.ts +1 -1
  601. package/dist/modules/storage/index.js +1 -1
  602. package/dist/modules/types.d.ts +1 -1
  603. package/dist/modules/types.d.ts.map +1 -1
  604. package/dist/modules/utils/sanitize_key.d.ts +7 -0
  605. package/dist/modules/utils/sanitize_key.d.ts.map +1 -0
  606. package/dist/modules/utils/sanitize_key.js +15 -0
  607. package/dist/modules/utils/sanitize_key.js.map +1 -0
  608. package/dist/modules/validate_profiles.d.ts.map +1 -1
  609. package/dist/modules/validate_profiles.js +6 -8
  610. package/dist/modules/validate_profiles.js.map +1 -1
  611. package/dist/pm2.d.ts.map +1 -1
  612. package/dist/pm2.js +8 -9
  613. package/dist/pm2.js.map +1 -1
  614. package/dist/scripts/analyze-git.d.ts +1 -1
  615. package/dist/scripts/analyze-git.js +1 -1
  616. package/dist/scripts/analyze-orders.d.ts +2 -2
  617. package/dist/scripts/analyze-orders.d.ts.map +1 -1
  618. package/dist/scripts/analyze-orders.js +39 -28
  619. package/dist/scripts/analyze-orders.js.map +1 -1
  620. package/dist/scripts/diagnose-pool-history.js +1 -1
  621. package/dist/scripts/divergence-calc.d.ts +1 -1
  622. package/dist/scripts/divergence-calc.js +3 -3
  623. package/dist/scripts/native_release_gates.js +4 -2
  624. package/dist/scripts/native_release_gates.js.map +1 -1
  625. package/dist/scripts/print_grid.d.ts +1 -1
  626. package/dist/scripts/print_grid.js +1 -1
  627. package/dist/scripts/run-tests.js +38 -19
  628. package/dist/scripts/run-tests.js.map +1 -1
  629. package/dist/scripts/runner.d.ts +3 -5
  630. package/dist/scripts/runner.d.ts.map +1 -1
  631. package/dist/scripts/runner.js +4 -6
  632. package/dist/scripts/runner.js.map +1 -1
  633. package/dist/scripts/sync-version.d.ts +2 -2
  634. package/dist/scripts/sync-version.js +2 -2
  635. package/dist/scripts/update.d.ts +1 -1
  636. package/dist/scripts/update.js +2 -2
  637. package/dist/scripts/update.js.map +1 -1
  638. package/dist/scripts/validate_bots.d.ts +1 -1
  639. package/dist/scripts/validate_bots.js +1 -1
  640. package/dist/scripts/verify-browser-bundle.d.ts +1 -1
  641. package/dist/scripts/verify-browser-bundle.js +1 -1
  642. package/dist/unlock.js +4 -4
  643. package/dist/unlock.js.map +1 -1
  644. package/docs/BITSHARES_ONBOARDING.md +63 -18
  645. package/docs/COPY_ON_WRITE_MASTER_PLAN.md +14 -23
  646. package/docs/COW_INVARIANTS.md +4 -4
  647. package/docs/CREDENTIAL_SECURITY.md +0 -11
  648. package/docs/DEXBOT_COMPARISON.md +12 -12
  649. package/docs/EVOLUTION.md +17 -43
  650. package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +27 -83
  651. package/docs/GRID_RECALCULATION.md +1 -13
  652. package/docs/GRID_RECONCILE.md +24 -24
  653. package/docs/LIFECYCLE.md +4 -4
  654. package/docs/LOGGING.md +1 -1
  655. package/docs/MPA_CREDIT_USAGE.md +3 -3
  656. package/docs/README.md +2 -2
  657. package/docs/WORKFLOW.md +2 -2
  658. package/docs/architecture.md +48 -43
  659. package/docs/developer_guide.md +22 -24
  660. package/market_adapter/README.md +0 -2
  661. package/modules/README.md +2 -1
  662. package/package.json +22 -14
  663. package/scripts/README.md +34 -8
  664. package/scripts/clean-dist.js +10 -2
  665. package/tests/README.md +4 -3
  666. package/claw/openclaw.plugin.json +0 -13
  667. package/dist/market_adapter/merge_lp_data.d.ts +0 -3
  668. package/dist/market_adapter/merge_lp_data.d.ts.map +0 -1
  669. package/dist/market_adapter/merge_lp_data.js +0 -125
  670. package/dist/market_adapter/merge_lp_data.js.map +0 -1
  671. package/dist/market_adapter/utils/paths.d.ts +0 -3
  672. package/dist/market_adapter/utils/paths.d.ts.map +0 -1
  673. package/dist/market_adapter/utils/paths.js +0 -5
  674. package/dist/market_adapter/utils/paths.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { roundTo } from '../../modules/order/utils/math.js';
2
1
  'use strict';
2
+ import { roundTo } from '../../modules/order/utils/math.js';
3
3
  /**
4
4
  * Derivative Analyzer
5
5
  *
@@ -184,6 +184,10 @@ class DerivativeAnalyzer {
184
184
  rsiBullThreshold;
185
185
  rsiBearThreshold;
186
186
  macdMinHist;
187
+ // Resolved threshold for the MACD-line gates: falls back to the historical
188
+ // 0.02 default only when unset/NaN, so an explicit 0 (strict sign test)
189
+ // stays expressible via the API.
190
+ macdLineGateThreshold;
187
191
  fastSmaCommitmentBars;
188
192
  trendFilterEnabled;
189
193
  trendFilterMinBars;
@@ -254,6 +258,11 @@ class DerivativeAnalyzer {
254
258
  this.rsiBullThreshold = config.rsiBullThreshold ?? 55;
255
259
  this.rsiBearThreshold = config.rsiBearThreshold ?? 45;
256
260
  this.macdMinHist = config.macdMinHist ?? 0;
261
+ // Unset/NaN → historical 0.02 gate default; explicit 0 → strict sign test.
262
+ // (`this.macdMinHist || 0.02` at the gates made explicit 0 unreachable.)
263
+ this.macdLineGateThreshold = config.macdMinHist != null && Number.isFinite(config.macdMinHist)
264
+ ? config.macdMinHist
265
+ : 0.02;
257
266
  this.fastSmaCommitmentBars = config.fastSmaCommitmentBars ?? 2;
258
267
  this.trendFilterEnabled = config.trendFilterEnabled ?? false;
259
268
  this.trendFilterMinBars = config.trendFilterMinBars ?? 3;
@@ -352,7 +361,7 @@ class DerivativeAnalyzer {
352
361
  // This ignores marginal crossings at ~0 and ensures signals only start when
353
362
  // momentum is clearly confirmed.
354
363
  if (this.macd && this.currMacd !== null) {
355
- const threshold = this.macdMinHist || 0.02;
364
+ const threshold = this.macdLineGateThreshold;
356
365
  if ((rawInterp === 'BEAR' || rawInterp === 'BEAR_WEAK') && this.currMacd.macd > -threshold)
357
366
  rawInterp = 'NEUTRAL';
358
367
  if ((rawInterp === 'BULL' || rawInterp === 'BULL_WEAK') && this.currMacd.macd < threshold)
@@ -658,7 +667,7 @@ class DerivativeAnalyzer {
658
667
  if (interp !== 'BULL' && interp !== 'BEAR')
659
668
  return false;
660
669
  if (this.macd && this.currMacd !== null) {
661
- const threshold = this.macdMinHist || 0.02;
670
+ const threshold = this.macdLineGateThreshold;
662
671
  if (interp === 'BULL' && this.currMacd.macd < threshold)
663
672
  return true;
664
673
  if (interp === 'BEAR' && this.currMacd.macd > -threshold)
@@ -1 +1 @@
1
- {"version":3,"file":"derivative_analyzer.js","sourceRoot":"","sources":["../../../analysis/trend_detection/derivative_analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derivative_analyzer.js","sourceRoot":"","sources":["../../../analysis/trend_detection/derivative_analyzer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic_weight_chart_generator.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/dynamic_weight_chart_generator.ts"],"names":[],"mappings":"AA8BA,iBAAS,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,SAA4B,UAk2CjE;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"dynamic_weight_chart_generator.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/dynamic_weight_chart_generator.ts"],"names":[],"mappings":"AA+BA,iBAAS,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,SAA4B,UA+1CjE;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -1,16 +1,17 @@
1
+ 'use strict';
1
2
  import { DEFAULT_CONFIG, MARKET_ADAPTER } from '../../modules/constants.js';
2
3
  import { getAmaWarmupBars } from '../../market_adapter/core/strategies/ama.js';
3
4
  import { bilinearInterpolate } from '../../market_adapter/core/strategies/regime_interp.js';
4
- import { computeDynamicWeightSeries, computeAverageAmaSlopePct, echoLatchSeries, roundToN } from '../../market_adapter/core/strategies/dynamic_weight_series.js';
5
+ import { computeDynamicWeightSeries, computeAverageAmaSlopePct, computeAmaSlopeClipThreshold, echoLatchSeries, roundToN } from '../../market_adapter/core/strategies/dynamic_weight_series.js';
5
6
  import { buildKalmanVelocitySeries, computeAbsolutePercentileThreshold, resolveKalmanVelocitySmoothingConfig, smoothKalmanVelocityPoint, } from '../../market_adapter/core/signals/kalman_velocity_smoothing.js';
6
7
  import { embedFunctionSources, escapeHtml, serializeJsonForScript, toEpochSeconds, UPLOT_SHARED_SCRIPT } from '../chart_utils.js';
7
8
  import { sharedChartCSS } from '../chart_css.js';
8
9
  import { Y_AXIS_SIZE, makeCursorConfig, bindHoverStateFn, wireChartEvents, zoomResetScript, sizeChartsFn } from '../chart_ui.js';
9
- 'use strict';
10
10
  // Browser-embedded shared functions — the interactive chart runs the exact same
11
11
  // pure logic as the live market adapter service instead of a hand-copied copy.
12
12
  const EMBEDDED_SHARED_FUNCS = embedFunctionSources([
13
13
  computeAverageAmaSlopePct,
14
+ computeAmaSlopeClipThreshold,
14
15
  bilinearInterpolate,
15
16
  echoLatchSeries,
16
17
  buildKalmanVelocitySeries,
@@ -28,7 +29,7 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
28
29
  // payload transport, and client paste-clamp bounds.
29
30
  const LB_MIN = 1, LB_MAX = 32;
30
31
  const GAIN_MIN = 0.5, GAIN_MAX = 2.0;
31
- const AMA_MS_MIN = 0.04, AMA_MS_MAX = 0.12;
32
+ const AMA_MS_MIN = 0.06, AMA_MS_MAX = 0.12;
32
33
  const KAL_MS_MIN = 0.5, KAL_MS_MAX = 1.5;
33
34
  const CLIP_PCT_MAX = 20;
34
35
  const TH_MIN = 0, TH_MAX = 0.5;
@@ -186,10 +187,15 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
186
187
  sorted.push(Math.abs(arr[i]));
187
188
  }
188
189
  sorted.sort((a, b) => a - b);
190
+ // Empty pool → Infinity: the live percentile lookup treats an empty
191
+ // history as "no clipping" (percentileFromSorted returns Infinity);
192
+ // collapsing to 0 here would clip every slope to ±0 instead.
193
+ if (sorted.length === 0)
194
+ return new Array(101).fill(Infinity);
189
195
  const pcts = [];
190
196
  for (let p = 0; p <= 100; p++) {
191
197
  const idx = Math.min(Math.floor(sorted.length * p / 100), sorted.length - 1);
192
- pcts.push(sorted[idx] || 0);
198
+ pcts.push(sorted[idx]);
193
199
  }
194
200
  return pcts;
195
201
  }
@@ -419,8 +425,11 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
419
425
  const gainValToSlider = (val) => Math.round((Math.log(Math.max(Math.exp(GAIN_LOG_MIN), val)) - GAIN_LOG_MIN) / (GAIN_LOG_MAX - GAIN_LOG_MIN) * 1000);
420
426
 
421
427
  let currentClipPct = data.clipPct ?? ${JSON.stringify(defaultClipPct)};
428
+ // Only the clipPct===0 branch value is ever read (recalcWeights reads
429
+ // currentAmaClipThreshold solely when clipping is disabled; otherwise
430
+ // it uses the canonical dynamicClipThreshold from computeAmaSlopeClipThreshold).
422
431
  const maxAmaSlope = data.amaPercentiles[data.amaPercentiles.length - 1];
423
- let currentAmaClipThreshold = currentClipPct === 0 ? maxAmaSlope : data.amaPercentiles[100 - currentClipPct];
432
+ let currentAmaClipThreshold = currentClipPct === 0 ? maxAmaSlope : Infinity;
424
433
  let currentKalClipThreshold = currentClipPct === 0 ? Infinity : data.kalPercentiles[100 - currentClipPct];
425
434
 
426
435
  // Regime table and axis nodes from payload — sourced from MARKET_ADAPTER in constants.ts
@@ -571,22 +580,11 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
571
580
  const amaErWarmup = Math.max(0, Number.isFinite(data.amaErPeriod) ? Math.ceil(data.amaErPeriod) : ${JSON.stringify(MARKET_ADAPTER.AMAS[MARKET_ADAPTER.DEFAULT_AMA_KEY].erPeriod)});
572
581
  const amaReadyBar = Math.max(lb, amaErWarmup + lb);
573
582
 
574
- // Recompute clip threshold based on current lookback
575
- dynamicClipThreshold = Infinity;
576
- if (currentClipPct > 0) {
577
- const slopes = [];
578
- for (let i = amaReadyBar; i < data.realBarCount; i++) {
579
- // Keep every finite slope (zeros included) — matches the live
580
- // market adapter service clip pool exactly.
581
- const s = computeAverageAmaSlopePct(data.ama3Prices[i], data.ama3Prices[i - lb], lb);
582
- if (Number.isFinite(s)) slopes.push(Math.abs(s));
583
- }
584
- if (slopes.length > 0) {
585
- slopes.sort((a, b) => a - b);
586
- const idx = Math.min(Math.floor((100 - currentClipPct) / 100 * slopes.length), slopes.length - 1);
587
- dynamicClipThreshold = slopes[idx];
588
- }
589
- }
583
+ // Recompute clip threshold based on current lookback — canonical
584
+ // implementation (computeAmaSlopeClipThreshold injected above),
585
+ // shared with the live market adapter service. Trailing padded
586
+ // nulls beyond realBarCount are skipped by its finiteness guards.
587
+ dynamicClipThreshold = computeAmaSlopeClipThreshold(data.ama3Prices, amaErWarmup, lb, currentClipPct);
590
588
 
591
589
  for (let i = 0; i < data.realBarCount; i++) {
592
590
  // AMA raw slope % for the display panel (offsets computed in recalcWeights)
@@ -772,7 +770,7 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
772
770
  const cRaw = combinedOff[idx];
773
771
  const cRawEl = document.getElementById('l-combined-raw');
774
772
  if (cRaw == null) { cRawEl.textContent = '-'; cRawEl.style.color = '#8b949e'; }
775
- else { cRawEl.textContent = (cRaw >= 0 ? '+' : '') + cRaw.toFixed(3); cRawEl.style.color = cRaw > 0.01 ? '#8b949e' : cRaw < -0.01 ? '#8b949e' : '#8b949e'; }
773
+ else { cRawEl.textContent = (cRaw >= 0 ? '+' : '') + cRaw.toFixed(3); cRawEl.style.color = '#8b949e'; }
776
774
 
777
775
  const cEcho = echoCombinedOff[idx];
778
776
  const cEchoEl = document.getElementById('l-combined-echo');
@@ -1000,7 +998,7 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
1000
998
  ],
1001
999
  axes: [
1002
1000
  makeTimeAxis(false),
1003
- { scale: 'p', stroke: '#ffffff', grid: { stroke: '#1c2128', dash: [4, 4] }, ticks: { stroke: '#30303d', width: 1 }, size: Y_AXIS_SIZE, font: '11px Segoe UI, sans-serif',
1001
+ { scale: 'p', stroke: '#ffffff', grid: { stroke: '#1c2128', dash: [4, 4] }, ticks: { stroke: '#30363d', width: 1 }, size: Y_AXIS_SIZE, font: '11px Segoe UI, sans-serif',
1004
1002
  values: (u, v) => v.map(x => x != null ? (x >= 0 ? '+' : '') + (x * 10).toFixed(2) + '‰' : '') }
1005
1003
  ],
1006
1004
  cursor: cursorCfg,
@@ -1018,7 +1016,7 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
1018
1016
  ],
1019
1017
  axes: [
1020
1018
  makeTimeAxis(false),
1021
- { scale: 'v', stroke: '#ffffff', grid: { stroke: '#1c2128', dash: [4, 4] }, ticks: { stroke: '#30303d', width: 1 }, size: Y_AXIS_SIZE, font: '11px Segoe UI, sans-serif',
1019
+ { scale: 'v', stroke: '#ffffff', grid: { stroke: '#1c2128', dash: [4, 4] }, ticks: { stroke: '#30363d', width: 1 }, size: Y_AXIS_SIZE, font: '11px Segoe UI, sans-serif',
1022
1020
  values: (u, v) => v.map(x => x != null ? (x >= 0 ? '+' : '') + x.toFixed(1) + '%' : '') }
1023
1021
  ],
1024
1022
  cursor: cursorCfg,
@@ -1043,7 +1041,7 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
1043
1041
  ],
1044
1042
  axes: [
1045
1043
  makeTimeAxis(true),
1046
- { scale: 'ow', stroke: '#ffffff', grid: { stroke: '#1c2128', dash: [4, 4] }, ticks: { stroke: '#30303d', width: 1 }, size: Y_AXIS_SIZE, font: '11px Segoe UI, sans-serif',
1044
+ { scale: 'ow', stroke: '#ffffff', grid: { stroke: '#1c2128', dash: [4, 4] }, ticks: { stroke: '#30363d', width: 1 }, size: Y_AXIS_SIZE, font: '11px Segoe UI, sans-serif',
1047
1045
  values: (u, v) => v.map(x => x != null ? (x >= 0 ? '+' : '') + x.toFixed(2) : ''),
1048
1046
  splits: () => { const m = Math.max(0.5, currentOutputAxisMax || 0.5); return [-m, -m/2, 0, m/2, m]; } }
1049
1047
  ],
@@ -1145,7 +1143,9 @@ function generateHTML(data, title = 'Dynamic Weight Research') {
1145
1143
  currentAmaClipThreshold = data.amaPercentiles[data.amaPercentiles.length - 1];
1146
1144
  currentKalClipThreshold = Infinity;
1147
1145
  } else {
1148
- currentAmaClipThreshold = data.amaPercentiles[100 - currentClipPct];
1146
+ // AMA clip threshold for clipPct>0 comes from the canonical
1147
+ // computeAmaSlopeClipThreshold inside recalcInputs() —
1148
+ // no percentile-table store needed here.
1149
1149
  recalcKalmanClipThreshold();
1150
1150
  }
1151
1151
  document.getElementById('clip-value').textContent = currentClipPct + '%';
@@ -1242,7 +1242,6 @@ function applyParams(p, btn) {
1242
1242
  currentAmaClipThreshold = data.amaPercentiles[data.amaPercentiles.length - 1];
1243
1243
  currentKalClipThreshold = Infinity;
1244
1244
  } else {
1245
- currentAmaClipThreshold = data.amaPercentiles[100 - currentClipPct];
1246
1245
  recalcKalmanClipThreshold();
1247
1246
  }
1248
1247
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic_weight_chart_generator.js","sourceRoot":"","sources":["../../../analysis/trend_detection/dynamic_weight_chart_generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dynamic_weight_chart_generator.js","sourceRoot":"","sources":["../../../analysis/trend_detection/dynamic_weight_chart_generator.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,5 @@
2
2
  * Re-export shim — canonical implementation lives in
3
3
  * market_adapter/core/signals/hurst_analyzer.ts.
4
4
  */
5
- export { HurstAnalyzer } from '../../market_adapter/core/signals/hurst_analyzer.js';
5
+ export { HurstAnalyzer, classifyHurst } from '../../market_adapter/core/signals/hurst_analyzer.js';
6
6
  //# sourceMappingURL=hurst_analyzer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hurst_analyzer.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/hurst_analyzer.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC"}
1
+ {"version":3,"file":"hurst_analyzer.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/hurst_analyzer.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC"}
@@ -3,5 +3,5 @@
3
3
  * Re-export shim — canonical implementation lives in
4
4
  * market_adapter/core/signals/hurst_analyzer.ts.
5
5
  */
6
- export { HurstAnalyzer } from '../../market_adapter/core/signals/hurst_analyzer.js';
6
+ export { HurstAnalyzer, classifyHurst } from '../../market_adapter/core/signals/hurst_analyzer.js';
7
7
  //# sourceMappingURL=hurst_analyzer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hurst_analyzer.js","sourceRoot":"","sources":["../../../analysis/trend_detection/hurst_analyzer.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC"}
1
+ {"version":3,"file":"hurst_analyzer.js","sourceRoot":"","sources":["../../../analysis/trend_detection/hurst_analyzer.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"kalman_chart_generator.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_chart_generator.ts"],"names":[],"mappings":"AAkBA,iBAAS,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,SAA+B,UA6VpE;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"kalman_chart_generator.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_chart_generator.ts"],"names":[],"mappings":"AAUA,iBAAS,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,SAA+B,UAiYpE;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -1,17 +1,10 @@
1
+ 'use strict';
2
+ import { MARKET_ADAPTER } from '../../modules/constants.js';
3
+ import { computeDynamicWeightSeries } from '../../market_adapter/core/strategies/dynamic_weight_series.js';
4
+ import { computeAbsolutePercentileThreshold } from '../../market_adapter/core/signals/kalman_velocity_smoothing.js';
1
5
  import { escapeHtml, serializeJsonForScript, toEpochSeconds, UPLOT_SHARED_SCRIPT } from '../chart_utils.js';
2
6
  import { sharedChartCSS } from '../chart_css.js';
3
7
  import { Y_AXIS_SIZE, makeCursorConfig, bindHoverStateFn, wireChartEvents, zoomResetScript, sizeChartsFn } from '../chart_ui.js';
4
- 'use strict';
5
- const NEUTRAL_ZONE_PCT = 0.15;
6
- const MAX_SLOPE_PCT = 3.0;
7
- const MAX_SLOPE_OFFSET = 0.5;
8
- function computeKalmanWeightOffset(velocityPct, isReady) {
9
- if (!isReady || velocityPct == null)
10
- return 0;
11
- if (Math.abs(velocityPct) < NEUTRAL_ZONE_PCT)
12
- return 0;
13
- return Math.max(-MAX_SLOPE_OFFSET, Math.min(MAX_SLOPE_OFFSET, (velocityPct / MAX_SLOPE_PCT) * MAX_SLOPE_OFFSET));
14
- }
15
8
  function generateHTML(data, title = 'Kalman Trajectory Analysis') {
16
9
  const results = data.allResults || [];
17
10
  if (results.length === 0)
@@ -24,7 +17,42 @@ function generateHTML(data, title = 'Kalman Trajectory Analysis') {
24
17
  const modalPrices = results.map((r) => r.modalPrice);
25
18
  const signals = results.map((r) => r.signal);
26
19
  const trendUp = results.map((r) => r.kalmanPrice != null && r.modalPrice != null ? r.kalmanPrice > r.modalPrice : null);
27
- const kalmanWeights = results.map((r) => computeKalmanWeightOffset(r.velocityFilteredPct ?? r.velocityPct, r.isReady));
20
+ // Kalman weight channel — canonical implementation shared with the live
21
+ // market adapter (computeDynamicWeightSeries), including the percentile
22
+ // clip threshold and the displacement-confidence/momentum-alignment
23
+ // composite the previous hand-rolled copy omitted.
24
+ const amaLb = MARKET_ADAPTER.DYNAMIC_WEIGHT_AMA_LOOKBACK_BARS;
25
+ const defaultAmaKey = MARKET_ADAPTER.DEFAULT_AMA_KEY;
26
+ const amaErPeriod = data.amaConfig?.erPeriod ?? MARKET_ADAPTER.AMAS[defaultAmaKey].erPeriod;
27
+ const clipPct = data.clipPct ?? MARKET_ADAPTER.DYNAMIC_WEIGHT_CLIP_PERCENTILE;
28
+ const velocityPct = results.map((r) => r.velocityFilteredPct ?? r.velocityPct ?? null);
29
+ const displacementPct = results.map((r) => r.displacementRawPct ?? r.displacementPct ?? null);
30
+ const isReady = results.map((r) => !!r.isReady);
31
+ const kalClipThreshold = clipPct > 0
32
+ ? computeAbsolutePercentileThreshold(velocityPct, clipPct, Infinity)
33
+ : Infinity;
34
+ const dwSeries = computeDynamicWeightSeries({
35
+ amaValues: prices, // AMA channel unused here; length driver only
36
+ kalmanVelocityPct: velocityPct,
37
+ kalmanDisplacementPct: displacementPct,
38
+ kalmanIsReady: isReady,
39
+ regimeMultipliers: undefined,
40
+ lookbackBars: amaLb,
41
+ amaErPeriod,
42
+ amaClipThreshold: Infinity,
43
+ kalClipThreshold,
44
+ neutralZonePct: MARKET_ADAPTER.DYNAMIC_WEIGHT_AMA_NEUTRAL_ZONE_PCT,
45
+ amaMaxSlopePct: MARKET_ADAPTER.DYNAMIC_WEIGHT_AMA_MAX_SLOPE_PCT,
46
+ kalmanMaxSlopePct: MARKET_ADAPTER.DYNAMIC_WEIGHT_KALMAN_MAX_SLOPE_PCT,
47
+ offsetClamp: MARKET_ADAPTER.DYNAMIC_WEIGHT_ASYMMETRIC_OFFSET_CLAMP,
48
+ dispScaleMinPct: MARKET_ADAPTER.DYNAMIC_WEIGHT_DISP_SCALE_MIN_PCT,
49
+ alpha: MARKET_ADAPTER.DYNAMIC_WEIGHT_ALPHA,
50
+ dw: MARKET_ADAPTER.DYNAMIC_WEIGHT_DW,
51
+ gain: MARKET_ADAPTER.DYNAMIC_WEIGHT_GAIN,
52
+ minOutputThreshold: MARKET_ADAPTER.DYNAMIC_WEIGHT_ASYMMETRIC_TREND_THRESHOLD,
53
+ signalConfirmBars: MARKET_ADAPTER.DYNAMIC_WEIGHT_SIGNAL_CONFIRM_BARS_DEFAULT,
54
+ });
55
+ const kalmanWeights = dwSeries.kalmanOffsets;
28
56
  const amaWeights = results.map((r) => r.amaWeightOffset ?? null);
29
57
  // Future Projection (150 bars)
30
58
  const lastDate = dates[dates.length - 1];
@@ -91,7 +119,7 @@ function generateHTML(data, title = 'Kalman Trajectory Analysis') {
91
119
  <div id="ama-panel">
92
120
  <div class="legend">
93
121
  <div class="legend-item"><div class="dot" style="background:linear-gradient(to bottom,#f0a000,#4a90d9);"></div>AMA Weight: <span id="l-ama-w" style="font-weight:bold;">-</span></div>
94
- <span style="color:#8b949e;font-size:10px;">lookback 72 bars &nbsp;·&nbsp; er10/2/30</span>
122
+ <span style="color:#8b949e;font-size:10px;">lookback ${amaLb} bars &nbsp;·&nbsp; er${escapeHtml(String(data.amaConfig?.erPeriod ?? amaErPeriod))}/${escapeHtml(String(data.amaConfig?.fastPeriod ?? MARKET_ADAPTER.AMAS[defaultAmaKey].fastPeriod))}/${escapeHtml(String(data.amaConfig?.slowPeriod ?? MARKET_ADAPTER.AMAS[defaultAmaKey].slowPeriod))}</span>
95
123
  </div>
96
124
  <div id="ama-chart"></div>
97
125
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"kalman_chart_generator.js","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_chart_generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kalman_chart_generator.js","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_chart_generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"regime_chart_generator.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/regime_chart_generator.ts"],"names":[],"mappings":"AAiCA,iBAAS,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,SAAoB,UA0R/D;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"regime_chart_generator.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/regime_chart_generator.ts"],"names":[],"mappings":"AA8CA,iBAAS,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,SAAoB,UAiS/D;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA"}