dexbot 1.1.10

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 (807) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +287 -0
  3. package/claw/README.md +513 -0
  4. package/claw/scripts/memu_runner.py +385 -0
  5. package/claw/skills/bitshares-guide/SKILL.md +14 -0
  6. package/claw/skills/bitshares-guide/references/example-skill-shells.md +18 -0
  7. package/claw/skills/bitshares-guide/references/presentation-patterns.md +19 -0
  8. package/claw/skills/bitshares-guide/references/scope-guardrails.md +9 -0
  9. package/claw/skills/launcher-ops/SKILL.md +18 -0
  10. package/claw/skills/launcher-ops/references/launcher-workflow.md +23 -0
  11. package/claw/skills/margin-trading/SKILL.md +23 -0
  12. package/claw/skills/margin-trading/references/honest-asset-list.md +74 -0
  13. package/claw/skills/margin-trading/references/honest-assets.md +44 -0
  14. package/claw/skills/margin-trading/references/position-management.md +203 -0
  15. package/claw/skills/margin-trading/references/trading-concepts.md +80 -0
  16. package/claw/skills/memu-memory/SKILL.md +218 -0
  17. package/claw/skills/shared/references/js-automation-overview.md +24 -0
  18. package/claw/skills/shared/references/safety-and-staleness.md +11 -0
  19. package/claw/skills/shared/references/skill-boundaries.md +17 -0
  20. package/claw/skills/trend-detection/SKILL.md +33 -0
  21. package/claw/skills/trend-detection/agents/openai.yaml +3 -0
  22. package/claw/skills/trend-detection/references/service.md +45 -0
  23. package/dist/analysis/ama_fitting/analyze_ama_price_changes.d.ts +3 -0
  24. package/dist/analysis/ama_fitting/analyze_ama_price_changes.d.ts.map +1 -0
  25. package/dist/analysis/ama_fitting/analyze_ama_price_changes.js +149 -0
  26. package/dist/analysis/ama_fitting/analyze_ama_price_changes.js.map +1 -0
  27. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts +3 -0
  28. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts.map +1 -0
  29. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js +387 -0
  30. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js.map +1 -0
  31. package/dist/analysis/ama_fitting/calibrate_convergence_er.d.ts +3 -0
  32. package/dist/analysis/ama_fitting/calibrate_convergence_er.d.ts.map +1 -0
  33. package/dist/analysis/ama_fitting/calibrate_convergence_er.js +200 -0
  34. package/dist/analysis/ama_fitting/calibrate_convergence_er.js.map +1 -0
  35. package/dist/analysis/ama_fitting/fetch_lp_candles.d.ts +3 -0
  36. package/dist/analysis/ama_fitting/fetch_lp_candles.d.ts.map +1 -0
  37. package/dist/analysis/ama_fitting/fetch_lp_candles.js +212 -0
  38. package/dist/analysis/ama_fitting/fetch_lp_candles.js.map +1 -0
  39. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts +31 -0
  40. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts.map +1 -0
  41. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js +249 -0
  42. package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js.map +1 -0
  43. package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts +2 -0
  44. package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts.map +1 -0
  45. package/dist/analysis/ama_fitting/optimizer_high_resolution.js +782 -0
  46. package/dist/analysis/ama_fitting/optimizer_high_resolution.js.map +1 -0
  47. package/dist/analysis/analyze_derivatives.d.ts +95 -0
  48. package/dist/analysis/analyze_derivatives.d.ts.map +1 -0
  49. package/dist/analysis/analyze_derivatives.js +295 -0
  50. package/dist/analysis/analyze_derivatives.js.map +1 -0
  51. package/dist/analysis/analyze_dynamic_weight.d.ts +14 -0
  52. package/dist/analysis/analyze_dynamic_weight.d.ts.map +1 -0
  53. package/dist/analysis/analyze_dynamic_weight.js +208 -0
  54. package/dist/analysis/analyze_dynamic_weight.js.map +1 -0
  55. package/dist/analysis/analyze_kalman.d.ts +13 -0
  56. package/dist/analysis/analyze_kalman.d.ts.map +1 -0
  57. package/dist/analysis/analyze_kalman.js +123 -0
  58. package/dist/analysis/analyze_kalman.js.map +1 -0
  59. package/dist/analysis/analyze_regime.d.ts +20 -0
  60. package/dist/analysis/analyze_regime.d.ts.map +1 -0
  61. package/dist/analysis/analyze_regime.js +139 -0
  62. package/dist/analysis/analyze_regime.js.map +1 -0
  63. package/dist/analysis/analyze_regime_windows.d.ts +19 -0
  64. package/dist/analysis/analyze_regime_windows.d.ts.map +1 -0
  65. package/dist/analysis/analyze_regime_windows.js +413 -0
  66. package/dist/analysis/analyze_regime_windows.js.map +1 -0
  67. package/dist/analysis/analyze_risk_profile.d.ts +3 -0
  68. package/dist/analysis/analyze_risk_profile.d.ts.map +1 -0
  69. package/dist/analysis/analyze_risk_profile.js +159 -0
  70. package/dist/analysis/analyze_risk_profile.js.map +1 -0
  71. package/dist/analysis/analyze_trade_heatmap.d.ts +3 -0
  72. package/dist/analysis/analyze_trade_heatmap.d.ts.map +1 -0
  73. package/dist/analysis/analyze_trade_heatmap.js +367 -0
  74. package/dist/analysis/analyze_trade_heatmap.js.map +1 -0
  75. package/dist/analysis/analyze_volatility.d.ts +22 -0
  76. package/dist/analysis/analyze_volatility.d.ts.map +1 -0
  77. package/dist/analysis/analyze_volatility.js +172 -0
  78. package/dist/analysis/analyze_volatility.js.map +1 -0
  79. package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts +99 -0
  80. package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts.map +1 -0
  81. package/dist/analysis/bot_fitting/backtest_ama_sweep.js +804 -0
  82. package/dist/analysis/bot_fitting/backtest_ama_sweep.js.map +1 -0
  83. package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts +2 -0
  84. package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts.map +1 -0
  85. package/dist/analysis/bot_fitting/backtest_bot_fitting.js +347 -0
  86. package/dist/analysis/bot_fitting/backtest_bot_fitting.js.map +1 -0
  87. package/dist/analysis/bot_fitting/shared_utils.d.ts +15 -0
  88. package/dist/analysis/bot_fitting/shared_utils.d.ts.map +1 -0
  89. package/dist/analysis/bot_fitting/shared_utils.js +48 -0
  90. package/dist/analysis/bot_fitting/shared_utils.js.map +1 -0
  91. package/dist/analysis/bot_key_utils.d.ts +16 -0
  92. package/dist/analysis/bot_key_utils.d.ts.map +1 -0
  93. package/dist/analysis/bot_key_utils.js +61 -0
  94. package/dist/analysis/bot_key_utils.js.map +1 -0
  95. package/dist/analysis/bot_usage/discover_bot_accounts.d.ts +3 -0
  96. package/dist/analysis/bot_usage/discover_bot_accounts.d.ts.map +1 -0
  97. package/dist/analysis/bot_usage/discover_bot_accounts.js +498 -0
  98. package/dist/analysis/bot_usage/discover_bot_accounts.js.map +1 -0
  99. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +546 -0
  100. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -0
  101. package/dist/analysis/bot_usage/kibana_bot_queries.js +427 -0
  102. package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -0
  103. package/dist/analysis/chart_utils.d.ts +13 -0
  104. package/dist/analysis/chart_utils.d.ts.map +1 -0
  105. package/dist/analysis/chart_utils.js +142 -0
  106. package/dist/analysis/chart_utils.js.map +1 -0
  107. package/dist/analysis/derivative_chart_generator.d.ts +18 -0
  108. package/dist/analysis/derivative_chart_generator.d.ts.map +1 -0
  109. package/dist/analysis/derivative_chart_generator.js +896 -0
  110. package/dist/analysis/derivative_chart_generator.js.map +1 -0
  111. package/dist/analysis/math_utils.d.ts +35 -0
  112. package/dist/analysis/math_utils.d.ts.map +1 -0
  113. package/dist/analysis/math_utils.js +121 -0
  114. package/dist/analysis/math_utils.js.map +1 -0
  115. package/dist/analysis/price_sources.d.ts +34 -0
  116. package/dist/analysis/price_sources.d.ts.map +1 -0
  117. package/dist/analysis/price_sources.js +103 -0
  118. package/dist/analysis/price_sources.js.map +1 -0
  119. package/dist/analysis/trade_profitability.d.ts +115 -0
  120. package/dist/analysis/trade_profitability.d.ts.map +1 -0
  121. package/dist/analysis/trade_profitability.js +1247 -0
  122. package/dist/analysis/trade_profitability.js.map +1 -0
  123. package/dist/analysis/tradingview/analyze_tradingview.d.ts +38 -0
  124. package/dist/analysis/tradingview/analyze_tradingview.d.ts.map +1 -0
  125. package/dist/analysis/tradingview/analyze_tradingview.js +212 -0
  126. package/dist/analysis/tradingview/analyze_tradingview.js.map +1 -0
  127. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts +9 -0
  128. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts.map +1 -0
  129. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js +1717 -0
  130. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js.map +1 -0
  131. package/dist/analysis/trend_detection/derivative_analyzer.d.ts +250 -0
  132. package/dist/analysis/trend_detection/derivative_analyzer.d.ts.map +1 -0
  133. package/dist/analysis/trend_detection/derivative_analyzer.js +903 -0
  134. package/dist/analysis/trend_detection/derivative_analyzer.js.map +1 -0
  135. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts +6 -0
  136. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts.map +1 -0
  137. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js +1449 -0
  138. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js.map +1 -0
  139. package/dist/analysis/trend_detection/hurst_analyzer.d.ts +42 -0
  140. package/dist/analysis/trend_detection/hurst_analyzer.d.ts.map +1 -0
  141. package/dist/analysis/trend_detection/hurst_analyzer.js +159 -0
  142. package/dist/analysis/trend_detection/hurst_analyzer.js.map +1 -0
  143. package/dist/analysis/trend_detection/kalman_chart_generator.d.ts +6 -0
  144. package/dist/analysis/trend_detection/kalman_chart_generator.d.ts.map +1 -0
  145. package/dist/analysis/trend_detection/kalman_chart_generator.js +408 -0
  146. package/dist/analysis/trend_detection/kalman_chart_generator.js.map +1 -0
  147. package/dist/analysis/trend_detection/kalman_trend_analyzer.d.ts +103 -0
  148. package/dist/analysis/trend_detection/kalman_trend_analyzer.d.ts.map +1 -0
  149. package/dist/analysis/trend_detection/kalman_trend_analyzer.js +229 -0
  150. package/dist/analysis/trend_detection/kalman_trend_analyzer.js.map +1 -0
  151. package/dist/analysis/trend_detection/kalman_velocity_smoothing.d.ts +34 -0
  152. package/dist/analysis/trend_detection/kalman_velocity_smoothing.d.ts.map +1 -0
  153. package/dist/analysis/trend_detection/kalman_velocity_smoothing.js +89 -0
  154. package/dist/analysis/trend_detection/kalman_velocity_smoothing.js.map +1 -0
  155. package/dist/analysis/trend_detection/permutation_entropy_analyzer.d.ts +39 -0
  156. package/dist/analysis/trend_detection/permutation_entropy_analyzer.d.ts.map +1 -0
  157. package/dist/analysis/trend_detection/permutation_entropy_analyzer.js +132 -0
  158. package/dist/analysis/trend_detection/permutation_entropy_analyzer.js.map +1 -0
  159. package/dist/analysis/trend_detection/regime_chart_generator.d.ts +6 -0
  160. package/dist/analysis/trend_detection/regime_chart_generator.d.ts.map +1 -0
  161. package/dist/analysis/trend_detection/regime_chart_generator.js +345 -0
  162. package/dist/analysis/trend_detection/regime_chart_generator.js.map +1 -0
  163. package/dist/analysis/trend_detection/tests/test_kalman_trend.d.ts +2 -0
  164. package/dist/analysis/trend_detection/tests/test_kalman_trend.d.ts.map +1 -0
  165. package/dist/analysis/trend_detection/tests/test_kalman_trend.js +130 -0
  166. package/dist/analysis/trend_detection/tests/test_kalman_trend.js.map +1 -0
  167. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.d.ts +2 -0
  168. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.d.ts.map +1 -0
  169. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js +38 -0
  170. package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js.map +1 -0
  171. package/dist/analysis/trend_detection/volatility_chart_generator.d.ts +6 -0
  172. package/dist/analysis/trend_detection/volatility_chart_generator.d.ts.map +1 -0
  173. package/dist/analysis/trend_detection/volatility_chart_generator.js +732 -0
  174. package/dist/analysis/trend_detection/volatility_chart_generator.js.map +1 -0
  175. package/dist/bot.d.ts +49 -0
  176. package/dist/bot.d.ts.map +1 -0
  177. package/dist/bot.js +221 -0
  178. package/dist/bot.js.map +1 -0
  179. package/dist/credential-daemon.d.ts +64 -0
  180. package/dist/credential-daemon.d.ts.map +1 -0
  181. package/dist/credential-daemon.js +987 -0
  182. package/dist/credential-daemon.js.map +1 -0
  183. package/dist/dexbot.d.ts +87 -0
  184. package/dist/dexbot.d.ts.map +1 -0
  185. package/dist/dexbot.js +1222 -0
  186. package/dist/dexbot.js.map +1 -0
  187. package/dist/market_adapter/ama_signal_runner.d.ts +3 -0
  188. package/dist/market_adapter/ama_signal_runner.d.ts.map +1 -0
  189. package/dist/market_adapter/ama_signal_runner.js +175 -0
  190. package/dist/market_adapter/ama_signal_runner.js.map +1 -0
  191. package/dist/market_adapter/candle_utils.d.ts +57 -0
  192. package/dist/market_adapter/candle_utils.d.ts.map +1 -0
  193. package/dist/market_adapter/candle_utils.js +252 -0
  194. package/dist/market_adapter/candle_utils.js.map +1 -0
  195. package/dist/market_adapter/core/asymmetric_bounds.d.ts +20 -0
  196. package/dist/market_adapter/core/asymmetric_bounds.d.ts.map +1 -0
  197. package/dist/market_adapter/core/asymmetric_bounds.js +88 -0
  198. package/dist/market_adapter/core/asymmetric_bounds.js.map +1 -0
  199. package/dist/market_adapter/core/config_normalizers.d.ts +10 -0
  200. package/dist/market_adapter/core/config_normalizers.d.ts.map +1 -0
  201. package/dist/market_adapter/core/config_normalizers.js +24 -0
  202. package/dist/market_adapter/core/config_normalizers.js.map +1 -0
  203. package/dist/market_adapter/core/kibana_candles.d.ts +74 -0
  204. package/dist/market_adapter/core/kibana_candles.d.ts.map +1 -0
  205. package/dist/market_adapter/core/kibana_candles.js +249 -0
  206. package/dist/market_adapter/core/kibana_candles.js.map +1 -0
  207. package/dist/market_adapter/core/kibana_client.d.ts +27 -0
  208. package/dist/market_adapter/core/kibana_client.d.ts.map +1 -0
  209. package/dist/market_adapter/core/kibana_client.js +120 -0
  210. package/dist/market_adapter/core/kibana_client.js.map +1 -0
  211. package/dist/market_adapter/core/kibana_market_candles.d.ts +143 -0
  212. package/dist/market_adapter/core/kibana_market_candles.d.ts.map +1 -0
  213. package/dist/market_adapter/core/kibana_market_candles.js +170 -0
  214. package/dist/market_adapter/core/kibana_market_candles.js.map +1 -0
  215. package/dist/market_adapter/core/market_adapter_service.d.ts +210 -0
  216. package/dist/market_adapter/core/market_adapter_service.d.ts.map +1 -0
  217. package/dist/market_adapter/core/market_adapter_service.js +2328 -0
  218. package/dist/market_adapter/core/market_adapter_service.js.map +1 -0
  219. package/dist/market_adapter/core/strategies/ama.d.ts +2 -0
  220. package/dist/market_adapter/core/strategies/ama.d.ts.map +1 -0
  221. package/dist/market_adapter/core/strategies/ama.js +138 -0
  222. package/dist/market_adapter/core/strategies/ama.js.map +1 -0
  223. package/dist/market_adapter/core/strategies/ama_slope_model.d.ts +50 -0
  224. package/dist/market_adapter/core/strategies/ama_slope_model.d.ts.map +1 -0
  225. package/dist/market_adapter/core/strategies/ama_slope_model.js +143 -0
  226. package/dist/market_adapter/core/strategies/ama_slope_model.js.map +1 -0
  227. package/dist/market_adapter/core/strategies/atr/calculator.d.ts +12 -0
  228. package/dist/market_adapter/core/strategies/atr/calculator.d.ts.map +1 -0
  229. package/dist/market_adapter/core/strategies/atr/calculator.js +47 -0
  230. package/dist/market_adapter/core/strategies/atr/calculator.js.map +1 -0
  231. package/dist/market_adapter/core/strategies/collateral_manager.d.ts +32 -0
  232. package/dist/market_adapter/core/strategies/collateral_manager.d.ts.map +1 -0
  233. package/dist/market_adapter/core/strategies/collateral_manager.js +68 -0
  234. package/dist/market_adapter/core/strategies/collateral_manager.js.map +1 -0
  235. package/dist/market_adapter/core/strategies/regime_gate.d.ts +66 -0
  236. package/dist/market_adapter/core/strategies/regime_gate.d.ts.map +1 -0
  237. package/dist/market_adapter/core/strategies/regime_gate.js +189 -0
  238. package/dist/market_adapter/core/strategies/regime_gate.js.map +1 -0
  239. package/dist/market_adapter/index.d.ts +10 -0
  240. package/dist/market_adapter/index.d.ts.map +1 -0
  241. package/dist/market_adapter/index.js +71 -0
  242. package/dist/market_adapter/index.js.map +1 -0
  243. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.d.ts +3 -0
  244. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.d.ts.map +1 -0
  245. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js +1165 -0
  246. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js.map +1 -0
  247. package/dist/market_adapter/inputs/fetch_lp_data.d.ts +54 -0
  248. package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -0
  249. package/dist/market_adapter/inputs/fetch_lp_data.js +743 -0
  250. package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -0
  251. package/dist/market_adapter/inputs/kibana_source.d.ts +68 -0
  252. package/dist/market_adapter/inputs/kibana_source.d.ts.map +1 -0
  253. package/dist/market_adapter/inputs/kibana_source.js +143 -0
  254. package/dist/market_adapter/inputs/kibana_source.js.map +1 -0
  255. package/dist/market_adapter/interval_utils.d.ts +6 -0
  256. package/dist/market_adapter/interval_utils.d.ts.map +1 -0
  257. package/dist/market_adapter/interval_utils.js +14 -0
  258. package/dist/market_adapter/interval_utils.js.map +1 -0
  259. package/dist/market_adapter/log_format.d.ts +16 -0
  260. package/dist/market_adapter/log_format.d.ts.map +1 -0
  261. package/dist/market_adapter/log_format.js +72 -0
  262. package/dist/market_adapter/log_format.js.map +1 -0
  263. package/dist/market_adapter/lp_chart_core.d.ts +6 -0
  264. package/dist/market_adapter/lp_chart_core.d.ts.map +1 -0
  265. package/dist/market_adapter/lp_chart_core.js +874 -0
  266. package/dist/market_adapter/lp_chart_core.js.map +1 -0
  267. package/dist/market_adapter/lp_chart_runner.d.ts +135 -0
  268. package/dist/market_adapter/lp_chart_runner.d.ts.map +1 -0
  269. package/dist/market_adapter/lp_chart_runner.js +337 -0
  270. package/dist/market_adapter/lp_chart_runner.js.map +1 -0
  271. package/dist/market_adapter/lp_chart_strategy_loader.d.ts +23 -0
  272. package/dist/market_adapter/lp_chart_strategy_loader.d.ts.map +1 -0
  273. package/dist/market_adapter/lp_chart_strategy_loader.js +169 -0
  274. package/dist/market_adapter/lp_chart_strategy_loader.js.map +1 -0
  275. package/dist/market_adapter/market_adapter.d.ts +133 -0
  276. package/dist/market_adapter/market_adapter.d.ts.map +1 -0
  277. package/dist/market_adapter/market_adapter.js +1331 -0
  278. package/dist/market_adapter/market_adapter.js.map +1 -0
  279. package/dist/market_adapter/merge_lp_data.d.ts +3 -0
  280. package/dist/market_adapter/merge_lp_data.d.ts.map +1 -0
  281. package/dist/market_adapter/merge_lp_data.js +125 -0
  282. package/dist/market_adapter/merge_lp_data.js.map +1 -0
  283. package/dist/market_adapter/test_helpers.d.ts +14 -0
  284. package/dist/market_adapter/test_helpers.d.ts.map +1 -0
  285. package/dist/market_adapter/test_helpers.js +22 -0
  286. package/dist/market_adapter/test_helpers.js.map +1 -0
  287. package/dist/market_adapter/utils/adapter_client.d.ts +20 -0
  288. package/dist/market_adapter/utils/adapter_client.d.ts.map +1 -0
  289. package/dist/market_adapter/utils/adapter_client.js +88 -0
  290. package/dist/market_adapter/utils/adapter_client.js.map +1 -0
  291. package/dist/market_adapter/utils/atomic_write.d.ts +9 -0
  292. package/dist/market_adapter/utils/atomic_write.d.ts.map +1 -0
  293. package/dist/market_adapter/utils/atomic_write.js +13 -0
  294. package/dist/market_adapter/utils/atomic_write.js.map +1 -0
  295. package/dist/market_adapter/utils/chain.d.ts +50 -0
  296. package/dist/market_adapter/utils/chain.d.ts.map +1 -0
  297. package/dist/market_adapter/utils/chain.js +196 -0
  298. package/dist/market_adapter/utils/chain.js.map +1 -0
  299. package/dist/market_adapter/utils/data_discovery.d.ts +6 -0
  300. package/dist/market_adapter/utils/data_discovery.d.ts.map +1 -0
  301. package/dist/market_adapter/utils/data_discovery.js +35 -0
  302. package/dist/market_adapter/utils/data_discovery.js.map +1 -0
  303. package/dist/market_adapter/utils/dynamic_grid_snapshot.d.ts +15 -0
  304. package/dist/market_adapter/utils/dynamic_grid_snapshot.d.ts.map +1 -0
  305. package/dist/market_adapter/utils/dynamic_grid_snapshot.js +60 -0
  306. package/dist/market_adapter/utils/dynamic_grid_snapshot.js.map +1 -0
  307. package/dist/market_adapter/utils/file_lock.d.ts +19 -0
  308. package/dist/market_adapter/utils/file_lock.d.ts.map +1 -0
  309. package/dist/market_adapter/utils/file_lock.js +191 -0
  310. package/dist/market_adapter/utils/file_lock.js.map +1 -0
  311. package/dist/market_adapter/utils/native_history.d.ts +19 -0
  312. package/dist/market_adapter/utils/native_history.d.ts.map +1 -0
  313. package/dist/market_adapter/utils/native_history.js +172 -0
  314. package/dist/market_adapter/utils/native_history.js.map +1 -0
  315. package/dist/market_adapter/utils/paths.d.ts +5 -0
  316. package/dist/market_adapter/utils/paths.d.ts.map +1 -0
  317. package/dist/market_adapter/utils/paths.js +7 -0
  318. package/dist/market_adapter/utils/paths.js.map +1 -0
  319. package/dist/modules/account_bots.d.ts +112 -0
  320. package/dist/modules/account_bots.d.ts.map +1 -0
  321. package/dist/modules/account_bots.js +1259 -0
  322. package/dist/modules/account_bots.js.map +1 -0
  323. package/dist/modules/account_orders.d.ts +273 -0
  324. package/dist/modules/account_orders.d.ts.map +1 -0
  325. package/dist/modules/account_orders.js +662 -0
  326. package/dist/modules/account_orders.js.map +1 -0
  327. package/dist/modules/authority_resolver.d.ts +2 -0
  328. package/dist/modules/authority_resolver.d.ts.map +1 -0
  329. package/dist/modules/authority_resolver.js +231 -0
  330. package/dist/modules/authority_resolver.js.map +1 -0
  331. package/dist/modules/bitshares-native/chain_client.d.ts +38 -0
  332. package/dist/modules/bitshares-native/chain_client.d.ts.map +1 -0
  333. package/dist/modules/bitshares-native/chain_client.js +322 -0
  334. package/dist/modules/bitshares-native/chain_client.js.map +1 -0
  335. package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts +59 -0
  336. package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts.map +1 -0
  337. package/dist/modules/bitshares-native/crypto/ecc.browser.js +456 -0
  338. package/dist/modules/bitshares-native/crypto/ecc.browser.js.map +1 -0
  339. package/dist/modules/bitshares-native/crypto/ecc.d.ts +66 -0
  340. package/dist/modules/bitshares-native/crypto/ecc.d.ts.map +1 -0
  341. package/dist/modules/bitshares-native/crypto/ecc.js +557 -0
  342. package/dist/modules/bitshares-native/crypto/ecc.js.map +1 -0
  343. package/dist/modules/bitshares-native/crypto/ecc_selector.d.ts +2 -0
  344. package/dist/modules/bitshares-native/crypto/ecc_selector.d.ts.map +1 -0
  345. package/dist/modules/bitshares-native/crypto/ecc_selector.js +20 -0
  346. package/dist/modules/bitshares-native/crypto/ecc_selector.js.map +1 -0
  347. package/dist/modules/bitshares-native/index.d.ts +3 -0
  348. package/dist/modules/bitshares-native/index.d.ts.map +1 -0
  349. package/dist/modules/bitshares-native/index.js +32 -0
  350. package/dist/modules/bitshares-native/index.js.map +1 -0
  351. package/dist/modules/bitshares-native/resolvers.d.ts +40 -0
  352. package/dist/modules/bitshares-native/resolvers.d.ts.map +1 -0
  353. package/dist/modules/bitshares-native/resolvers.js +161 -0
  354. package/dist/modules/bitshares-native/resolvers.js.map +1 -0
  355. package/dist/modules/bitshares-native/serial/chain_constants.d.ts +56 -0
  356. package/dist/modules/bitshares-native/serial/chain_constants.d.ts.map +1 -0
  357. package/dist/modules/bitshares-native/serial/chain_constants.js +92 -0
  358. package/dist/modules/bitshares-native/serial/chain_constants.js.map +1 -0
  359. package/dist/modules/bitshares-native/serial/index.d.ts +10 -0
  360. package/dist/modules/bitshares-native/serial/index.d.ts.map +1 -0
  361. package/dist/modules/bitshares-native/serial/index.js +14 -0
  362. package/dist/modules/bitshares-native/serial/index.js.map +1 -0
  363. package/dist/modules/bitshares-native/serial/operations.d.ts +102 -0
  364. package/dist/modules/bitshares-native/serial/operations.d.ts.map +1 -0
  365. package/dist/modules/bitshares-native/serial/operations.js +615 -0
  366. package/dist/modules/bitshares-native/serial/operations.js.map +1 -0
  367. package/dist/modules/bitshares-native/serial/serializer.d.ts +64 -0
  368. package/dist/modules/bitshares-native/serial/serializer.d.ts.map +1 -0
  369. package/dist/modules/bitshares-native/serial/serializer.js +252 -0
  370. package/dist/modules/bitshares-native/serial/serializer.js.map +1 -0
  371. package/dist/modules/bitshares-native/serial/types.d.ts +120 -0
  372. package/dist/modules/bitshares-native/serial/types.d.ts.map +1 -0
  373. package/dist/modules/bitshares-native/serial/types.js +837 -0
  374. package/dist/modules/bitshares-native/serial/types.js.map +1 -0
  375. package/dist/modules/bitshares-native/signing_client.d.ts +6 -0
  376. package/dist/modules/bitshares-native/signing_client.d.ts.map +1 -0
  377. package/dist/modules/bitshares-native/signing_client.js +141 -0
  378. package/dist/modules/bitshares-native/signing_client.js.map +1 -0
  379. package/dist/modules/bitshares-native/subscriptions.d.ts +6 -0
  380. package/dist/modules/bitshares-native/subscriptions.d.ts.map +1 -0
  381. package/dist/modules/bitshares-native/subscriptions.js +865 -0
  382. package/dist/modules/bitshares-native/subscriptions.js.map +1 -0
  383. package/dist/modules/bitshares-native/transport.d.ts +51 -0
  384. package/dist/modules/bitshares-native/transport.d.ts.map +1 -0
  385. package/dist/modules/bitshares-native/transport.js +447 -0
  386. package/dist/modules/bitshares-native/transport.js.map +1 -0
  387. package/dist/modules/bitshares-native/tx/builder.d.ts +30 -0
  388. package/dist/modules/bitshares-native/tx/builder.d.ts.map +1 -0
  389. package/dist/modules/bitshares-native/tx/builder.js +262 -0
  390. package/dist/modules/bitshares-native/tx/builder.js.map +1 -0
  391. package/dist/modules/bitshares_client.d.ts +129 -0
  392. package/dist/modules/bitshares_client.d.ts.map +1 -0
  393. package/dist/modules/bitshares_client.js +627 -0
  394. package/dist/modules/bitshares_client.js.map +1 -0
  395. package/dist/modules/bot_settings.d.ts +33 -0
  396. package/dist/modules/bot_settings.d.ts.map +1 -0
  397. package/dist/modules/bot_settings.js +328 -0
  398. package/dist/modules/bot_settings.js.map +1 -0
  399. package/dist/modules/bots_file_lock.d.ts +88 -0
  400. package/dist/modules/bots_file_lock.d.ts.map +1 -0
  401. package/dist/modules/bots_file_lock.js +161 -0
  402. package/dist/modules/bots_file_lock.js.map +1 -0
  403. package/dist/modules/chain_keys.d.ts +302 -0
  404. package/dist/modules/chain_keys.d.ts.map +1 -0
  405. package/dist/modules/chain_keys.js +1095 -0
  406. package/dist/modules/chain_keys.js.map +1 -0
  407. package/dist/modules/chain_orders.d.ts +423 -0
  408. package/dist/modules/chain_orders.d.ts.map +1 -0
  409. package/dist/modules/chain_orders.js +1201 -0
  410. package/dist/modules/chain_orders.js.map +1 -0
  411. package/dist/modules/cli_whitelist_args.d.ts +6 -0
  412. package/dist/modules/cli_whitelist_args.d.ts.map +1 -0
  413. package/dist/modules/cli_whitelist_args.js +13 -0
  414. package/dist/modules/cli_whitelist_args.js.map +1 -0
  415. package/dist/modules/config.d.ts +57 -0
  416. package/dist/modules/config.d.ts.map +1 -0
  417. package/dist/modules/config.js +107 -0
  418. package/dist/modules/config.js.map +1 -0
  419. package/dist/modules/constants.d.ts +635 -0
  420. package/dist/modules/constants.d.ts.map +1 -0
  421. package/dist/modules/constants.js +1464 -0
  422. package/dist/modules/constants.js.map +1 -0
  423. package/dist/modules/cr_planner.d.ts +51 -0
  424. package/dist/modules/cr_planner.d.ts.map +1 -0
  425. package/dist/modules/cr_planner.js +299 -0
  426. package/dist/modules/cr_planner.js.map +1 -0
  427. package/dist/modules/credential_policy.d.ts +188 -0
  428. package/dist/modules/credential_policy.d.ts.map +1 -0
  429. package/dist/modules/credential_policy.js +1452 -0
  430. package/dist/modules/credential_policy.js.map +1 -0
  431. package/dist/modules/credential_runtime.d.ts +42 -0
  432. package/dist/modules/credential_runtime.d.ts.map +1 -0
  433. package/dist/modules/credential_runtime.js +148 -0
  434. package/dist/modules/credential_runtime.js.map +1 -0
  435. package/dist/modules/credential_session_cache.d.ts +36 -0
  436. package/dist/modules/credential_session_cache.d.ts.map +1 -0
  437. package/dist/modules/credential_session_cache.js +106 -0
  438. package/dist/modules/credential_session_cache.js.map +1 -0
  439. package/dist/modules/credit_runtime.d.ts +412 -0
  440. package/dist/modules/credit_runtime.d.ts.map +1 -0
  441. package/dist/modules/credit_runtime.js +2866 -0
  442. package/dist/modules/credit_runtime.js.map +1 -0
  443. package/dist/modules/crypto/browser_provider.d.ts +15 -0
  444. package/dist/modules/crypto/browser_provider.d.ts.map +1 -0
  445. package/dist/modules/crypto/browser_provider.js +113 -0
  446. package/dist/modules/crypto/browser_provider.js.map +1 -0
  447. package/dist/modules/crypto/index.d.ts +9 -0
  448. package/dist/modules/crypto/index.d.ts.map +1 -0
  449. package/dist/modules/crypto/index.js +44 -0
  450. package/dist/modules/crypto/index.js.map +1 -0
  451. package/dist/modules/crypto/node_provider.d.ts +15 -0
  452. package/dist/modules/crypto/node_provider.d.ts.map +1 -0
  453. package/dist/modules/crypto/node_provider.js +74 -0
  454. package/dist/modules/crypto/node_provider.js.map +1 -0
  455. package/dist/modules/crypto/provider.d.ts +34 -0
  456. package/dist/modules/crypto/provider.d.ts.map +1 -0
  457. package/dist/modules/crypto/provider.js +3 -0
  458. package/dist/modules/crypto/provider.js.map +1 -0
  459. package/dist/modules/crypto/pure_ripemd160.d.ts +8 -0
  460. package/dist/modules/crypto/pure_ripemd160.d.ts.map +1 -0
  461. package/dist/modules/crypto/pure_ripemd160.js +142 -0
  462. package/dist/modules/crypto/pure_ripemd160.js.map +1 -0
  463. package/dist/modules/crypto/pure_scrypt.d.ts +23 -0
  464. package/dist/modules/crypto/pure_scrypt.d.ts.map +1 -0
  465. package/dist/modules/crypto/pure_scrypt.js +161 -0
  466. package/dist/modules/crypto/pure_scrypt.js.map +1 -0
  467. package/dist/modules/crypto/pure_secp256k1.d.ts +29 -0
  468. package/dist/modules/crypto/pure_secp256k1.d.ts.map +1 -0
  469. package/dist/modules/crypto/pure_secp256k1.js +195 -0
  470. package/dist/modules/crypto/pure_secp256k1.js.map +1 -0
  471. package/dist/modules/crypto/sync.d.ts +13 -0
  472. package/dist/modules/crypto/sync.d.ts.map +1 -0
  473. package/dist/modules/crypto/sync.js +37 -0
  474. package/dist/modules/crypto/sync.js.map +1 -0
  475. package/dist/modules/dexbot_class.d.ts +1074 -0
  476. package/dist/modules/dexbot_class.d.ts.map +1 -0
  477. package/dist/modules/dexbot_class.js +4613 -0
  478. package/dist/modules/dexbot_class.js.map +1 -0
  479. package/dist/modules/dexbot_credential_client.d.ts +71 -0
  480. package/dist/modules/dexbot_credential_client.d.ts.map +1 -0
  481. package/dist/modules/dexbot_credential_client.js +224 -0
  482. package/dist/modules/dexbot_credential_client.js.map +1 -0
  483. package/dist/modules/dexbot_fill_runtime.d.ts +173 -0
  484. package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -0
  485. package/dist/modules/dexbot_fill_runtime.js +217 -0
  486. package/dist/modules/dexbot_fill_runtime.js.map +1 -0
  487. package/dist/modules/dexbot_maintenance_runtime.d.ts +279 -0
  488. package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -0
  489. package/dist/modules/dexbot_maintenance_runtime.js +1613 -0
  490. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -0
  491. package/dist/modules/env.d.ts +12 -0
  492. package/dist/modules/env.d.ts.map +1 -0
  493. package/dist/modules/env.js +57 -0
  494. package/dist/modules/env.js.map +1 -0
  495. package/dist/modules/fund_registry.d.ts +96 -0
  496. package/dist/modules/fund_registry.d.ts.map +1 -0
  497. package/dist/modules/fund_registry.js +261 -0
  498. package/dist/modules/fund_registry.js.map +1 -0
  499. package/dist/modules/general_settings.d.ts +36 -0
  500. package/dist/modules/general_settings.d.ts.map +1 -0
  501. package/dist/modules/general_settings.js +63 -0
  502. package/dist/modules/general_settings.js.map +1 -0
  503. package/dist/modules/graceful_shutdown.d.ts +86 -0
  504. package/dist/modules/graceful_shutdown.d.ts.map +1 -0
  505. package/dist/modules/graceful_shutdown.js +164 -0
  506. package/dist/modules/graceful_shutdown.js.map +1 -0
  507. package/dist/modules/key_store.d.ts +60 -0
  508. package/dist/modules/key_store.d.ts.map +1 -0
  509. package/dist/modules/key_store.js +215 -0
  510. package/dist/modules/key_store.js.map +1 -0
  511. package/dist/modules/launcher/bot_supervisor.d.ts +84 -0
  512. package/dist/modules/launcher/bot_supervisor.d.ts.map +1 -0
  513. package/dist/modules/launcher/bot_supervisor.js +1067 -0
  514. package/dist/modules/launcher/bot_supervisor.js.map +1 -0
  515. package/dist/modules/launcher/child_env.d.ts +9 -0
  516. package/dist/modules/launcher/child_env.d.ts.map +1 -0
  517. package/dist/modules/launcher/child_env.js +78 -0
  518. package/dist/modules/launcher/child_env.js.map +1 -0
  519. package/dist/modules/launcher/credential_bootstrap.d.ts +22 -0
  520. package/dist/modules/launcher/credential_bootstrap.d.ts.map +1 -0
  521. package/dist/modules/launcher/credential_bootstrap.js +303 -0
  522. package/dist/modules/launcher/credential_bootstrap.js.map +1 -0
  523. package/dist/modules/launcher/credential_daemon.d.ts +32 -0
  524. package/dist/modules/launcher/credential_daemon.d.ts.map +1 -0
  525. package/dist/modules/launcher/credential_daemon.js +173 -0
  526. package/dist/modules/launcher/credential_daemon.js.map +1 -0
  527. package/dist/modules/launcher/credential_secret.d.ts +6 -0
  528. package/dist/modules/launcher/credential_secret.d.ts.map +1 -0
  529. package/dist/modules/launcher/credential_secret.js +15 -0
  530. package/dist/modules/launcher/credential_secret.js.map +1 -0
  531. package/dist/modules/launcher/foreign_cred_daemon.d.ts +2 -0
  532. package/dist/modules/launcher/foreign_cred_daemon.d.ts.map +1 -0
  533. package/dist/modules/launcher/foreign_cred_daemon.js +166 -0
  534. package/dist/modules/launcher/foreign_cred_daemon.js.map +1 -0
  535. package/dist/modules/launcher/headless_password.d.ts +8 -0
  536. package/dist/modules/launcher/headless_password.d.ts.map +1 -0
  537. package/dist/modules/launcher/headless_password.js +33 -0
  538. package/dist/modules/launcher/headless_password.js.map +1 -0
  539. package/dist/modules/launcher/launch_modes.d.ts +36 -0
  540. package/dist/modules/launcher/launch_modes.d.ts.map +1 -0
  541. package/dist/modules/launcher/launch_modes.js +129 -0
  542. package/dist/modules/launcher/launch_modes.js.map +1 -0
  543. package/dist/modules/launcher/market_adapter_runtime.d.ts +43 -0
  544. package/dist/modules/launcher/market_adapter_runtime.d.ts.map +1 -0
  545. package/dist/modules/launcher/market_adapter_runtime.js +217 -0
  546. package/dist/modules/launcher/market_adapter_runtime.js.map +1 -0
  547. package/dist/modules/launcher/market_adapter_watchdog.d.ts +26 -0
  548. package/dist/modules/launcher/market_adapter_watchdog.d.ts.map +1 -0
  549. package/dist/modules/launcher/market_adapter_watchdog.js +214 -0
  550. package/dist/modules/launcher/market_adapter_watchdog.js.map +1 -0
  551. package/dist/modules/launcher/monolithic_runtime.d.ts +89 -0
  552. package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -0
  553. package/dist/modules/launcher/monolithic_runtime.js +425 -0
  554. package/dist/modules/launcher/monolithic_runtime.js.map +1 -0
  555. package/dist/modules/launcher/runtime_entry.d.ts +26 -0
  556. package/dist/modules/launcher/runtime_entry.d.ts.map +1 -0
  557. package/dist/modules/launcher/runtime_entry.js +49 -0
  558. package/dist/modules/launcher/runtime_entry.js.map +1 -0
  559. package/dist/modules/launcher/status_reporting.d.ts +48 -0
  560. package/dist/modules/launcher/status_reporting.d.ts.map +1 -0
  561. package/dist/modules/launcher/status_reporting.js +113 -0
  562. package/dist/modules/launcher/status_reporting.js.map +1 -0
  563. package/dist/modules/launcher/supervisor_control.d.ts +6 -0
  564. package/dist/modules/launcher/supervisor_control.d.ts.map +1 -0
  565. package/dist/modules/launcher/supervisor_control.js +59 -0
  566. package/dist/modules/launcher/supervisor_control.js.map +1 -0
  567. package/dist/modules/logger.d.ts +2 -0
  568. package/dist/modules/logger.d.ts.map +1 -0
  569. package/dist/modules/logger.js +71 -0
  570. package/dist/modules/logger.js.map +1 -0
  571. package/dist/modules/market_adapter_whitelist.d.ts +22 -0
  572. package/dist/modules/market_adapter_whitelist.d.ts.map +1 -0
  573. package/dist/modules/market_adapter_whitelist.js +82 -0
  574. package/dist/modules/market_adapter_whitelist.js.map +1 -0
  575. package/dist/modules/node_health_cache.d.ts +55 -0
  576. package/dist/modules/node_health_cache.d.ts.map +1 -0
  577. package/dist/modules/node_health_cache.js +134 -0
  578. package/dist/modules/node_health_cache.js.map +1 -0
  579. package/dist/modules/node_manager.d.ts +215 -0
  580. package/dist/modules/node_manager.d.ts.map +1 -0
  581. package/dist/modules/node_manager.js +628 -0
  582. package/dist/modules/node_manager.js.map +1 -0
  583. package/dist/modules/order/accounting.d.ts +349 -0
  584. package/dist/modules/order/accounting.d.ts.map +1 -0
  585. package/dist/modules/order/accounting.js +1191 -0
  586. package/dist/modules/order/accounting.js.map +1 -0
  587. package/dist/modules/order/async_lock.d.ts +126 -0
  588. package/dist/modules/order/async_lock.d.ts.map +1 -0
  589. package/dist/modules/order/async_lock.js +195 -0
  590. package/dist/modules/order/async_lock.js.map +1 -0
  591. package/dist/modules/order/export.d.ts +129 -0
  592. package/dist/modules/order/export.d.ts.map +1 -0
  593. package/dist/modules/order/export.js +316 -0
  594. package/dist/modules/order/export.js.map +1 -0
  595. package/dist/modules/order/format.d.ts +158 -0
  596. package/dist/modules/order/format.d.ts.map +1 -0
  597. package/dist/modules/order/format.js +232 -0
  598. package/dist/modules/order/format.js.map +1 -0
  599. package/dist/modules/order/grid.d.ts +549 -0
  600. package/dist/modules/order/grid.d.ts.map +1 -0
  601. package/dist/modules/order/grid.js +1746 -0
  602. package/dist/modules/order/grid.js.map +1 -0
  603. package/dist/modules/order/grid_reconcile.d.ts +154 -0
  604. package/dist/modules/order/grid_reconcile.d.ts.map +1 -0
  605. package/dist/modules/order/grid_reconcile.js +1192 -0
  606. package/dist/modules/order/grid_reconcile.js.map +1 -0
  607. package/dist/modules/order/index.d.ts +55 -0
  608. package/dist/modules/order/index.d.ts.map +1 -0
  609. package/dist/modules/order/index.js +79 -0
  610. package/dist/modules/order/index.js.map +1 -0
  611. package/dist/modules/order/logger.d.ts +136 -0
  612. package/dist/modules/order/logger.d.ts.map +1 -0
  613. package/dist/modules/order/logger.js +614 -0
  614. package/dist/modules/order/logger.js.map +1 -0
  615. package/dist/modules/order/logger_state.d.ts +133 -0
  616. package/dist/modules/order/logger_state.d.ts.map +1 -0
  617. package/dist/modules/order/logger_state.js +170 -0
  618. package/dist/modules/order/logger_state.js.map +1 -0
  619. package/dist/modules/order/manager.d.ts +413 -0
  620. package/dist/modules/order/manager.d.ts.map +1 -0
  621. package/dist/modules/order/manager.js +1605 -0
  622. package/dist/modules/order/manager.js.map +1 -0
  623. package/dist/modules/order/processed_fill_store.d.ts +135 -0
  624. package/dist/modules/order/processed_fill_store.d.ts.map +1 -0
  625. package/dist/modules/order/processed_fill_store.js +288 -0
  626. package/dist/modules/order/processed_fill_store.js.map +1 -0
  627. package/dist/modules/order/runner.d.ts +70 -0
  628. package/dist/modules/order/runner.d.ts.map +1 -0
  629. package/dist/modules/order/runner.js +140 -0
  630. package/dist/modules/order/runner.js.map +1 -0
  631. package/dist/modules/order/strategy.d.ts +196 -0
  632. package/dist/modules/order/strategy.d.ts.map +1 -0
  633. package/dist/modules/order/strategy.js +398 -0
  634. package/dist/modules/order/strategy.js.map +1 -0
  635. package/dist/modules/order/sync_engine.d.ts +386 -0
  636. package/dist/modules/order/sync_engine.d.ts.map +1 -0
  637. package/dist/modules/order/sync_engine.js +1459 -0
  638. package/dist/modules/order/sync_engine.js.map +1 -0
  639. package/dist/modules/order/utils/math.d.ts +677 -0
  640. package/dist/modules/order/utils/math.d.ts.map +1 -0
  641. package/dist/modules/order/utils/math.js +1172 -0
  642. package/dist/modules/order/utils/math.js.map +1 -0
  643. package/dist/modules/order/utils/order.d.ts +572 -0
  644. package/dist/modules/order/utils/order.d.ts.map +1 -0
  645. package/dist/modules/order/utils/order.js +1145 -0
  646. package/dist/modules/order/utils/order.js.map +1 -0
  647. package/dist/modules/order/utils/system.d.ts +268 -0
  648. package/dist/modules/order/utils/system.d.ts.map +1 -0
  649. package/dist/modules/order/utils/system.js +1261 -0
  650. package/dist/modules/order/utils/system.js.map +1 -0
  651. package/dist/modules/order/utils/validate.d.ts +280 -0
  652. package/dist/modules/order/utils/validate.d.ts.map +1 -0
  653. package/dist/modules/order/utils/validate.js +918 -0
  654. package/dist/modules/order/utils/validate.js.map +1 -0
  655. package/dist/modules/order/working_grid.d.ts +212 -0
  656. package/dist/modules/order/working_grid.d.ts.map +1 -0
  657. package/dist/modules/order/working_grid.js +279 -0
  658. package/dist/modules/order/working_grid.js.map +1 -0
  659. package/dist/modules/path_api.d.ts +32 -0
  660. package/dist/modules/path_api.d.ts.map +1 -0
  661. package/dist/modules/path_api.js +148 -0
  662. package/dist/modules/path_api.js.map +1 -0
  663. package/dist/modules/paths.d.ts +58 -0
  664. package/dist/modules/paths.d.ts.map +1 -0
  665. package/dist/modules/paths.js +82 -0
  666. package/dist/modules/paths.js.map +1 -0
  667. package/dist/modules/process_discovery.d.ts +58 -0
  668. package/dist/modules/process_discovery.d.ts.map +1 -0
  669. package/dist/modules/process_discovery.js +265 -0
  670. package/dist/modules/process_discovery.js.map +1 -0
  671. package/dist/modules/runtime.d.ts +34 -0
  672. package/dist/modules/runtime.d.ts.map +1 -0
  673. package/dist/modules/runtime.js +98 -0
  674. package/dist/modules/runtime.js.map +1 -0
  675. package/dist/modules/runtime_settings.d.ts +12 -0
  676. package/dist/modules/runtime_settings.d.ts.map +1 -0
  677. package/dist/modules/runtime_settings.js +122 -0
  678. package/dist/modules/runtime_settings.js.map +1 -0
  679. package/dist/modules/settings_merge.d.ts +38 -0
  680. package/dist/modules/settings_merge.d.ts.map +1 -0
  681. package/dist/modules/settings_merge.js +246 -0
  682. package/dist/modules/settings_merge.js.map +1 -0
  683. package/dist/modules/storage/browser_adapter.d.ts +56 -0
  684. package/dist/modules/storage/browser_adapter.d.ts.map +1 -0
  685. package/dist/modules/storage/browser_adapter.js +231 -0
  686. package/dist/modules/storage/browser_adapter.js.map +1 -0
  687. package/dist/modules/storage/index.d.ts +28 -0
  688. package/dist/modules/storage/index.d.ts.map +1 -0
  689. package/dist/modules/storage/index.js +52 -0
  690. package/dist/modules/storage/index.js.map +1 -0
  691. package/dist/modules/storage/node_adapter.d.ts +49 -0
  692. package/dist/modules/storage/node_adapter.d.ts.map +1 -0
  693. package/dist/modules/storage/node_adapter.js +167 -0
  694. package/dist/modules/storage/node_adapter.js.map +1 -0
  695. package/dist/modules/storage/types.d.ts +92 -0
  696. package/dist/modules/storage/types.d.ts.map +1 -0
  697. package/dist/modules/storage/types.js +3 -0
  698. package/dist/modules/storage/types.js.map +1 -0
  699. package/dist/modules/types.d.ts +1382 -0
  700. package/dist/modules/types.d.ts.map +1 -0
  701. package/dist/modules/types.js +11 -0
  702. package/dist/modules/types.js.map +1 -0
  703. package/dist/modules/utils/base58check.d.ts +12 -0
  704. package/dist/modules/utils/base58check.d.ts.map +1 -0
  705. package/dist/modules/utils/base58check.js +112 -0
  706. package/dist/modules/utils/base58check.js.map +1 -0
  707. package/dist/modules/utils/build_dir.d.ts +7 -0
  708. package/dist/modules/utils/build_dir.d.ts.map +1 -0
  709. package/dist/modules/utils/build_dir.js +8 -0
  710. package/dist/modules/utils/build_dir.js.map +1 -0
  711. package/dist/modules/utils/fs_utils.d.ts +25 -0
  712. package/dist/modules/utils/fs_utils.d.ts.map +1 -0
  713. package/dist/modules/utils/fs_utils.js +27 -0
  714. package/dist/modules/utils/fs_utils.js.map +1 -0
  715. package/dist/modules/utils/math_utils.d.ts +10 -0
  716. package/dist/modules/utils/math_utils.d.ts.map +1 -0
  717. package/dist/modules/utils/math_utils.js +17 -0
  718. package/dist/modules/utils/math_utils.js.map +1 -0
  719. package/dist/modules/validate_profiles.d.ts +37 -0
  720. package/dist/modules/validate_profiles.d.ts.map +1 -0
  721. package/dist/modules/validate_profiles.js +369 -0
  722. package/dist/modules/validate_profiles.js.map +1 -0
  723. package/dist/pm2.d.ts +167 -0
  724. package/dist/pm2.d.ts.map +1 -0
  725. package/dist/pm2.js +998 -0
  726. package/dist/pm2.js.map +1 -0
  727. package/dist/scripts/analyze-git.d.ts +11 -0
  728. package/dist/scripts/analyze-git.d.ts.map +1 -0
  729. package/dist/scripts/analyze-git.js +851 -0
  730. package/dist/scripts/analyze-git.js.map +1 -0
  731. package/dist/scripts/analyze-orders.d.ts +17 -0
  732. package/dist/scripts/analyze-orders.d.ts.map +1 -0
  733. package/dist/scripts/analyze-orders.js +1568 -0
  734. package/dist/scripts/analyze-orders.js.map +1 -0
  735. package/dist/scripts/diagnose-kibana-candles.d.ts +3 -0
  736. package/dist/scripts/diagnose-kibana-candles.d.ts.map +1 -0
  737. package/dist/scripts/diagnose-kibana-candles.js +82 -0
  738. package/dist/scripts/diagnose-kibana-candles.js.map +1 -0
  739. package/dist/scripts/diagnose-pool-history.d.ts +3 -0
  740. package/dist/scripts/diagnose-pool-history.d.ts.map +1 -0
  741. package/dist/scripts/diagnose-pool-history.js +296 -0
  742. package/dist/scripts/diagnose-pool-history.js.map +1 -0
  743. package/dist/scripts/divergence-calc.d.ts +26 -0
  744. package/dist/scripts/divergence-calc.d.ts.map +1 -0
  745. package/dist/scripts/divergence-calc.js +119 -0
  746. package/dist/scripts/divergence-calc.js.map +1 -0
  747. package/dist/scripts/generate_lp_chart.d.ts +31 -0
  748. package/dist/scripts/generate_lp_chart.d.ts.map +1 -0
  749. package/dist/scripts/generate_lp_chart.js +92 -0
  750. package/dist/scripts/generate_lp_chart.js.map +1 -0
  751. package/dist/scripts/generate_mainnet_corpus_report.d.ts +24 -0
  752. package/dist/scripts/generate_mainnet_corpus_report.d.ts.map +1 -0
  753. package/dist/scripts/generate_mainnet_corpus_report.js +237 -0
  754. package/dist/scripts/generate_mainnet_corpus_report.js.map +1 -0
  755. package/dist/scripts/generate_market_adapter_whitelist.d.ts +2 -0
  756. package/dist/scripts/generate_market_adapter_whitelist.d.ts.map +1 -0
  757. package/dist/scripts/generate_market_adapter_whitelist.js +111 -0
  758. package/dist/scripts/generate_market_adapter_whitelist.js.map +1 -0
  759. package/dist/scripts/migrate_bot_keys.d.ts +6 -0
  760. package/dist/scripts/migrate_bot_keys.d.ts.map +1 -0
  761. package/dist/scripts/migrate_bot_keys.js +301 -0
  762. package/dist/scripts/migrate_bot_keys.js.map +1 -0
  763. package/dist/scripts/native_release_gates.d.ts +3 -0
  764. package/dist/scripts/native_release_gates.d.ts.map +1 -0
  765. package/dist/scripts/native_release_gates.js +52 -0
  766. package/dist/scripts/native_release_gates.js.map +1 -0
  767. package/dist/scripts/print_grid.d.ts +16 -0
  768. package/dist/scripts/print_grid.d.ts.map +1 -0
  769. package/dist/scripts/print_grid.js +80 -0
  770. package/dist/scripts/print_grid.js.map +1 -0
  771. package/dist/scripts/run-tests.d.ts +2 -0
  772. package/dist/scripts/run-tests.d.ts.map +1 -0
  773. package/dist/scripts/run-tests.js +49 -0
  774. package/dist/scripts/run-tests.js.map +1 -0
  775. package/dist/scripts/sync-version.d.ts +14 -0
  776. package/dist/scripts/sync-version.d.ts.map +1 -0
  777. package/dist/scripts/sync-version.js +158 -0
  778. package/dist/scripts/sync-version.js.map +1 -0
  779. package/dist/scripts/test-credit-renewal.d.ts +2 -0
  780. package/dist/scripts/test-credit-renewal.d.ts.map +1 -0
  781. package/dist/scripts/test-credit-renewal.js +329 -0
  782. package/dist/scripts/test-credit-renewal.js.map +1 -0
  783. package/dist/scripts/update.d.ts +24 -0
  784. package/dist/scripts/update.d.ts.map +1 -0
  785. package/dist/scripts/update.js +650 -0
  786. package/dist/scripts/update.js.map +1 -0
  787. package/dist/scripts/validate_bots.d.ts +16 -0
  788. package/dist/scripts/validate_bots.d.ts.map +1 -0
  789. package/dist/scripts/validate_bots.js +106 -0
  790. package/dist/scripts/validate_bots.js.map +1 -0
  791. package/dist/scripts/verify-browser-bundle.d.ts +22 -0
  792. package/dist/scripts/verify-browser-bundle.d.ts.map +1 -0
  793. package/dist/scripts/verify-browser-bundle.js +339 -0
  794. package/dist/scripts/verify-browser-bundle.js.map +1 -0
  795. package/dist/unlock.d.ts +48 -0
  796. package/dist/unlock.d.ts.map +1 -0
  797. package/dist/unlock.js +925 -0
  798. package/dist/unlock.js.map +1 -0
  799. package/package.json +112 -0
  800. package/scripts/README.md +356 -0
  801. package/scripts/clear-all.sh +195 -0
  802. package/scripts/clear-logs.sh +95 -0
  803. package/scripts/clear-market-adapter.sh +196 -0
  804. package/scripts/clear-orders.sh +113 -0
  805. package/scripts/create-bot-symlinks.sh +51 -0
  806. package/scripts/postinstall.js +9 -0
  807. package/scripts/reset-settings.sh +118 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounting.js","sourceRoot":"","sources":["../../../modules/order/accounting.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * modules/order/async_lock.ts - AsyncLock Engine
