dexbot 1.4.17 → 1.4.18

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 (209) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/analysis/README.md +43 -43
  3. package/analysis/ama_fitting/README.md +8 -8
  4. package/analysis/ama_fitting/package.json +1 -1
  5. package/analysis/bot_fitting/README.md +4 -4
  6. package/analysis/bot_fitting/backtest_ama_sweep.ts +1 -1
  7. package/analysis/bot_usage/discover_bot_accounts.ts +11 -11
  8. package/analysis/tradingview/README.md +4 -4
  9. package/analysis/trend_detection/DYNAMIC_WEIGHT_RESEARCH.md +2 -2
  10. package/analysis/trend_detection/SIGNAL_DOCUMENTATION.md +1 -1
  11. package/analysis/trend_detection/package.json +1 -1
  12. package/claw/README.md +45 -45
  13. package/claw/docs/AI_BOT_LIBRARY_API.md +6 -6
  14. package/claw/examples/short_mpa_bts_strategy.ts +3 -3
  15. package/claw/package.json +21 -21
  16. package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
  17. package/claw/runtimes/openclaw-plugin/package.json +1 -1
  18. package/claw/scripts/claw_bridge.ts +2 -2
  19. package/claw/scripts/claw_skill_md.ts +1 -1
  20. package/claw/skills/launcher-ops/references/launcher-workflow.md +5 -5
  21. package/claw/skills/margin-trading/references/honest-asset-list.md +1 -1
  22. package/claw/skills/memu-memory/SKILL.md +3 -3
  23. package/claw/tests/test_claw_mcp_transport.ts +2 -2
  24. package/dist/analysis/ama_fitting/analyze_ama_price_changes.d.ts +3 -0
  25. package/dist/analysis/ama_fitting/analyze_ama_price_changes.d.ts.map +1 -0
  26. package/dist/analysis/ama_fitting/analyze_ama_price_changes.js +148 -0
  27. package/dist/analysis/ama_fitting/analyze_ama_price_changes.js.map +1 -0
  28. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts +12 -0
  29. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts.map +1 -0
  30. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js +389 -0
  31. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js.map +1 -0
  32. package/dist/analysis/ama_fitting/calibrate_convergence_er.d.ts +3 -0
  33. package/dist/analysis/ama_fitting/calibrate_convergence_er.d.ts.map +1 -0
  34. package/dist/analysis/ama_fitting/calibrate_convergence_er.js +200 -0
  35. package/dist/analysis/ama_fitting/calibrate_convergence_er.js.map +1 -0
  36. package/dist/analysis/ama_fitting/fetch_lp_candles.d.ts +3 -0
  37. package/dist/analysis/ama_fitting/fetch_lp_candles.d.ts.map +1 -0
  38. package/dist/analysis/ama_fitting/fetch_lp_candles.js +213 -0
  39. package/dist/analysis/ama_fitting/fetch_lp_candles.js.map +1 -0
  40. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts +25 -0
  41. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts.map +1 -0
  42. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js +247 -0
  43. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js.map +1 -0
  44. package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts +35 -0
  45. package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts.map +1 -0
  46. package/dist/analysis/ama_fitting/optimizer_high_resolution.js +782 -0
  47. package/dist/analysis/ama_fitting/optimizer_high_resolution.js.map +1 -0
  48. package/dist/analysis/analyze_derivatives.d.ts +86 -0
  49. package/dist/analysis/analyze_derivatives.d.ts.map +1 -0
  50. package/dist/analysis/analyze_derivatives.js +285 -0
  51. package/dist/analysis/analyze_derivatives.js.map +1 -0
  52. package/dist/analysis/analyze_dynamic_weight.d.ts +14 -0
  53. package/dist/analysis/analyze_dynamic_weight.d.ts.map +1 -0
  54. package/dist/analysis/analyze_dynamic_weight.js +197 -0
  55. package/dist/analysis/analyze_dynamic_weight.js.map +1 -0
  56. package/dist/analysis/analyze_kalman.d.ts +13 -0
  57. package/dist/analysis/analyze_kalman.d.ts.map +1 -0
  58. package/dist/analysis/analyze_kalman.js +118 -0
  59. package/dist/analysis/analyze_kalman.js.map +1 -0
  60. package/dist/analysis/analyze_regime.d.ts +20 -0
  61. package/dist/analysis/analyze_regime.d.ts.map +1 -0
  62. package/dist/analysis/analyze_regime.js +139 -0
  63. package/dist/analysis/analyze_regime.js.map +1 -0
  64. package/dist/analysis/analyze_regime_windows.d.ts +19 -0
  65. package/dist/analysis/analyze_regime_windows.d.ts.map +1 -0
  66. package/dist/analysis/analyze_regime_windows.js +414 -0
  67. package/dist/analysis/analyze_regime_windows.js.map +1 -0
  68. package/dist/analysis/analyze_risk_profile.d.ts +3 -0
  69. package/dist/analysis/analyze_risk_profile.d.ts.map +1 -0
  70. package/dist/analysis/analyze_risk_profile.js +186 -0
  71. package/dist/analysis/analyze_risk_profile.js.map +1 -0
  72. package/dist/analysis/analyze_trade_heatmap.d.ts +3 -0
  73. package/dist/analysis/analyze_trade_heatmap.d.ts.map +1 -0
  74. package/dist/analysis/analyze_trade_heatmap.js +358 -0
  75. package/dist/analysis/analyze_trade_heatmap.js.map +1 -0
  76. package/dist/analysis/analyze_volatility.d.ts +22 -0
  77. package/dist/analysis/analyze_volatility.d.ts.map +1 -0
  78. package/dist/analysis/analyze_volatility.js +165 -0
  79. package/dist/analysis/analyze_volatility.js.map +1 -0
  80. package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts +91 -0
  81. package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts.map +1 -0
  82. package/dist/analysis/bot_fitting/backtest_ama_sweep.js +792 -0
  83. package/dist/analysis/bot_fitting/backtest_ama_sweep.js.map +1 -0
  84. package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts +2 -0
  85. package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts.map +1 -0
  86. package/dist/analysis/bot_fitting/backtest_bot_fitting.js +380 -0
  87. package/dist/analysis/bot_fitting/backtest_bot_fitting.js.map +1 -0
  88. package/dist/analysis/bot_fitting/shared_utils.d.ts +26 -0
  89. package/dist/analysis/bot_fitting/shared_utils.d.ts.map +1 -0
  90. package/dist/analysis/bot_fitting/shared_utils.js +42 -0
  91. package/dist/analysis/bot_fitting/shared_utils.js.map +1 -0
  92. package/dist/analysis/bot_key_utils.d.ts +11 -0
  93. package/dist/analysis/bot_key_utils.d.ts.map +1 -0
  94. package/dist/analysis/bot_key_utils.js +153 -0
  95. package/dist/analysis/bot_key_utils.js.map +1 -0
  96. package/dist/analysis/bot_usage/discover_bot_accounts.d.ts +3 -0
  97. package/dist/analysis/bot_usage/discover_bot_accounts.d.ts.map +1 -0
  98. package/dist/analysis/bot_usage/discover_bot_accounts.js +499 -0
  99. package/dist/analysis/bot_usage/discover_bot_accounts.js.map +1 -0
  100. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +531 -0
  101. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -0
  102. package/dist/analysis/bot_usage/kibana_bot_queries.js +399 -0
  103. package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -0
  104. package/dist/analysis/chart_css.d.ts +17 -0
  105. package/dist/analysis/chart_css.d.ts.map +1 -0
  106. package/dist/analysis/chart_css.js +49 -0
  107. package/dist/analysis/chart_css.js.map +1 -0
  108. package/dist/analysis/chart_ui.d.ts +45 -0
  109. package/dist/analysis/chart_ui.d.ts.map +1 -0
  110. package/dist/analysis/chart_ui.js +97 -0
  111. package/dist/analysis/chart_ui.js.map +1 -0
  112. package/dist/analysis/chart_utils.d.ts +27 -0
  113. package/dist/analysis/chart_utils.d.ts.map +1 -0
  114. package/dist/analysis/chart_utils.js +153 -0
  115. package/dist/analysis/chart_utils.js.map +1 -0
  116. package/dist/analysis/derivative_chart_generator.d.ts +12 -0
  117. package/dist/analysis/derivative_chart_generator.d.ts.map +1 -0
  118. package/dist/analysis/derivative_chart_generator.js +891 -0
  119. package/dist/analysis/derivative_chart_generator.js.map +1 -0
  120. package/dist/analysis/math_utils.d.ts +22 -0
  121. package/dist/analysis/math_utils.d.ts.map +1 -0
  122. package/dist/analysis/math_utils.js +43 -0
  123. package/dist/analysis/math_utils.js.map +1 -0
  124. package/dist/analysis/price_sources.d.ts +40 -0
  125. package/dist/analysis/price_sources.d.ts.map +1 -0
  126. package/dist/analysis/price_sources.js +94 -0
  127. package/dist/analysis/price_sources.js.map +1 -0
  128. package/dist/analysis/resolve_source.d.ts +25 -0
  129. package/dist/analysis/resolve_source.d.ts.map +1 -0
  130. package/dist/analysis/resolve_source.js +69 -0
  131. package/dist/analysis/resolve_source.js.map +1 -0
  132. package/dist/analysis/trade_profitability.d.ts +115 -0
  133. package/dist/analysis/trade_profitability.d.ts.map +1 -0
  134. package/dist/analysis/trade_profitability.js +1240 -0
  135. package/dist/analysis/trade_profitability.js.map +1 -0
  136. package/dist/analysis/tradingview/analyze_tradingview.d.ts +31 -0
  137. package/dist/analysis/tradingview/analyze_tradingview.d.ts.map +1 -0
  138. package/dist/analysis/tradingview/analyze_tradingview.js +146 -0
  139. package/dist/analysis/tradingview/analyze_tradingview.js.map +1 -0
  140. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts +5 -0
  141. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts.map +1 -0
  142. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js +1714 -0
  143. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js.map +1 -0
  144. package/dist/analysis/trend_detection/derivative_analyzer.d.ts +247 -0
  145. package/dist/analysis/trend_detection/derivative_analyzer.d.ts.map +1 -0
  146. package/dist/analysis/trend_detection/derivative_analyzer.js +901 -0
  147. package/dist/analysis/trend_detection/derivative_analyzer.js.map +1 -0
  148. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts +3 -0
  149. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts.map +1 -0
  150. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js +1361 -0
  151. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js.map +1 -0
  152. package/dist/analysis/trend_detection/hurst_analyzer.d.ts +6 -0
  153. package/dist/analysis/trend_detection/hurst_analyzer.d.ts.map +1 -0
  154. package/dist/analysis/trend_detection/hurst_analyzer.js +7 -0
  155. package/dist/analysis/trend_detection/hurst_analyzer.js.map +1 -0
  156. package/dist/analysis/trend_detection/kalman_chart_generator.d.ts +3 -0
  157. package/dist/analysis/trend_detection/kalman_chart_generator.d.ts.map +1 -0
  158. package/dist/analysis/trend_detection/kalman_chart_generator.js +360 -0
  159. package/dist/analysis/trend_detection/kalman_chart_generator.js.map +1 -0
  160. package/dist/analysis/trend_detection/kalman_trend_analyzer.d.ts +8 -0
  161. package/dist/analysis/trend_detection/kalman_trend_analyzer.d.ts.map +1 -0
  162. package/dist/analysis/trend_detection/kalman_trend_analyzer.js +8 -0
  163. package/dist/analysis/trend_detection/kalman_trend_analyzer.js.map +1 -0
  164. package/dist/analysis/trend_detection/kalman_velocity_smoothing.d.ts +6 -0
  165. package/dist/analysis/trend_detection/kalman_velocity_smoothing.d.ts.map +1 -0
  166. package/dist/analysis/trend_detection/kalman_velocity_smoothing.js +7 -0
  167. package/dist/analysis/trend_detection/kalman_velocity_smoothing.js.map +1 -0
  168. package/dist/analysis/trend_detection/permutation_entropy_analyzer.d.ts +6 -0
  169. package/dist/analysis/trend_detection/permutation_entropy_analyzer.d.ts.map +1 -0
  170. package/dist/analysis/trend_detection/permutation_entropy_analyzer.js +7 -0
  171. package/dist/analysis/trend_detection/permutation_entropy_analyzer.js.map +1 -0
  172. package/dist/analysis/trend_detection/regime_chart_generator.d.ts +3 -0
  173. package/dist/analysis/trend_detection/regime_chart_generator.d.ts.map +1 -0
  174. package/dist/analysis/trend_detection/regime_chart_generator.js +310 -0
  175. package/dist/analysis/trend_detection/regime_chart_generator.js.map +1 -0
  176. package/dist/analysis/trend_detection/tests/test_kalman_trend.d.ts +2 -0
  177. package/dist/analysis/trend_detection/tests/test_kalman_trend.d.ts.map +1 -0
  178. package/dist/analysis/trend_detection/tests/test_kalman_trend.js +128 -0
  179. package/dist/analysis/trend_detection/tests/test_kalman_trend.js.map +1 -0
  180. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.d.ts +2 -0
  181. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.d.ts.map +1 -0
  182. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js +37 -0
  183. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js.map +1 -0
  184. package/dist/analysis/trend_detection/volatility_chart_generator.d.ts +3 -0
  185. package/dist/analysis/trend_detection/volatility_chart_generator.d.ts.map +1 -0
  186. package/dist/analysis/trend_detection/volatility_chart_generator.js +646 -0
  187. package/dist/analysis/trend_detection/volatility_chart_generator.js.map +1 -0
  188. package/dist/bot.js +1 -1
  189. package/dist/bot.js.map +1 -1
  190. package/dist/market_adapter/ama_signal_runner.js +1 -1
  191. package/dist/market_adapter/ama_signal_runner.js.map +1 -1
  192. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js +1 -1
  193. package/dist/scripts/generate_lp_chart.js +1 -1
  194. package/dist/scripts/test-credit-renewal.js +1 -1
  195. package/docs/DEXBOT_COMPARISON.md +3 -3
  196. package/docs/EVOLUTION.md +5 -4
  197. package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +1 -1
  198. package/docs/GRID_RECALCULATION.md +2 -2
  199. package/docs/README.md +1 -1
  200. package/market_adapter/README.md +23 -23
  201. package/package.json +17 -21
  202. package/scripts/README.md +12 -12
  203. package/scripts/bots +5 -7
  204. package/scripts/clear-market-adapter.sh +1 -1
  205. package/scripts/dexbot +5 -7
  206. package/scripts/keys +5 -7
  207. package/scripts/pm2 +5 -7
  208. package/scripts/unlock +5 -7
  209. package/scripts/update.js +6 -7
@@ -0,0 +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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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Re-export shim — canonical implementation lives in
3
+ * market_adapter/core/signals/hurst_analyzer.ts.
4
+ */
5
+ export { HurstAnalyzer } from '../../market_adapter/core/signals/hurst_analyzer.js';
6
+ //# sourceMappingURL=hurst_analyzer.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+ /**
3
+ * Re-export shim — canonical implementation lives in
4
+ * market_adapter/core/signals/hurst_analyzer.ts.
5
+ */
6
+ export { HurstAnalyzer } from '../../market_adapter/core/signals/hurst_analyzer.js';
7
+ //# sourceMappingURL=hurst_analyzer.js.map
@@ -0,0 +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"}
@@ -0,0 +1,3 @@
1
+ declare function generateHTML(data: any, title?: string): string;
2
+ export { generateHTML };
3
+ //# sourceMappingURL=kalman_chart_generator.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,360 @@
1
+ import { escapeHtml, serializeJsonForScript, toEpochSeconds, UPLOT_SHARED_SCRIPT } from '../chart_utils.js';
2
+ import { sharedChartCSS } from '../chart_css.js';
3
+ 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
+ function generateHTML(data, title = 'Kalman Trajectory Analysis') {
16
+ const results = data.allResults || [];
17
+ if (results.length === 0)
18
+ throw new Error('No analysis results in input');
19
+ const interval = results.length > 1 ?
20
+ (new Date(results[1].timestamp).getTime() - new Date(results[0].timestamp).getTime()) / 1000 : 3600;
21
+ const dates = results.map((r, idx) => toEpochSeconds(r.timestamp || Date.now(), idx));
22
+ const prices = results.map((r) => r.price);
23
+ const tacticalPrices = results.map((r) => r.kalmanPrice);
24
+ const modalPrices = results.map((r) => r.modalPrice);
25
+ const signals = results.map((r) => r.signal);
26
+ 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));
28
+ const amaWeights = results.map((r) => r.amaWeightOffset ?? null);
29
+ // Future Projection (150 bars)
30
+ const lastDate = dates[dates.length - 1];
31
+ for (let i = 1; i <= 150; i++) {
32
+ dates.push(lastDate + (i * interval));
33
+ prices.push(null);
34
+ tacticalPrices.push(null);
35
+ modalPrices.push(null);
36
+ signals.push(null);
37
+ trendUp.push(null);
38
+ kalmanWeights.push(null);
39
+ amaWeights.push(null);
40
+ }
41
+ // Extract dense Beams
42
+ const allBeams = [];
43
+ results.forEach((r, idx) => {
44
+ if (idx % 15 === 0 || (r.beams && r.beams.length > 0 && r.beams[r.beams.length - 1].originX === idx)) {
45
+ allBeams.push({
46
+ x: dates[idx],
47
+ y: r.kalmanPrice,
48
+ v: r.velocity,
49
+ endX: dates[idx] + (150 * interval),
50
+ endY: r.kalmanPrice + (r.velocity * 150)
51
+ });
52
+ }
53
+ });
54
+ return `<!DOCTYPE html>
55
+ <html lang="en">
56
+ <head>
57
+ <meta charset="UTF-8">
58
+ <title>${escapeHtml(title)}</title>
59
+ <link rel="stylesheet" href="../uplot/uPlot.min.css">
60
+ <script src="../uplot/uPlot.iife.min.js"></script>
61
+ <style>
62
+ ${sharedChartCSS()}
63
+ #price-panel { flex: 0 0 55%; min-height: 0; position: relative; border-bottom: 1px solid #30363d; }
64
+ #kalman-panel { flex: 0 0 23%; min-height: 0; position: relative; border-bottom: 1px solid #30363d; }
65
+ #ama-panel { flex: 1 1 0; min-height: 0; position: relative; }
66
+ </style>
67
+ </head>
68
+ <body>
69
+ <div id="header">
70
+ <div style="font-weight:bold;color:#fff;">${escapeHtml(title)}</div>
71
+ <div style="font-size:11px;color:#8b949e;text-transform:uppercase;">Log-Kinetic Trajectory Overlay &nbsp;·&nbsp; Scroll to zoom &nbsp;·&nbsp; Drag to pan &nbsp;·&nbsp; Ctrl+0 reset</div>
72
+ </div>
73
+
74
+ <div id="panels">
75
+ <div id="price-panel">
76
+ <div class="legend">
77
+ <div class="legend-item"><div class="dot" style="background:#58a6ff;"></div>Price: <span id="l-price">-</span></div>
78
+ <div class="legend-item"><div class="dot" style="background:#ff7b72;"></div>Tactical: <span id="l-tactical">-</span></div>
79
+ <div class="legend-item"><div class="dot" style="background:#d2a8ff;"></div>Modal: <span id="l-modal">-</span></div>
80
+ <div class="legend-item" style="margin-left:8px;">Trend: <span id="l-trend" style="font-weight:bold;">-</span></div>
81
+ </div>
82
+ <div id="main-chart"></div>
83
+ </div>
84
+ <div id="kalman-panel">
85
+ <div class="legend">
86
+ <div class="legend-item"><div class="dot" style="background:linear-gradient(to bottom,#2ea043,#f85149);"></div>Kalman Weight: <span id="l-kalman-w" style="font-weight:bold;">-</span></div>
87
+ <span style="color:#8b949e;font-size:10px;">sell bias ↑ &nbsp;/&nbsp; buy bias ↓ &nbsp;·&nbsp; neutral=0</span>
88
+ </div>
89
+ <div id="kalman-chart"></div>
90
+ </div>
91
+ <div id="ama-panel">
92
+ <div class="legend">
93
+ <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>
95
+ </div>
96
+ <div id="ama-chart"></div>
97
+ </div>
98
+ </div>
99
+
100
+ <script id="payload" type="application/json">${serializeJsonForScript({ dates, prices, tacticalPrices, modalPrices, signals, allBeams, trendUp, kalmanWeights, amaWeights })}</script>
101
+
102
+ <script>
103
+ const data = JSON.parse(document.getElementById('payload').textContent);
104
+ const SYNC_KEY = "kalman";
105
+
106
+ // ── Zoom / Pan ────────────────────────────────────────────────────────
107
+ const xMin = data.dates[0];
108
+ const xMax = data.dates[data.dates.length - 1];
109
+ let pendingRange = null;
110
+ let pendingRangeRaf = 0;
111
+ let priceChart, kalmanChart, amaChart;
112
+ let charts;
113
+
114
+ ${UPLOT_SHARED_SCRIPT}
115
+
116
+ // ── Legend ────────────────────────────────────────────────────────────
117
+ let lastLiveIdx = data.prices.length - 151; // last real bar (before future nulls)
118
+
119
+ function updateLegend(idx) {
120
+ if (idx == null) return;
121
+ lastLiveIdx = idx;
122
+
123
+ document.getElementById('l-price').textContent = data.prices[idx]?.toFixed(4) ?? "-";
124
+ document.getElementById('l-tactical').textContent = data.tacticalPrices[idx]?.toFixed(4) ?? "-";
125
+ document.getElementById('l-modal').textContent = data.modalPrices[idx]?.toFixed(4) ?? "-";
126
+
127
+ const trend = data.trendUp[idx];
128
+ const tEl = document.getElementById('l-trend');
129
+ if (trend === null || trend === undefined) { tEl.textContent = '-'; tEl.style.color = '#8b949e'; }
130
+ else if (trend) { tEl.textContent = 'UP'; tEl.style.color = '#2ea043'; }
131
+ else { tEl.textContent = 'DOWN'; tEl.style.color = '#f85149'; }
132
+
133
+ function setW(elId, v, posColor, negColor) {
134
+ const el = document.getElementById(elId);
135
+ if (v === null || v === undefined) { el.textContent = '-'; el.style.color = '#8b949e'; return; }
136
+ el.textContent = (v >= 0 ? '+' : '') + v.toFixed(3);
137
+ el.style.color = v > 0.01 ? posColor : v < -0.01 ? negColor : '#8b949e';
138
+ }
139
+ setW('l-kalman-w', data.kalmanWeights[idx], '#2ea043', '#f85149');
140
+ setW('l-ama-w', data.amaWeights[idx], '#f0a000', '#4a90d9');
141
+ }
142
+
143
+ // ── Draw hooks ────────────────────────────────────────────────────────
144
+ function makeTrendBgHook() {
145
+ return u => {
146
+ const { ctx, bbox } = u;
147
+ ctx.save();
148
+ ctx.beginPath(); ctx.rect(bbox.left, bbox.top, bbox.width, bbox.height); ctx.clip();
149
+ ctx.globalCompositeOperation = 'destination-over';
150
+ let i = 0;
151
+ while (i < data.trendUp.length) {
152
+ if (data.trendUp[i] === null) { i++; continue; }
153
+ const trend = data.trendUp[i];
154
+ let j = i + 1;
155
+ while (j < data.trendUp.length && data.trendUp[j] === trend) j++;
156
+ const x0 = u.valToPos(data.dates[i], 'x', true);
157
+ const x1 = j < data.trendUp.length ? u.valToPos(data.dates[j], 'x', true) : bbox.left + bbox.width;
158
+ ctx.fillStyle = trend ? 'rgba(46,160,67,0.08)' : 'rgba(248,81,73,0.08)';
159
+ ctx.fillRect(x0, bbox.top, x1 - x0, bbox.height);
160
+ i = j;
161
+ }
162
+ ctx.restore();
163
+ };
164
+ }
165
+
166
+ function makeBeamHook() {
167
+ return u => {
168
+ const { ctx } = u;
169
+ ctx.save();
170
+ data.allBeams.forEach(b => {
171
+ const x0 = u.valToPos(b.x, 'x', true);
172
+ const y0 = u.valToPos(b.y, 'y', true);
173
+ const x1 = u.valToPos(b.endX, 'x', true);
174
+ const y1 = u.valToPos(b.endY, 'y', true);
175
+ if (x0 < u.bbox.left || x0 > u.bbox.left + u.bbox.width) return;
176
+ ctx.lineWidth = 1;
177
+ ctx.strokeStyle = b.v > 0 ? "rgba(46,160,67,0.15)" : "rgba(248,81,73,0.15)";
178
+ ctx.beginPath(); ctx.moveTo(x0, y0); ctx.lineTo(x1, y1); ctx.stroke();
179
+ });
180
+ data.signals.forEach((s, i) => {
181
+ if (!s || s === 'NEUTRAL' || s === 'EQUILIBRIUM') return;
182
+ const x = u.valToPos(data.dates[i], 'x', true);
183
+ if (x < u.bbox.left || x > u.bbox.left + u.bbox.width) return;
184
+ const price = data.prices[i];
185
+ if (price == null) return;
186
+ const yPos = u.valToPos(price, 'y', true);
187
+ ctx.fillStyle = s.includes('BULL') ? "#2ea043" : "#f85149";
188
+ ctx.beginPath(); ctx.arc(x, s.includes('BULL') ? yPos - 15 : yPos + 15, 3.5, 0, Math.PI * 2); ctx.fill();
189
+ });
190
+ ctx.restore();
191
+ };
192
+ }
193
+
194
+ function makeWeightFillHook(values, scaleKey, posColor, negColor) {
195
+ return u => {
196
+ const { ctx, bbox } = u;
197
+ ctx.save();
198
+ ctx.beginPath(); ctx.rect(bbox.left, bbox.top, bbox.width, bbox.height); ctx.clip();
199
+
200
+ const zeroY = u.valToPos(0, scaleKey, true);
201
+ const path = new Path2D();
202
+ let inSeg = false, lastX = 0;
203
+
204
+ for (let i = 0; i < values.length; i++) {
205
+ const v = values[i];
206
+ if (v === null) { if (inSeg) { path.lineTo(lastX, zeroY); inSeg = false; } continue; }
207
+ const x = u.valToPos(data.dates[i], 'x', true);
208
+ const y = u.valToPos(v, scaleKey, true);
209
+ if (!inSeg) { path.moveTo(x, zeroY); path.lineTo(x, y); inSeg = true; }
210
+ else path.lineTo(x, y);
211
+ lastX = x;
212
+ }
213
+ if (inSeg) path.lineTo(lastX, zeroY);
214
+
215
+ ctx.save();
216
+ ctx.beginPath(); ctx.rect(bbox.left, bbox.top, bbox.width, zeroY - bbox.top); ctx.clip();
217
+ ctx.fillStyle = posColor; ctx.fill(path);
218
+ ctx.restore();
219
+
220
+ ctx.save();
221
+ ctx.beginPath(); ctx.rect(bbox.left, zeroY, bbox.width, bbox.top + bbox.height - zeroY); ctx.clip();
222
+ ctx.fillStyle = negColor; ctx.fill(path);
223
+ ctx.restore();
224
+
225
+ ctx.strokeStyle = 'rgba(255,255,255,0.35)'; ctx.lineWidth = 1; ctx.stroke(path);
226
+
227
+ ctx.strokeStyle = 'rgba(255,255,255,0.15)'; ctx.lineWidth = 1;
228
+ ctx.beginPath(); ctx.moveTo(bbox.left, zeroY); ctx.lineTo(bbox.left + bbox.width, zeroY); ctx.stroke();
229
+
230
+ ctx.restore();
231
+ };
232
+ }
233
+
234
+ // ── Shared cursor config ──────────────────────────────────────────────
235
+ const cursorCfg = ${makeCursorConfig()};
236
+
237
+ // ── Shared weight chart opts ──────────────────────────────────────────
238
+ function makeWeightOpts(el, scaleKey, values, posColor, negColor, showXAxis) {
239
+ return {
240
+ width: el.offsetWidth,
241
+ height: el.offsetHeight,
242
+ padding: [4, 8, 0, 4],
243
+ select: { show: false },
244
+ legend: { show: false },
245
+ scales: {
246
+ x: { time: true },
247
+ [scaleKey]: { range: () => [-0.55, 0.55] }
248
+ },
249
+ series: [
250
+ { label: 'Time' },
251
+ { label: 'Weight', stroke: 'transparent', scale: scaleKey, points: { show: false } }
252
+ ],
253
+ axes: [
254
+ {
255
+ show: showXAxis,
256
+ stroke: '#ffffff',
257
+ grid: { stroke: '#1c2128' },
258
+ ticks: { stroke: '#30363d', width: 1 },
259
+ size: 34,
260
+ font: '11px Segoe UI, sans-serif',
261
+ },
262
+ {
263
+ scale: scaleKey,
264
+ stroke: '#ffffff',
265
+ grid: { stroke: '#1c2128', dash: [4, 4] },
266
+ ticks: { stroke: '#30363d', width: 1 },
267
+ size: ${Y_AXIS_SIZE},
268
+ font: '11px Segoe UI, sans-serif',
269
+ values: (u, v) => v.map(x => x != null ? (x >= 0 ? '+' : '') + x.toFixed(2) : ''),
270
+ splits: () => [-0.5, -0.25, 0, 0.25, 0.5],
271
+ }
272
+ ],
273
+ cursor: cursorCfg,
274
+ hooks: { draw: [makeWeightFillHook(values, scaleKey, posColor, negColor)] }
275
+ };
276
+ }
277
+
278
+ // ── Chart init ────────────────────────────────────────────────────────
279
+ function init() {
280
+ const priceEl = document.getElementById('price-panel');
281
+ const kalmanEl = document.getElementById('kalman-panel');
282
+ const amaEl = document.getElementById('ama-panel');
283
+
284
+ priceChart = new uPlot({
285
+ width: priceEl.offsetWidth,
286
+ height: priceEl.offsetHeight,
287
+ padding: [4, 8, 0, 4],
288
+ select: { show: false },
289
+ legend: { show: false },
290
+ scales: {
291
+ x: { time: true },
292
+ y: { auto: true, distr: 3, log: 10, range: (u, min, max) => [min * 0.9, max * 1.1] }
293
+ },
294
+ series: [
295
+ { label: 'Time' },
296
+ { label: 'Price', stroke: '#58a6ff', width: 1.5, scale: 'y', points: { show: false } },
297
+ { label: 'Tactical', stroke: '#ff7b72', width: 2.5, scale: 'y', points: { show: false } },
298
+ { label: 'Modal', stroke: '#d2a8ff', width: 2, dash: [8,4], scale: 'y', points: { show: false } }
299
+ ],
300
+ axes: [
301
+ {
302
+ show: false,
303
+ stroke: '#ffffff',
304
+ grid: { stroke: '#1c2128' },
305
+ ticks: { stroke: '#30363d', width: 1 },
306
+ size: 34,
307
+ font: '11px Segoe UI, sans-serif',
308
+ },
309
+ {
310
+ scale: 'y',
311
+ stroke: '#ffffff',
312
+ grid: { stroke: '#1c2128' },
313
+ ticks: { stroke: '#30363d', width: 1 },
314
+ size: ${Y_AXIS_SIZE},
315
+ font: '11px Segoe UI, sans-serif',
316
+ values: (u, v) => v.map(x => x != null ? x.toFixed(4) : ''),
317
+ }
318
+ ],
319
+ cursor: cursorCfg,
320
+ hooks: { draw: [makeTrendBgHook(), makeBeamHook()] }
321
+ }, [data.dates, data.prices, data.tacticalPrices, data.modalPrices], document.getElementById('main-chart'));
322
+
323
+ kalmanChart = new uPlot(
324
+ makeWeightOpts(kalmanEl, 'kw', data.kalmanWeights,
325
+ 'rgba(46,160,67,0.30)', 'rgba(248,81,73,0.30)', false),
326
+ [data.dates, data.kalmanWeights],
327
+ document.getElementById('kalman-chart')
328
+ );
329
+
330
+ amaChart = new uPlot(
331
+ makeWeightOpts(amaEl, 'aw', data.amaWeights,
332
+ 'rgba(240,160,0,0.30)', 'rgba(74,144,217,0.30)', true),
333
+ [data.dates, data.amaWeights],
334
+ document.getElementById('ama-chart')
335
+ );
336
+
337
+ charts = [priceChart, kalmanChart, amaChart];
338
+
339
+ ${bindHoverStateFn()}
340
+ ${wireChartEvents('charts', 'updateLegend', 'lastLiveIdx')}
341
+ }
342
+
343
+ ${sizeChartsFn([['priceChart', 'price-panel'], ['kalmanChart', 'kalman-panel'], ['amaChart', 'ama-panel']])}
344
+
345
+ window.addEventListener('resize', sizeCharts);
346
+ ${zoomResetScript()}
347
+
348
+ init();
349
+
350
+ // After layout settles: size charts correctly and seed legend with last real bar
351
+ requestAnimationFrame(() => {
352
+ sizeCharts();
353
+ updateLegend(lastLiveIdx);
354
+ });
355
+ </script>
356
+ </body>
357
+ </html>`;
358
+ }
359
+ export { generateHTML };
360
+ //# sourceMappingURL=kalman_chart_generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kalman_chart_generator.js","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_chart_generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Re-export shim — canonical implementation lives in
3
+ * market_adapter/core/signals/kalman_trend_analyzer.ts so production, analysis
4
+ * tooling, and tests all resolve to one shared module.
5
+ */
6
+ export { KalmanTrendAnalyzer, KalmanFilter } from '../../market_adapter/core/signals/kalman_trend_analyzer.js';
7
+ export type { TrendAnalysis } from '../../market_adapter/core/signals/kalman_trend_analyzer.js';
8
+ //# sourceMappingURL=kalman_trend_analyzer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kalman_trend_analyzer.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_trend_analyzer.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,4DAA4D,CAAC;AAC/G,YAAY,EAAE,aAAa,EAAE,MAAM,4DAA4D,CAAC"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+ /**
3
+ * Re-export shim — canonical implementation lives in
4
+ * market_adapter/core/signals/kalman_trend_analyzer.ts so production, analysis
5
+ * tooling, and tests all resolve to one shared module.
6
+ */
7
+ export { KalmanTrendAnalyzer, KalmanFilter } from '../../market_adapter/core/signals/kalman_trend_analyzer.js';
8
+ //# sourceMappingURL=kalman_trend_analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kalman_trend_analyzer.js","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_trend_analyzer.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;;GAIG;AACH,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,4DAA4D,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Re-export shim — canonical implementation lives in
3
+ * market_adapter/core/signals/kalman_velocity_smoothing.ts.
4
+ */
5
+ export { buildKalmanVelocitySeries, computeAbsolutePercentileThreshold, resolveKalmanVelocitySmoothingConfig, smoothKalmanVelocityPoint, KALMAN_VELOCITY_DEFAULTS } from '../../market_adapter/core/signals/kalman_velocity_smoothing.js';
6
+ //# sourceMappingURL=kalman_velocity_smoothing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kalman_velocity_smoothing.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_velocity_smoothing.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,yBAAyB,EAAE,kCAAkC,EAAE,oCAAoC,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,gEAAgE,CAAC"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+ /**
3
+ * Re-export shim — canonical implementation lives in
4
+ * market_adapter/core/signals/kalman_velocity_smoothing.ts.
5
+ */
6
+ export { buildKalmanVelocitySeries, computeAbsolutePercentileThreshold, resolveKalmanVelocitySmoothingConfig, smoothKalmanVelocityPoint, KALMAN_VELOCITY_DEFAULTS } from '../../market_adapter/core/signals/kalman_velocity_smoothing.js';
7
+ //# sourceMappingURL=kalman_velocity_smoothing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kalman_velocity_smoothing.js","sourceRoot":"","sources":["../../../analysis/trend_detection/kalman_velocity_smoothing.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;GAGG;AACH,OAAO,EAAE,yBAAyB,EAAE,kCAAkC,EAAE,oCAAoC,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,gEAAgE,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Re-export shim — canonical implementation lives in
3
+ * market_adapter/core/signals/permutation_entropy_analyzer.ts.
4
+ */
5
+ export { PermutationEntropyAnalyzer } from '../../market_adapter/core/signals/permutation_entropy_analyzer.js';
6
+ //# sourceMappingURL=permutation_entropy_analyzer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permutation_entropy_analyzer.d.ts","sourceRoot":"","sources":["../../../analysis/trend_detection/permutation_entropy_analyzer.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,0BAA0B,EAAE,MAAM,mEAAmE,CAAC"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+ /**
3
+ * Re-export shim — canonical implementation lives in
4
+ * market_adapter/core/signals/permutation_entropy_analyzer.ts.
5
+ */
6
+ export { PermutationEntropyAnalyzer } from '../../market_adapter/core/signals/permutation_entropy_analyzer.js';
7
+ //# sourceMappingURL=permutation_entropy_analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permutation_entropy_analyzer.js","sourceRoot":"","sources":["../../../analysis/trend_detection/permutation_entropy_analyzer.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;GAGG;AACH,OAAO,EAAE,0BAA0B,EAAE,MAAM,mEAAmE,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare function generateRegimeHTML(data: any, title?: string): string;
2
+ export { generateRegimeHTML };
3
+ //# sourceMappingURL=regime_chart_generator.d.ts.map
@@ -0,0 +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"}