3
+ *
4
+ * Distributed mutual exclusion for async operations.
5
+ * Exports a single AsyncLock class that prevents concurrent execution of critical sections.
6
+ *
7
+ * Solves the Time-of-Check vs Time-of-Use (TOCTOU) race condition
8
+ * where checking a flag and setting it are not atomic operations.
9
+ *
10
+ * In JavaScript async code, multiple callbacks can interleave between
11
+ * check and set operations. This lock ensures only one caller can
12
+ * enter a critical section at a time, with fair FIFO queueing.
13
+ *
14
+ * Usage:
15
+ * const lock = new AsyncLock();
16
+ *
17
+ * const result = await lock.acquire(async () => {
18
+ * // Critical section - guaranteed only one execution at a time
19
+ * // Even if other callers check lock while this runs, they will wait
20
+ * return someAsyncOperation();
21
+ * });
22
+ *
23
+ * ===============================================================================
24
+ * TABLE OF CONTENTS - AsyncLock Class (6 methods)
25
+ * ===============================================================================
26
+ *
27
+ * INITIALIZATION (1 method)
28
+ * 1. constructor() - Create new AsyncLock with empty queue and unlocked state
29
+ *
30
+ * LOCK ACQUISITION (1 method)
31
+ * 2. acquire(callback) - Acquire lock and execute callback exclusively (async)
32
+ * Returns promise that resolves with callback result
33
+ * Queues request if lock is already held, processes in FIFO order
34
+ *
35
+ * QUEUE PROCESSING (1 method - internal)
36
+ * 3. _processQueue() - Process queued callbacks one at a time (async, internal)
37
+ * Marks as locked, executes callback, handles errors, unlocks, processes next
38
+ * Recursive: processes next item after each callback completes
39
+ *
40
+ * STATUS QUERIES (3 methods)
41
+ * 4. isLocked() - Check if lock is currently acquired
42
+ * 5. getQueueLength() - Get number of operations waiting for lock
43
+ * 6. clearQueue() - Reject and discard all pending queued operations
44
+ * Returns: number of operations that were cleared
45
+ * Does NOT stop the currently executing operation
46
+ *
47
+ * ===============================================================================
48
+ *
49
+ * RACE CONDITION PREVENTION:
50
+ * Problem: Check-then-act is not atomic in async code:
51
+ * if (!locked) {
52
+ * locked = true; // <-- Another callback can run here!
53
+ * doWork();
54
+ * }
55
+ *
56
+ * Solution: FIFO queue with exclusive execution:
57
+ * 1. Queue callback and handlers
58
+ * 2. Set _locked = true (prevents concurrent entry)
59
+ * 3. Execute callback (guaranteed alone)
60
+ * 4. Set _locked = false and process next queued item
61
+ *
62
+ * REENTRANCY WARNING:
63
+ * This lock is NOT reentrant. If a function holding the lock attempts to
64
+ * acquire it again (nested call), it will DEADLOCK as the second request
65
+ * will wait forever in the queue for the first one to release it.
66
+ *
67
+ * CRITICAL INVARIANTS:
68
+ * - _locked = true ONLY if callback is currently executing
69
+ * - At most one callback in "await callback()" at any time
70
+ * - All queued callbacks are guaranteed exclusive access
71
+ * - If _locked = false and queue is empty, no operations pending
72
+ *
73
+ * ===============================================================================
74
+ *
75
+ * @class
76
+ */
77
+ interface AsyncLockOptions {
78
+ timeout?: number;
79
+ level?: number;
80
+ }
81
+ interface AcquireOptions {
82
+ timeout?: number;
83
+ cancelToken?: {
84
+ isCancelled: boolean;
85
+ };
86
+ level?: number;
87
+ }
88
+ declare class AsyncLock {
89
+ private _queue;
90
+ private _locked;
91
+ private _defaultTimeout;
92
+ private _level;
93
+ constructor(options?: AsyncLockOptions);
94
+ /**
95
+ * Acquire the lock and execute callback exclusively
96
+ * @param {Function} callback - Async function to execute exclusively
97
+ * @param {Object} [options] - Optional settings
98
+ * @param {number} [options.timeout] - Optional timeout in ms for waiting in queue
99
+ * @param {Object} [options.cancelToken] - Optional object with 'isCancelled' property
100
+ * @returns {Promise} Result of callback execution
101
+ */
102
+ acquire<T>(callback: () => Promise<T>, options?: AcquireOptions): Promise<T>;
103
+ /**
104
+ * Process queued callbacks one at a time
105
+ * @private
106
+ */
107
+ private _processQueue;
108
+ /**
109
+ * Check if lock is currently acquired
110
+ * @returns {boolean}
111
+ */
112
+ isLocked(): boolean;
113
+ /**
114
+ * Get number of operations waiting for lock
115
+ * @returns {number}
116
+ */
117
+ getQueueLength(): number;
118
+ /**
119
+ * Clear all pending operations in the queue.
120
+ * Does NOT stop the currently executing operation if it is already locked.
121
+ * @returns {number} Count of cleared items
122
+ */
123
+ clearQueue(): number;
124
+ }
125
+ export = AsyncLock;
126
+ //# sourceMappingURL=async_lock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async_lock.d.ts","sourceRoot":"","sources":["../../../modules/order/async_lock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AAUH,UAAU,gBAAgB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,cAAc;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,CAAC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,cAAM,SAAS;IACX,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,GAAE,gBAAqB;IAO1C;;;;;;;OAOG;IACG,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,CAAC,CAAC;IAyCtF;;;OAGG;YACW,aAAa;IAgC3B;;;OAGG;IACH,QAAQ,IAAI,OAAO;IAInB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;OAIG;IACH,UAAU,IAAI,MAAM;CAQvB;AAED,SAAS,SAAS,CAAC"}
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ /**
3
+ * modules/order/async_lock.ts - AsyncLock Engine
4
+ *
5
+ * Distributed mutual exclusion for async operations.
6
+ * Exports a single AsyncLock class that prevents concurrent execution of critical sections.
7
+ *
8
+ * Solves the Time-of-Check vs Time-of-Use (TOCTOU) race condition
9
+ * where checking a flag and setting it are not atomic operations.
10
+ *
11
+ * In JavaScript async code, multiple callbacks can interleave between
12
+ * check and set operations. This lock ensures only one caller can
13
+ * enter a critical section at a time, with fair FIFO queueing.
14
+ *
15
+ * Usage:
16
+ * const lock = new AsyncLock();
17
+ *
18
+ * const result = await lock.acquire(async () => {
19
+ * // Critical section - guaranteed only one execution at a time
20
+ * // Even if other callers check lock while this runs, they will wait
21
+ * return someAsyncOperation();
22
+ * });
23
+ *
24
+ * ===============================================================================
25
+ * TABLE OF CONTENTS - AsyncLock Class (6 methods)
26
+ * ===============================================================================
27
+ *
28
+ * INITIALIZATION (1 method)
29
+ * 1. constructor() - Create new AsyncLock with empty queue and unlocked state
30
+ *
31
+ * LOCK ACQUISITION (1 method)
32
+ * 2. acquire(callback) - Acquire lock and execute callback exclusively (async)
33
+ * Returns promise that resolves with callback result
34
+ * Queues request if lock is already held, processes in FIFO order
35
+ *
36
+ * QUEUE PROCESSING (1 method - internal)
37
+ * 3. _processQueue() - Process queued callbacks one at a time (async, internal)
38
+ * Marks as locked, executes callback, handles errors, unlocks, processes next
39
+ * Recursive: processes next item after each callback completes
40
+ *
41
+ * STATUS QUERIES (3 methods)
42
+ * 4. isLocked() - Check if lock is currently acquired
43
+ * 5. getQueueLength() - Get number of operations waiting for lock
44
+ * 6. clearQueue() - Reject and discard all pending queued operations
45
+ * Returns: number of operations that were cleared
46
+ * Does NOT stop the currently executing operation
47
+ *
48
+ * ===============================================================================
49
+ *
50
+ * RACE CONDITION PREVENTION:
51
+ * Problem: Check-then-act is not atomic in async code:
52
+ * if (!locked) {
53
+ * locked = true; // <-- Another callback can run here!
54
+ * doWork();
55
+ * }
56
+ *
57
+ * Solution: FIFO queue with exclusive execution:
58
+ * 1. Queue callback and handlers
59
+ * 2. Set _locked = true (prevents concurrent entry)
60
+ * 3. Execute callback (guaranteed alone)
61
+ * 4. Set _locked = false and process next queued item
62
+ *
63
+ * REENTRANCY WARNING:
64
+ * This lock is NOT reentrant. If a function holding the lock attempts to
65
+ * acquire it again (nested call), it will DEADLOCK as the second request
66
+ * will wait forever in the queue for the first one to release it.
67
+ *
68
+ * CRITICAL INVARIANTS:
69
+ * - _locked = true ONLY if callback is currently executing
70
+ * - At most one callback in "await callback()" at any time
71
+ * - All queued callbacks are guaranteed exclusive access
72
+ * - If _locked = false and queue is empty, no operations pending
73
+ *
74
+ * ===============================================================================
75
+ *
76
+ * @class
77
+ */
78
+ class AsyncLock {
79
+ _queue;
80
+ _locked;
81
+ _defaultTimeout;
82
+ _level;
83
+ constructor(options = {}) {
84
+ this._queue = [];
85
+ this._locked = false;
86
+ this._defaultTimeout = options.timeout || null;
87
+ this._level = options.level ?? 0;
88
+ }
89
+ /**
90
+ * Acquire the lock and execute callback exclusively
91
+ * @param {Function} callback - Async function to execute exclusively
92
+ * @param {Object} [options] - Optional settings
93
+ * @param {number} [options.timeout] - Optional timeout in ms for waiting in queue
94
+ * @param {Object} [options.cancelToken] - Optional object with 'isCancelled' property
95
+ * @returns {Promise} Result of callback execution
96
+ */
97
+ async acquire(callback, options = {}) {
98
+ const timeout = options.timeout || this._defaultTimeout;
99
+ const cancelToken = options.cancelToken;
100
+ return new Promise((resolve, reject) => {
101
+ let timer;
102
+ const item = {
103
+ callback,
104
+ cancelToken,
105
+ resolve: (val) => {
106
+ if (timer) {
107
+ clearTimeout(timer);
108
+ timer = undefined;
109
+ }
110
+ resolve(val);
111
+ },
112
+ reject: (err) => {
113
+ if (timer) {
114
+ clearTimeout(timer);
115
+ timer = undefined;
116
+ }
117
+ reject(err);
118
+ }
119
+ };
120
+ if (timeout) {
121
+ timer = setTimeout(() => {
122
+ const index = this._queue.indexOf(item);
123
+ if (index !== -1) {
124
+ this._queue.splice(index, 1);
125
+ item.reject(new Error(`Lock acquisition timeout after ${timeout}ms`));
126
+ }
127
+ }, timeout);
128
+ }
129
+ this._queue.push(item);
130
+ this._processQueue();
131
+ });
132
+ }
133
+ /**
134
+ * Process queued callbacks one at a time
135
+ * @private
136
+ */
137
+ async _processQueue() {
138
+ // If already locked, another call is executing, wait
139
+ if (this._locked || this._queue.length === 0) {
140
+ return;
141
+ }
142
+ // Mark as locked to prevent concurrent processing
143
+ this._locked = true;
144
+ const { callback, resolve, reject, cancelToken } = this._queue.shift();
145
+ // If operation was cancelled while in queue, skip it
146
+ if (cancelToken && cancelToken.isCancelled) {
147
+ this._locked = false;
148
+ reject(new Error('Lock acquisition cancelled (timeout)'));
149
+ // Process next item immediately
150
+ return this._processQueue();
151
+ }
152
+ try {
153
+ // Execute the callback (guaranteed to be alone)
154
+ const result = await callback();
155
+ resolve(result);
156
+ }
157
+ catch (err) {
158
+ reject(err);
159
+ }
160
+ finally {
161
+ // Unlock and process next item in queue
162
+ this._locked = false;
163
+ this._processQueue();
164
+ }
165
+ }
166
+ /**
167
+ * Check if lock is currently acquired
168
+ * @returns {boolean}
169
+ */
170
+ isLocked() {
171
+ return this._locked;
172
+ }
173
+ /**
174
+ * Get number of operations waiting for lock
175
+ * @returns {number}
176
+ */
177
+ getQueueLength() {
178
+ return this._queue.length;
179
+ }
180
+ /**
181
+ * Clear all pending operations in the queue.
182
+ * Does NOT stop the currently executing operation if it is already locked.
183
+ * @returns {number} Count of cleared items
184
+ */
185
+ clearQueue() {
186
+ const count = this._queue.length;
187
+ while (this._queue.length > 0) {
188
+ const { reject } = this._queue.shift();
189
+ reject(new Error('Lock queue cleared'));
190
+ }
191
+ return count;
192
+ }
193
+ }
194
+ module.exports = AsyncLock;
195
+ //# sourceMappingURL=async_lock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async_lock.js","sourceRoot":"","sources":["../../../modules/order/async_lock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * modules/order/export.ts - Trade Export Module
3
+ *
4
+ * Trading history extraction and CSV export engine.
5
+ * Parses PM2 log files to extract trading fills and exports to standardized format.
6
+ *
7
+ * Usage:
8
+ * const exporter = require('./order/export');
9
+ * const result = await exporter.exportBotTrades(botKey, botConfig, outputDir);
10
+ *
11
+ * Output Format:
12
+ * - CSV: Trades in standardized format (unix, price, amount, side, fee_asset, fee_amount, order_id)
13
+ * - JSON: Sanitized bot settings (excludes private keys)
14
+ *
15
+ * ===============================================================================
16
+ * TABLE OF CONTENTS (4 exported functions + 3 internal helpers)
17
+ * ===============================================================================
18
+ *
19
+ * PUBLIC EXPORTS (4 functions)
20
+ * 1. exportBotTrades(botKey, botConfig, outputDir) - Main export function (async)
21
+ * Orchestrates trade extraction and writing CSV/JSON exports
22
+ * Returns: { success, trades_exported, csv_path, settings_path, output_dir, timestamp }
23
+ *
24
+ * 2. parseLogFile(logFilePath) - Parse PM2 log file to extract trades (async)
25
+ * Reads line-by-line, extracts FILL entries, links with fee information
26
+ * Returns: Array of trade objects with { timestamp, side, amount, price, proceeds, fee_asset, fee_amount }
27
+ *
28
+ * 3. writeTradesCSV(trades, outputPath) - Write trades to CSV file (async)
29
+ * Generates standardized CSV with proper escaping and formatting
30
+ * Returns: { success, count } or { success: false, error }
31
+ *
32
+ * 4. writeSettingsJSON(botConfig, botName, outputPath) - Write sanitized bot settings (async)
33
+ * Exports bot parameters and configuration (excludes private keys)
34
+ * Returns: { success } or { success: false, error }
35
+ *
36
+ * INTERNAL HELPERS (3 functions)
37
+ * 5. parseFillLine(line) - Parse fill entry from log line
38
+ * Expected format: [TIMESTAMP] [DEBUG] [FILL] side fill: size=X, price=Y, proceeds=Z
39
+ * Returns: { timestamp, side, amount, price, proceeds } or null
40
+ *
41
+ * 6. parseFeeLine(line) - Parse fee information from log line
42
+ * Expected format: [TIMESTAMP] [INFO] [FEES] N maker fills @ FEE ASSET = TOTAL
43
+ * Returns: { count, fee_per_fill, fee_asset, total_fee } or null
44
+ *
45
+ * 7. linkFillWithFee(fills, fees) - Match and link most recent fill with fee
46
+ * Checks timestamp proximity (within 5 seconds) to associate fill with fee
47
+ * Modifies fills array in-place
48
+ *
49
+ * ===============================================================================
50
+ *
51
+ * LOG FORMAT PATTERNS:
52
+ * Fill line: [2026-01-15T15:29:06.185Z] [DEBUG] [FILL] sell fill: size=0.0316, price=1791.30065898866, proceeds=56.60510082 BTS
53
+ * Fee line: [2026-01-15T15:29:06.185Z] [INFO] [FEES] BTS fees calculated: 1 maker fills @ 0.04826000 BTS = 0.04826000 BTS
54
+ *
55
+ * CSV HEADER:
56
+ * unix, price, amount, side, fee_asset, fee_amount, order_id
57
+ *
58
+ * ===============================================================================
59
+ */
60
+ /**
61
+ * Parse PM2 log file to extract trades
62
+ * @param {string} logFilePath - Path to PM2 log file
63
+ * @returns {Promise<Array>} Array of trade objects
64
+ */
65
+ declare function parseLogFile(logFilePath: any): Promise<any[]>;
66
+ /**
67
+ * Write trades to CSV file in QTradeX format
68
+ * @param {Array} trades - Array of trade objects
69
+ * @param {string} outputPath - Path to output CSV file
70
+ * @returns {Promise<Object>} { success: boolean, count: number } or { success: false, error: string }
71
+ */
72
+ declare function writeTradesCSV(trades: any, outputPath: any): Promise<{
73
+ success: boolean;
74
+ count: any;
75
+ error?: undefined;
76
+ } | {
77
+ success: boolean;
78
+ error: any;
79
+ count?: undefined;
80
+ }>;
81
+ /**
82
+ * Write sanitized bot settings to JSON file
83
+ * Excludes private keys and sensitive data
84
+ * @param {Object} botConfig - Bot configuration object
85
+ * @param {string} botName - Bot name
86
+ * @param {string} outputPath - Path to output JSON file
87
+ * @returns {Promise<Object>} Write result { success, count } or { success: false, error }
88
+ */
89
+ declare function writeSettingsJSON(botConfig: any, botName: any, outputPath: any): Promise<{
90
+ success: boolean;
91
+ error?: undefined;
92
+ } | {
93
+ success: boolean;
94
+ error: any;
95
+ }>;
96
+ /**
97
+ * Export bot trades from PM2 log file to CSV
98
+ * @param {string} botKey - Bot identifier (e.g., 'xrp-bts-0')
99
+ * @param {Object} botConfig - Bot configuration object
100
+ * @param {string} outputDir - Output directory for exports (default: './exports')
101
+ * @returns {Promise<Object>} Export result status
102
+ */
103
+ declare function exportBotTrades(botKey: any, botConfig: any, outputDir?: string): Promise<{
104
+ success: boolean;
105
+ trades_exported: number;
106
+ csv_path: any;
107
+ settings_path: any;
108
+ output_dir: string;
109
+ timestamp: string;
110
+ error?: undefined;
111
+ bot_key?: undefined;
112
+ } | {
113
+ success: boolean;
114
+ error: any;
115
+ bot_key: any;
116
+ trades_exported?: undefined;
117
+ csv_path?: undefined;
118
+ settings_path?: undefined;
119
+ output_dir?: undefined;
120
+ timestamp?: undefined;
121
+ }>;
122
+ declare const _default: {
123
+ exportBotTrades: typeof exportBotTrades;
124
+ parseLogFile: typeof parseLogFile;
125
+ writeTradesCSV: typeof writeTradesCSV;
126
+ writeSettingsJSON: typeof writeSettingsJSON;
127
+ };
128
+ export = _default;
129
+ //# sourceMappingURL=export.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../modules/order/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AAmGH;;;;GAIG;AACH,iBAAe,YAAY,CAAC,WAAW,KAAA,kBAgDtC;AAED;;;;;GAKG;AACH,iBAAe,cAAc,CAAC,MAAM,KAAA,EAAE,UAAU,KAAA;;;;;;;;GAmC/C;AAED;;;;;;;GAOG;AACH,iBAAe,iBAAiB,CAAC,SAAS,KAAA,EAAE,OAAO,KAAA,EAAE,UAAU,KAAA;;;;;;GAiC9D;AAED;;;;;;GAMG;AACH,iBAAe,eAAe,CAAC,MAAM,KAAA,EAAE,SAAS,KAAA,EAAE,SAAS,SAAc;;;;;;;;;;;;;;;;;;GAqDxE;;;;;;;AAED,kBAKE"}