dexbot 1.3.2 → 1.4.0
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.
- package/dist/analysis/chart_utils.d.ts +11 -9
- package/dist/analysis/chart_utils.d.ts.map +1 -1
- package/dist/analysis/chart_utils.js +21 -16
- package/dist/analysis/chart_utils.js.map +1 -1
- package/dist/analysis/math_utils.d.ts +4 -13
- package/dist/analysis/math_utils.d.ts.map +1 -1
- package/dist/analysis/math_utils.js +16 -18
- package/dist/analysis/math_utils.js.map +1 -1
- package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts +3 -7
- package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts.map +1 -1
- package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js +38 -34
- package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js.map +1 -1
- package/dist/analysis/trend_detection/hurst_analyzer.d.ts +1 -4
- package/dist/analysis/trend_detection/hurst_analyzer.d.ts.map +1 -1
- package/dist/analysis/trend_detection/hurst_analyzer.js +10 -7
- package/dist/analysis/trend_detection/hurst_analyzer.js.map +1 -1
- package/dist/analysis/trend_detection/kalman_trend_analyzer.d.ts +6 -6
- package/dist/analysis/trend_detection/kalman_trend_analyzer.d.ts.map +1 -1
- package/dist/analysis/trend_detection/kalman_trend_analyzer.js +23 -15
- package/dist/analysis/trend_detection/kalman_trend_analyzer.js.map +1 -1
- package/dist/analysis/trend_detection/kalman_velocity_smoothing.d.ts +12 -13
- package/dist/analysis/trend_detection/kalman_velocity_smoothing.d.ts.map +1 -1
- package/dist/analysis/trend_detection/kalman_velocity_smoothing.js +16 -16
- package/dist/analysis/trend_detection/kalman_velocity_smoothing.js.map +1 -1
- package/dist/analysis/trend_detection/permutation_entropy_analyzer.d.ts +1 -4
- package/dist/analysis/trend_detection/permutation_entropy_analyzer.d.ts.map +1 -1
- package/dist/analysis/trend_detection/permutation_entropy_analyzer.js +10 -7
- package/dist/analysis/trend_detection/permutation_entropy_analyzer.js.map +1 -1
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +6 -13
- package/dist/bot.js.map +1 -1
- package/dist/credential-daemon.d.ts.map +1 -1
- package/dist/credential-daemon.js +74 -35
- package/dist/credential-daemon.js.map +1 -1
- package/dist/dexbot.d.ts.map +1 -1
- package/dist/dexbot.js +16 -15
- package/dist/dexbot.js.map +1 -1
- package/dist/market_adapter/ama_signal_runner.d.ts +1 -1
- package/dist/market_adapter/ama_signal_runner.d.ts.map +1 -1
- package/dist/market_adapter/ama_signal_runner.js +8 -20
- package/dist/market_adapter/ama_signal_runner.js.map +1 -1
- package/dist/market_adapter/candle_utils.d.ts +2 -10
- package/dist/market_adapter/candle_utils.d.ts.map +1 -1
- package/dist/market_adapter/candle_utils.js +7 -8
- package/dist/market_adapter/candle_utils.js.map +1 -1
- package/dist/market_adapter/core/asymmetric_bounds.d.ts +12 -7
- package/dist/market_adapter/core/asymmetric_bounds.d.ts.map +1 -1
- package/dist/market_adapter/core/asymmetric_bounds.js +4 -5
- package/dist/market_adapter/core/asymmetric_bounds.js.map +1 -1
- package/dist/market_adapter/core/config_normalizers.d.ts +4 -9
- package/dist/market_adapter/core/config_normalizers.d.ts.map +1 -1
- package/dist/market_adapter/core/config_normalizers.js +9 -9
- package/dist/market_adapter/core/config_normalizers.js.map +1 -1
- package/dist/market_adapter/core/kibana_candles.d.ts +16 -20
- package/dist/market_adapter/core/kibana_candles.d.ts.map +1 -1
- package/dist/market_adapter/core/kibana_candles.js +16 -15
- package/dist/market_adapter/core/kibana_candles.js.map +1 -1
- package/dist/market_adapter/core/kibana_client.d.ts +8 -11
- package/dist/market_adapter/core/kibana_client.d.ts.map +1 -1
- package/dist/market_adapter/core/kibana_client.js +13 -11
- package/dist/market_adapter/core/kibana_client.js.map +1 -1
- package/dist/market_adapter/core/kibana_market_candles.d.ts +5 -12
- package/dist/market_adapter/core/kibana_market_candles.d.ts.map +1 -1
- package/dist/market_adapter/core/kibana_market_candles.js +12 -21
- package/dist/market_adapter/core/kibana_market_candles.js.map +1 -1
- package/dist/market_adapter/core/market_adapter_service.d.ts +75 -53
- package/dist/market_adapter/core/market_adapter_service.d.ts.map +1 -1
- package/dist/market_adapter/core/market_adapter_service.js +102 -98
- package/dist/market_adapter/core/market_adapter_service.js.map +1 -1
- package/dist/market_adapter/core/strategies/ama.d.ts +21 -1
- package/dist/market_adapter/core/strategies/ama.d.ts.map +1 -1
- package/dist/market_adapter/core/strategies/ama.js +10 -10
- package/dist/market_adapter/core/strategies/ama.js.map +1 -1
- package/dist/market_adapter/core/strategies/ama_slope_model.d.ts +7 -11
- package/dist/market_adapter/core/strategies/ama_slope_model.d.ts.map +1 -1
- package/dist/market_adapter/core/strategies/ama_slope_model.js +23 -30
- package/dist/market_adapter/core/strategies/ama_slope_model.js.map +1 -1
- package/dist/market_adapter/core/strategies/atr/calculator.d.ts +5 -4
- package/dist/market_adapter/core/strategies/atr/calculator.d.ts.map +1 -1
- package/dist/market_adapter/core/strategies/atr/calculator.js +5 -3
- package/dist/market_adapter/core/strategies/atr/calculator.js.map +1 -1
- package/dist/market_adapter/core/strategies/collateral_manager.d.ts +4 -7
- package/dist/market_adapter/core/strategies/collateral_manager.d.ts.map +1 -1
- package/dist/market_adapter/core/strategies/collateral_manager.js +5 -4
- package/dist/market_adapter/core/strategies/collateral_manager.js.map +1 -1
- package/dist/market_adapter/core/strategies/regime_gate.d.ts +11 -19
- package/dist/market_adapter/core/strategies/regime_gate.d.ts.map +1 -1
- package/dist/market_adapter/core/strategies/regime_gate.js +22 -22
- package/dist/market_adapter/core/strategies/regime_gate.js.map +1 -1
- package/dist/market_adapter/index.d.ts +24 -2
- package/dist/market_adapter/index.d.ts.map +1 -1
- package/dist/market_adapter/index.js +82 -56
- package/dist/market_adapter/index.js.map +1 -1
- package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js +26 -37
- package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js.map +1 -1
- package/dist/market_adapter/inputs/fetch_lp_data.d.ts +4 -12
- package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -1
- package/dist/market_adapter/inputs/fetch_lp_data.js +100 -66
- package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -1
- package/dist/market_adapter/inputs/kibana_source.d.ts +4 -9
- package/dist/market_adapter/inputs/kibana_source.d.ts.map +1 -1
- package/dist/market_adapter/inputs/kibana_source.js +17 -18
- package/dist/market_adapter/inputs/kibana_source.js.map +1 -1
- package/dist/market_adapter/interval_utils.d.ts +1 -4
- package/dist/market_adapter/interval_utils.d.ts.map +1 -1
- package/dist/market_adapter/interval_utils.js +2 -3
- package/dist/market_adapter/interval_utils.js.map +1 -1
- package/dist/market_adapter/log_format.d.ts +1 -9
- package/dist/market_adapter/log_format.d.ts.map +1 -1
- package/dist/market_adapter/log_format.js +7 -8
- package/dist/market_adapter/log_format.js.map +1 -1
- package/dist/market_adapter/lp_chart_core.d.ts +1 -4
- package/dist/market_adapter/lp_chart_core.d.ts.map +1 -1
- package/dist/market_adapter/lp_chart_core.js +22 -20
- package/dist/market_adapter/lp_chart_core.js.map +1 -1
- package/dist/market_adapter/lp_chart_runner.d.ts +13 -24
- package/dist/market_adapter/lp_chart_runner.d.ts.map +1 -1
- package/dist/market_adapter/lp_chart_runner.js +58 -56
- package/dist/market_adapter/lp_chart_runner.js.map +1 -1
- package/dist/market_adapter/lp_chart_strategy_loader.d.ts +4 -17
- package/dist/market_adapter/lp_chart_strategy_loader.d.ts.map +1 -1
- package/dist/market_adapter/lp_chart_strategy_loader.js +36 -36
- package/dist/market_adapter/lp_chart_strategy_loader.js.map +1 -1
- package/dist/market_adapter/market_adapter.d.ts +51 -72
- package/dist/market_adapter/market_adapter.d.ts.map +1 -1
- package/dist/market_adapter/market_adapter.js +227 -192
- package/dist/market_adapter/market_adapter.js.map +1 -1
- package/dist/market_adapter/merge_lp_data.js +17 -16
- package/dist/market_adapter/merge_lp_data.js.map +1 -1
- package/dist/market_adapter/test_helpers.d.ts +9 -13
- package/dist/market_adapter/test_helpers.d.ts.map +1 -1
- package/dist/market_adapter/test_helpers.js +14 -14
- package/dist/market_adapter/test_helpers.js.map +1 -1
- package/dist/market_adapter/utils/adapter_client.d.ts +6 -14
- package/dist/market_adapter/utils/adapter_client.d.ts.map +1 -1
- package/dist/market_adapter/utils/adapter_client.js +16 -15
- package/dist/market_adapter/utils/adapter_client.js.map +1 -1
- package/dist/market_adapter/utils/atomic_write.d.ts +2 -5
- package/dist/market_adapter/utils/atomic_write.d.ts.map +1 -1
- package/dist/market_adapter/utils/atomic_write.js +5 -5
- package/dist/market_adapter/utils/atomic_write.js.map +1 -1
- package/dist/market_adapter/utils/chain.d.ts +19 -21
- package/dist/market_adapter/utils/chain.d.ts.map +1 -1
- package/dist/market_adapter/utils/chain.js +15 -16
- package/dist/market_adapter/utils/chain.js.map +1 -1
- package/dist/market_adapter/utils/data_discovery.d.ts +1 -4
- package/dist/market_adapter/utils/data_discovery.d.ts.map +1 -1
- package/dist/market_adapter/utils/data_discovery.js +10 -10
- package/dist/market_adapter/utils/data_discovery.js.map +1 -1
- package/dist/market_adapter/utils/dynamic_grid_snapshot.d.ts +1 -6
- package/dist/market_adapter/utils/dynamic_grid_snapshot.d.ts.map +1 -1
- package/dist/market_adapter/utils/dynamic_grid_snapshot.js +14 -14
- package/dist/market_adapter/utils/dynamic_grid_snapshot.js.map +1 -1
- package/dist/market_adapter/utils/file_lock.d.ts +1 -7
- package/dist/market_adapter/utils/file_lock.d.ts.map +1 -1
- package/dist/market_adapter/utils/file_lock.js +21 -25
- package/dist/market_adapter/utils/file_lock.js.map +1 -1
- package/dist/market_adapter/utils/native_history.d.ts +12 -12
- package/dist/market_adapter/utils/native_history.d.ts.map +1 -1
- package/dist/market_adapter/utils/native_history.js +15 -15
- package/dist/market_adapter/utils/native_history.js.map +1 -1
- package/dist/market_adapter/utils/paths.d.ts +2 -4
- package/dist/market_adapter/utils/paths.d.ts.map +1 -1
- package/dist/market_adapter/utils/paths.js +6 -5
- package/dist/market_adapter/utils/paths.js.map +1 -1
- package/dist/modules/account_bots.d.ts +7 -8
- package/dist/modules/account_bots.d.ts.map +1 -1
- package/dist/modules/account_bots.js +92 -114
- package/dist/modules/account_bots.js.map +1 -1
- package/dist/modules/account_orders.d.ts +5 -9
- package/dist/modules/account_orders.d.ts.map +1 -1
- package/dist/modules/account_orders.js +69 -32
- package/dist/modules/account_orders.js.map +1 -1
- package/dist/modules/authority_resolver.d.ts +32 -1
- package/dist/modules/authority_resolver.d.ts.map +1 -1
- package/dist/modules/authority_resolver.js +18 -12
- package/dist/modules/authority_resolver.js.map +1 -1
- package/dist/modules/bitshares-native/chain_client.d.ts +3 -8
- package/dist/modules/bitshares-native/chain_client.d.ts.map +1 -1
- package/dist/modules/bitshares-native/chain_client.js +21 -16
- package/dist/modules/bitshares-native/chain_client.js.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts +21 -29
- package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc.browser.js +72 -38
- package/dist/modules/bitshares-native/crypto/ecc.browser.js.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc.d.ts +9 -36
- package/dist/modules/bitshares-native/crypto/ecc.d.ts.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc.js +40 -83
- package/dist/modules/bitshares-native/crypto/ecc.js.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc_selector.d.ts +14 -1
- package/dist/modules/bitshares-native/crypto/ecc_selector.d.ts.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc_selector.js +5 -3
- package/dist/modules/bitshares-native/crypto/ecc_selector.js.map +1 -1
- package/dist/modules/bitshares-native/index.d.ts +10 -2
- package/dist/modules/bitshares-native/index.d.ts.map +1 -1
- package/dist/modules/bitshares-native/index.js +68 -31
- package/dist/modules/bitshares-native/index.js.map +1 -1
- package/dist/modules/bitshares-native/lru_cache.d.ts +1 -4
- package/dist/modules/bitshares-native/lru_cache.d.ts.map +1 -1
- package/dist/modules/bitshares-native/lru_cache.js +6 -3
- package/dist/modules/bitshares-native/lru_cache.js.map +1 -1
- package/dist/modules/bitshares-native/resolvers.d.ts +3 -6
- package/dist/modules/bitshares-native/resolvers.d.ts.map +1 -1
- package/dist/modules/bitshares-native/resolvers.js +11 -9
- package/dist/modules/bitshares-native/resolvers.js.map +1 -1
- package/dist/modules/bitshares-native/serial/chain_constants.d.ts +53 -55
- package/dist/modules/bitshares-native/serial/chain_constants.d.ts.map +1 -1
- package/dist/modules/bitshares-native/serial/chain_constants.js +28 -27
- package/dist/modules/bitshares-native/serial/chain_constants.js.map +1 -1
- package/dist/modules/bitshares-native/serial/index.d.ts +5 -9
- package/dist/modules/bitshares-native/serial/index.d.ts.map +1 -1
- package/dist/modules/bitshares-native/serial/index.js +46 -12
- package/dist/modules/bitshares-native/serial/index.js.map +1 -1
- package/dist/modules/bitshares-native/serial/operations.d.ts +102 -100
- package/dist/modules/bitshares-native/serial/operations.d.ts.map +1 -1
- package/dist/modules/bitshares-native/serial/operations.js +473 -471
- package/dist/modules/bitshares-native/serial/operations.js.map +1 -1
- package/dist/modules/bitshares-native/serial/serializer.d.ts +2 -7
- package/dist/modules/bitshares-native/serial/serializer.d.ts.map +1 -1
- package/dist/modules/bitshares-native/serial/serializer.js +8 -3
- package/dist/modules/bitshares-native/serial/serializer.js.map +1 -1
- package/dist/modules/bitshares-native/serial/types.d.ts +26 -41
- package/dist/modules/bitshares-native/serial/types.d.ts.map +1 -1
- package/dist/modules/bitshares-native/serial/types.js +76 -42
- package/dist/modules/bitshares-native/serial/types.js.map +1 -1
- package/dist/modules/bitshares-native/signing_client.d.ts +1 -5
- package/dist/modules/bitshares-native/signing_client.d.ts.map +1 -1
- package/dist/modules/bitshares-native/signing_client.js +49 -11
- package/dist/modules/bitshares-native/signing_client.js.map +1 -1
- package/dist/modules/bitshares-native/subscriptions.d.ts +1 -4
- package/dist/modules/bitshares-native/subscriptions.d.ts.map +1 -1
- package/dist/modules/bitshares-native/subscriptions.js +47 -84
- package/dist/modules/bitshares-native/subscriptions.js.map +1 -1
- package/dist/modules/bitshares-native/transport.d.ts +1 -8
- package/dist/modules/bitshares-native/transport.d.ts.map +1 -1
- package/dist/modules/bitshares-native/transport.js +22 -15
- package/dist/modules/bitshares-native/transport.js.map +1 -1
- package/dist/modules/bitshares-native/tx/builder.d.ts +3 -8
- package/dist/modules/bitshares-native/tx/builder.d.ts.map +1 -1
- package/dist/modules/bitshares-native/tx/builder.js +61 -23
- package/dist/modules/bitshares-native/tx/builder.js.map +1 -1
- package/dist/modules/bitshares-native/tx/tx_cache.d.ts +1 -8
- package/dist/modules/bitshares-native/tx/tx_cache.d.ts.map +1 -1
- package/dist/modules/bitshares-native/tx/tx_cache.js +21 -17
- package/dist/modules/bitshares-native/tx/tx_cache.js.map +1 -1
- package/dist/modules/bitshares_client.d.ts +12 -23
- package/dist/modules/bitshares_client.d.ts.map +1 -1
- package/dist/modules/bitshares_client.js +109 -56
- package/dist/modules/bitshares_client.js.map +1 -1
- package/dist/modules/bot_settings.d.ts +1 -13
- package/dist/modules/bot_settings.d.ts.map +1 -1
- package/dist/modules/bot_settings.js +34 -34
- package/dist/modules/bot_settings.js.map +1 -1
- package/dist/modules/bots_file_lock.d.ts +3 -9
- package/dist/modules/bots_file_lock.d.ts.map +1 -1
- package/dist/modules/bots_file_lock.js +8 -9
- package/dist/modules/bots_file_lock.js.map +1 -1
- package/dist/modules/chain_keys.d.ts +7 -39
- package/dist/modules/chain_keys.d.ts.map +1 -1
- package/dist/modules/chain_keys.js +126 -90
- package/dist/modules/chain_keys.js.map +1 -1
- package/dist/modules/chain_orders.d.ts +46 -52
- package/dist/modules/chain_orders.d.ts.map +1 -1
- package/dist/modules/chain_orders.js +152 -104
- package/dist/modules/chain_orders.js.map +1 -1
- package/dist/modules/config.d.ts +50 -57
- package/dist/modules/config.d.ts.map +1 -1
- package/dist/modules/config.js +28 -24
- package/dist/modules/config.js.map +1 -1
- package/dist/modules/constants.d.ts +492 -492
- package/dist/modules/constants.d.ts.map +1 -1
- package/dist/modules/constants.js +79 -39
- package/dist/modules/constants.js.map +1 -1
- package/dist/modules/cr_planner.d.ts +1 -13
- package/dist/modules/cr_planner.d.ts.map +1 -1
- package/dist/modules/cr_planner.js +28 -28
- package/dist/modules/cr_planner.js.map +1 -1
- package/dist/modules/credential_policy.d.ts +18 -33
- package/dist/modules/credential_policy.d.ts.map +1 -1
- package/dist/modules/credential_policy.js +114 -87
- package/dist/modules/credential_policy.js.map +1 -1
- package/dist/modules/credential_runtime.d.ts +11 -21
- package/dist/modules/credential_runtime.d.ts.map +1 -1
- package/dist/modules/credential_runtime.js +40 -40
- package/dist/modules/credential_runtime.js.map +1 -1
- package/dist/modules/credential_session_cache.d.ts +8 -8
- package/dist/modules/credential_session_cache.d.ts.map +1 -1
- package/dist/modules/credential_session_cache.js +41 -8
- package/dist/modules/credential_session_cache.js.map +1 -1
- package/dist/modules/credit_runtime.d.ts +51 -316
- package/dist/modules/credit_runtime.d.ts.map +1 -1
- package/dist/modules/credit_runtime.js +257 -183
- package/dist/modules/credit_runtime.js.map +1 -1
- package/dist/modules/crypto/browser_provider.js +6 -6
- package/dist/modules/crypto/browser_provider.js.map +1 -1
- package/dist/modules/crypto/index.d.ts.map +1 -1
- package/dist/modules/crypto/index.js +2 -0
- package/dist/modules/crypto/index.js.map +1 -1
- package/dist/modules/crypto/sync.js +3 -3
- package/dist/modules/crypto/sync.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +124 -73
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_class.js +198 -3577
- package/dist/modules/dexbot_class.js.map +1 -1
- package/dist/modules/dexbot_cow_runtime.d.ts +322 -0
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -0
- package/dist/modules/dexbot_cow_runtime.js +1836 -0
- package/dist/modules/dexbot_cow_runtime.js.map +1 -0
- package/dist/modules/dexbot_credential_client.d.ts +5 -11
- package/dist/modules/dexbot_credential_client.d.ts.map +1 -1
- package/dist/modules/dexbot_credential_client.js +32 -30
- package/dist/modules/dexbot_credential_client.js.map +1 -1
- package/dist/modules/dexbot_fill_runtime.d.ts +47 -15
- package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_fill_runtime.js +565 -22
- package/dist/modules/dexbot_fill_runtime.js.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.d.ts +79 -10
- package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.js +294 -55
- package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
- package/dist/modules/dexbot_startup_runtime.d.ts +26 -0
- package/dist/modules/dexbot_startup_runtime.d.ts.map +1 -0
- package/dist/modules/dexbot_startup_runtime.js +575 -0
- package/dist/modules/dexbot_startup_runtime.js.map +1 -0
- package/dist/modules/dexbot_state_recovery.d.ts +115 -0
- package/dist/modules/dexbot_state_recovery.d.ts.map +1 -0
- package/dist/modules/dexbot_state_recovery.js +431 -0
- package/dist/modules/dexbot_state_recovery.js.map +1 -0
- package/dist/modules/fund_registry.d.ts +1 -13
- package/dist/modules/fund_registry.d.ts.map +1 -1
- package/dist/modules/fund_registry.js +23 -22
- package/dist/modules/fund_registry.js.map +1 -1
- package/dist/modules/general_settings.d.ts +3 -7
- package/dist/modules/general_settings.d.ts.map +1 -1
- package/dist/modules/general_settings.js +15 -15
- package/dist/modules/general_settings.js.map +1 -1
- package/dist/modules/graceful_shutdown.d.ts +1 -6
- package/dist/modules/graceful_shutdown.d.ts.map +1 -1
- package/dist/modules/graceful_shutdown.js +19 -16
- package/dist/modules/graceful_shutdown.js.map +1 -1
- package/dist/modules/key_store.d.ts.map +1 -1
- package/dist/modules/key_store.js +53 -20
- package/dist/modules/key_store.js.map +1 -1
- package/dist/modules/launcher/bot_supervisor.d.ts +23 -66
- package/dist/modules/launcher/bot_supervisor.d.ts.map +1 -1
- package/dist/modules/launcher/bot_supervisor.js +115 -107
- package/dist/modules/launcher/bot_supervisor.js.map +1 -1
- package/dist/modules/launcher/child_env.d.ts +2 -5
- package/dist/modules/launcher/child_env.d.ts.map +1 -1
- package/dist/modules/launcher/child_env.js +4 -4
- package/dist/modules/launcher/child_env.js.map +1 -1
- package/dist/modules/launcher/credential_bootstrap.d.ts +4 -8
- package/dist/modules/launcher/credential_bootstrap.d.ts.map +1 -1
- package/dist/modules/launcher/credential_bootstrap.js +30 -26
- package/dist/modules/launcher/credential_bootstrap.js.map +1 -1
- package/dist/modules/launcher/credential_daemon.d.ts +8 -15
- package/dist/modules/launcher/credential_daemon.d.ts.map +1 -1
- package/dist/modules/launcher/credential_daemon.js +72 -41
- package/dist/modules/launcher/credential_daemon.js.map +1 -1
- package/dist/modules/launcher/credential_secret.d.ts +1 -4
- package/dist/modules/launcher/credential_secret.d.ts.map +1 -1
- package/dist/modules/launcher/credential_secret.js +36 -4
- package/dist/modules/launcher/credential_secret.js.map +1 -1
- package/dist/modules/launcher/foreign_cred_daemon.d.ts +32 -1
- package/dist/modules/launcher/foreign_cred_daemon.d.ts.map +1 -1
- package/dist/modules/launcher/foreign_cred_daemon.js +25 -28
- package/dist/modules/launcher/foreign_cred_daemon.js.map +1 -1
- package/dist/modules/launcher/headless_password.d.ts +1 -4
- package/dist/modules/launcher/headless_password.d.ts.map +1 -1
- package/dist/modules/launcher/headless_password.js +11 -11
- package/dist/modules/launcher/headless_password.js.map +1 -1
- package/dist/modules/launcher/launch_modes.d.ts +15 -14
- package/dist/modules/launcher/launch_modes.d.ts.map +1 -1
- package/dist/modules/launcher/launch_modes.js +8 -8
- package/dist/modules/launcher/launch_modes.js.map +1 -1
- package/dist/modules/launcher/market_adapter_runtime.d.ts +10 -19
- package/dist/modules/launcher/market_adapter_runtime.d.ts.map +1 -1
- package/dist/modules/launcher/market_adapter_runtime.js +33 -34
- package/dist/modules/launcher/market_adapter_runtime.js.map +1 -1
- package/dist/modules/launcher/market_adapter_watchdog.d.ts +10 -17
- package/dist/modules/launcher/market_adapter_watchdog.d.ts.map +1 -1
- package/dist/modules/launcher/market_adapter_watchdog.js +42 -39
- package/dist/modules/launcher/market_adapter_watchdog.js.map +1 -1
- package/dist/modules/launcher/monolithic_runtime.d.ts +28 -57
- package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -1
- package/dist/modules/launcher/monolithic_runtime.js +135 -108
- package/dist/modules/launcher/monolithic_runtime.js.map +1 -1
- package/dist/modules/launcher/runtime_entry.d.ts +5 -10
- package/dist/modules/launcher/runtime_entry.d.ts.map +1 -1
- package/dist/modules/launcher/runtime_entry.js +14 -14
- package/dist/modules/launcher/runtime_entry.js.map +1 -1
- package/dist/modules/launcher/status_reporting.d.ts +17 -37
- package/dist/modules/launcher/status_reporting.d.ts.map +1 -1
- package/dist/modules/launcher/status_reporting.js +35 -34
- package/dist/modules/launcher/status_reporting.js.map +1 -1
- package/dist/modules/launcher/supervisor_control.d.ts +1 -4
- package/dist/modules/launcher/supervisor_control.d.ts.map +1 -1
- package/dist/modules/launcher/supervisor_control.js +9 -4
- package/dist/modules/launcher/supervisor_control.js.map +1 -1
- package/dist/modules/logger.d.ts +3 -1
- package/dist/modules/logger.d.ts.map +1 -1
- package/dist/modules/logger.js +38 -28
- package/dist/modules/logger.js.map +1 -1
- package/dist/modules/market_adapter_whitelist.d.ts +2 -10
- package/dist/modules/market_adapter_whitelist.d.ts.map +1 -1
- package/dist/modules/market_adapter_whitelist.js +18 -16
- package/dist/modules/market_adapter_whitelist.js.map +1 -1
- package/dist/modules/node_health_cache.d.ts +2 -12
- package/dist/modules/node_health_cache.d.ts.map +1 -1
- package/dist/modules/node_health_cache.js +24 -24
- package/dist/modules/node_health_cache.js.map +1 -1
- package/dist/modules/node_manager.d.ts +1 -1
- package/dist/modules/node_manager.d.ts.map +1 -1
- package/dist/modules/node_manager.js +44 -38
- package/dist/modules/node_manager.js.map +1 -1
- package/dist/modules/order/accounting.d.ts +12 -12
- package/dist/modules/order/accounting.d.ts.map +1 -1
- package/dist/modules/order/accounting.js +111 -76
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/async_lock.d.ts +1 -2
- package/dist/modules/order/async_lock.d.ts.map +1 -1
- package/dist/modules/order/async_lock.js +4 -4
- package/dist/modules/order/async_lock.js.map +1 -1
- package/dist/modules/order/export.d.ts +8 -14
- package/dist/modules/order/export.d.ts.map +1 -1
- package/dist/modules/order/export.js +77 -42
- package/dist/modules/order/export.js.map +1 -1
- package/dist/modules/order/format.d.ts +17 -22
- package/dist/modules/order/format.d.ts.map +1 -1
- package/dist/modules/order/format.js +25 -31
- package/dist/modules/order/format.js.map +1 -1
- package/dist/modules/order/grid.d.ts +18 -104
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +246 -188
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile.d.ts +8 -8
- package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile.js +24 -24
- package/dist/modules/order/grid_reconcile.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts +224 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +145 -72
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/index.d.ts +1 -1
- package/dist/modules/order/index.d.ts.map +1 -1
- package/dist/modules/order/index.js +42 -7
- package/dist/modules/order/index.js.map +1 -1
- package/dist/modules/order/logger.d.ts +6 -16
- package/dist/modules/order/logger.d.ts.map +1 -1
- package/dist/modules/order/logger.js +76 -53
- package/dist/modules/order/logger.js.map +1 -1
- package/dist/modules/order/logger_state.d.ts +4 -4
- package/dist/modules/order/logger_state.d.ts.map +1 -1
- package/dist/modules/order/logger_state.js +3 -1
- package/dist/modules/order/logger_state.js.map +1 -1
- package/dist/modules/order/manager.d.ts +160 -37
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +166 -128
- package/dist/modules/order/manager.js.map +1 -1
- package/dist/modules/order/processed_fill_store.d.ts +6 -10
- package/dist/modules/order/processed_fill_store.d.ts.map +1 -1
- package/dist/modules/order/processed_fill_store.js +10 -9
- package/dist/modules/order/processed_fill_store.js.map +1 -1
- package/dist/modules/order/strategy.d.ts +3 -3
- package/dist/modules/order/strategy.d.ts.map +1 -1
- package/dist/modules/order/strategy.js +29 -27
- package/dist/modules/order/strategy.js.map +1 -1
- package/dist/modules/order/sync_engine.d.ts +9 -19
- package/dist/modules/order/sync_engine.d.ts.map +1 -1
- package/dist/modules/order/sync_engine.js +176 -126
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/math.d.ts +55 -85
- package/dist/modules/order/utils/math.d.ts.map +1 -1
- package/dist/modules/order/utils/math.js +155 -88
- package/dist/modules/order/utils/math.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +27 -72
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +144 -105
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/system.d.ts +74 -44
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +188 -149
- package/dist/modules/order/utils/system.js.map +1 -1
- package/dist/modules/order/utils/validate.d.ts +21 -43
- package/dist/modules/order/utils/validate.d.ts.map +1 -1
- package/dist/modules/order/utils/validate.js +140 -110
- package/dist/modules/order/utils/validate.js.map +1 -1
- package/dist/modules/order/working_grid.d.ts +1 -4
- package/dist/modules/order/working_grid.d.ts.map +1 -1
- package/dist/modules/order/working_grid.js +9 -7
- package/dist/modules/order/working_grid.js.map +1 -1
- package/dist/modules/path_api.js +2 -2
- package/dist/modules/path_api.js.map +1 -1
- package/dist/modules/paths.d.ts +51 -55
- package/dist/modules/paths.d.ts.map +1 -1
- package/dist/modules/paths.js +72 -52
- package/dist/modules/paths.js.map +1 -1
- package/dist/modules/process_discovery.d.ts +1 -1
- package/dist/modules/process_discovery.d.ts.map +1 -1
- package/dist/modules/process_discovery.js +7 -7
- package/dist/modules/process_discovery.js.map +1 -1
- package/dist/modules/runtime.d.ts +1 -1
- package/dist/modules/runtime.d.ts.map +1 -1
- package/dist/modules/runtime.js +4 -4
- package/dist/modules/runtime.js.map +1 -1
- package/dist/modules/runtime_settings.d.ts +1 -0
- package/dist/modules/runtime_settings.d.ts.map +1 -1
- package/dist/modules/runtime_settings.js +15 -10
- package/dist/modules/runtime_settings.js.map +1 -1
- package/dist/modules/settings_merge.d.ts +1 -4
- package/dist/modules/settings_merge.d.ts.map +1 -1
- package/dist/modules/settings_merge.js +2 -1
- package/dist/modules/settings_merge.js.map +1 -1
- package/dist/modules/storage/browser_adapter.d.ts +7 -3
- package/dist/modules/storage/browser_adapter.d.ts.map +1 -1
- package/dist/modules/storage/browser_adapter.js +2 -0
- package/dist/modules/storage/browser_adapter.js.map +1 -1
- package/dist/modules/storage/index.d.ts +2 -2
- package/dist/modules/storage/index.d.ts.map +1 -1
- package/dist/modules/storage/index.js +2 -5
- package/dist/modules/storage/index.js.map +1 -1
- package/dist/modules/storage/node_adapter.d.ts +3 -3
- package/dist/modules/storage/node_adapter.d.ts.map +1 -1
- package/dist/modules/storage/node_adapter.js +9 -7
- package/dist/modules/storage/node_adapter.js.map +1 -1
- package/dist/modules/storage/types.d.ts +13 -10
- package/dist/modules/storage/types.d.ts.map +1 -1
- package/dist/modules/types.d.ts +0 -2
- package/dist/modules/types.d.ts.map +1 -1
- package/dist/modules/utils/base58check.d.ts +1 -9
- package/dist/modules/utils/base58check.d.ts.map +1 -1
- package/dist/modules/utils/base58check.js +14 -16
- package/dist/modules/utils/base58check.js.map +1 -1
- package/dist/modules/utils/build_dir.d.ts +2 -5
- package/dist/modules/utils/build_dir.d.ts.map +1 -1
- package/dist/modules/utils/build_dir.js +6 -3
- package/dist/modules/utils/build_dir.js.map +1 -1
- package/dist/modules/utils/errors.d.ts +2 -0
- package/dist/modules/utils/errors.d.ts.map +1 -0
- package/dist/modules/utils/errors.js +12 -0
- package/dist/modules/utils/errors.js.map +1 -0
- package/dist/modules/utils/fs_utils.d.ts +1 -8
- package/dist/modules/utils/fs_utils.d.ts.map +1 -1
- package/dist/modules/utils/fs_utils.js +8 -3
- package/dist/modules/utils/fs_utils.js.map +1 -1
- package/dist/modules/utils/math_utils.d.ts +2 -6
- package/dist/modules/utils/math_utils.d.ts.map +1 -1
- package/dist/modules/utils/math_utils.js +6 -2
- package/dist/modules/utils/math_utils.js.map +1 -1
- package/dist/modules/validate_profiles.d.ts +1 -11
- package/dist/modules/validate_profiles.d.ts.map +1 -1
- package/dist/modules/validate_profiles.js +25 -27
- package/dist/modules/validate_profiles.js.map +1 -1
- package/dist/pm2.d.ts +7 -6
- package/dist/pm2.d.ts.map +1 -1
- package/dist/pm2.js +132 -106
- package/dist/pm2.js.map +1 -1
- package/dist/scripts/analyze-git.d.ts.map +1 -1
- package/dist/scripts/analyze-git.js +15 -11
- package/dist/scripts/analyze-git.js.map +1 -1
- package/dist/scripts/analyze-orders.d.ts +146 -1
- package/dist/scripts/analyze-orders.d.ts.map +1 -1
- package/dist/scripts/analyze-orders.js +81 -105
- package/dist/scripts/analyze-orders.js.map +1 -1
- package/dist/scripts/diagnose-pool-history.d.ts.map +1 -1
- package/dist/scripts/diagnose-pool-history.js +9 -8
- package/dist/scripts/diagnose-pool-history.js.map +1 -1
- package/dist/scripts/divergence-calc.d.ts.map +1 -1
- package/dist/scripts/divergence-calc.js +11 -8
- package/dist/scripts/divergence-calc.js.map +1 -1
- package/dist/scripts/fix-err-message.d.ts +3 -0
- package/dist/scripts/fix-err-message.d.ts.map +1 -0
- package/dist/scripts/fix-err-message.js +198 -0
- package/dist/scripts/fix-err-message.js.map +1 -0
- package/dist/scripts/generate_lp_chart.d.ts +2 -9
- package/dist/scripts/generate_lp_chart.d.ts.map +1 -1
- package/dist/scripts/generate_lp_chart.js +14 -10
- package/dist/scripts/generate_lp_chart.js.map +1 -1
- package/dist/scripts/generate_mainnet_corpus_report.js +4 -4
- package/dist/scripts/generate_mainnet_corpus_report.js.map +1 -1
- package/dist/scripts/generate_market_adapter_whitelist.d.ts +17 -1
- package/dist/scripts/generate_market_adapter_whitelist.d.ts.map +1 -1
- package/dist/scripts/generate_market_adapter_whitelist.js +23 -20
- package/dist/scripts/generate_market_adapter_whitelist.js.map +1 -1
- package/dist/scripts/migrate_bot_keys.d.ts +1 -4
- package/dist/scripts/migrate_bot_keys.d.ts.map +1 -1
- package/dist/scripts/migrate_bot_keys.js +48 -124
- package/dist/scripts/migrate_bot_keys.js.map +1 -1
- package/dist/scripts/native_release_gates.d.ts.map +1 -1
- package/dist/scripts/native_release_gates.js +18 -14
- package/dist/scripts/native_release_gates.js.map +1 -1
- package/dist/scripts/print_grid.js +1 -1
- package/dist/scripts/print_grid.js.map +1 -1
- package/dist/scripts/run-tests.js +1 -0
- package/dist/scripts/run-tests.js.map +1 -1
- package/dist/scripts/runner.d.ts +1 -11
- package/dist/scripts/runner.d.ts.map +1 -1
- package/dist/scripts/runner.js +21 -19
- package/dist/scripts/runner.js.map +1 -1
- package/dist/scripts/test-credit-renewal.d.ts.map +1 -1
- package/dist/scripts/test-credit-renewal.js +2 -1
- package/dist/scripts/test-credit-renewal.js.map +1 -1
- package/dist/scripts/update.d.ts.map +1 -1
- package/dist/scripts/update.js +85 -79
- package/dist/scripts/update.js.map +1 -1
- package/dist/scripts/validate_bots.js +2 -2
- package/dist/scripts/validate_bots.js.map +1 -1
- package/dist/scripts/verify-browser-bundle.js +25 -1
- package/dist/scripts/verify-browser-bundle.js.map +1 -1
- package/dist/unlock.d.ts +4 -17
- package/dist/unlock.d.ts.map +1 -1
- package/dist/unlock.js +141 -108
- package/dist/unlock.js.map +1 -1
- package/package.json +7 -2
- package/dist/analysis/ama_fitting/analyze_ama_price_changes.d.ts +0 -3
- package/dist/analysis/ama_fitting/analyze_ama_price_changes.d.ts.map +0 -1
- package/dist/analysis/ama_fitting/analyze_ama_price_changes.js +0 -149
- package/dist/analysis/ama_fitting/analyze_ama_price_changes.js.map +0 -1
- package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts +0 -3
- package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts.map +0 -1
- package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js +0 -387
- package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js.map +0 -1
- package/dist/analysis/ama_fitting/calibrate_convergence_er.d.ts +0 -3
- package/dist/analysis/ama_fitting/calibrate_convergence_er.d.ts.map +0 -1
- package/dist/analysis/ama_fitting/calibrate_convergence_er.js +0 -200
- package/dist/analysis/ama_fitting/calibrate_convergence_er.js.map +0 -1
- package/dist/analysis/ama_fitting/fetch_lp_candles.d.ts +0 -3
- package/dist/analysis/ama_fitting/fetch_lp_candles.d.ts.map +0 -1
- package/dist/analysis/ama_fitting/fetch_lp_candles.js +0 -212
- package/dist/analysis/ama_fitting/fetch_lp_candles.js.map +0 -1
- package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts +0 -31
- package/dist/analysis/ama_fitting/generate_unified_comparison_chart.d.ts.map +0 -1
- package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js +0 -249
- package/dist/analysis/ama_fitting/generate_unified_comparison_chart.js.map +0 -1
- package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts +0 -2
- package/dist/analysis/ama_fitting/optimizer_high_resolution.d.ts.map +0 -1
- package/dist/analysis/ama_fitting/optimizer_high_resolution.js +0 -782
- package/dist/analysis/ama_fitting/optimizer_high_resolution.js.map +0 -1
- package/dist/analysis/analyze_derivatives.d.ts +0 -95
- package/dist/analysis/analyze_derivatives.d.ts.map +0 -1
- package/dist/analysis/analyze_derivatives.js +0 -295
- package/dist/analysis/analyze_derivatives.js.map +0 -1
- package/dist/analysis/analyze_dynamic_weight.d.ts +0 -14
- package/dist/analysis/analyze_dynamic_weight.d.ts.map +0 -1
- package/dist/analysis/analyze_dynamic_weight.js +0 -207
- package/dist/analysis/analyze_dynamic_weight.js.map +0 -1
- package/dist/analysis/analyze_kalman.d.ts +0 -13
- package/dist/analysis/analyze_kalman.d.ts.map +0 -1
- package/dist/analysis/analyze_kalman.js +0 -123
- package/dist/analysis/analyze_kalman.js.map +0 -1
- package/dist/analysis/analyze_regime.d.ts +0 -20
- package/dist/analysis/analyze_regime.d.ts.map +0 -1
- package/dist/analysis/analyze_regime.js +0 -139
- package/dist/analysis/analyze_regime.js.map +0 -1
- package/dist/analysis/analyze_regime_windows.d.ts +0 -19
- package/dist/analysis/analyze_regime_windows.d.ts.map +0 -1
- package/dist/analysis/analyze_regime_windows.js +0 -413
- package/dist/analysis/analyze_regime_windows.js.map +0 -1
- package/dist/analysis/analyze_risk_profile.d.ts +0 -3
- package/dist/analysis/analyze_risk_profile.d.ts.map +0 -1
- package/dist/analysis/analyze_risk_profile.js +0 -159
- package/dist/analysis/analyze_risk_profile.js.map +0 -1
- package/dist/analysis/analyze_trade_heatmap.d.ts +0 -3
- package/dist/analysis/analyze_trade_heatmap.d.ts.map +0 -1
- package/dist/analysis/analyze_trade_heatmap.js +0 -367
- package/dist/analysis/analyze_trade_heatmap.js.map +0 -1
- package/dist/analysis/analyze_volatility.d.ts +0 -22
- package/dist/analysis/analyze_volatility.d.ts.map +0 -1
- package/dist/analysis/analyze_volatility.js +0 -172
- package/dist/analysis/analyze_volatility.js.map +0 -1
- package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts +0 -99
- package/dist/analysis/bot_fitting/backtest_ama_sweep.d.ts.map +0 -1
- package/dist/analysis/bot_fitting/backtest_ama_sweep.js +0 -804
- package/dist/analysis/bot_fitting/backtest_ama_sweep.js.map +0 -1
- package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts +0 -2
- package/dist/analysis/bot_fitting/backtest_bot_fitting.d.ts.map +0 -1
- package/dist/analysis/bot_fitting/backtest_bot_fitting.js +0 -347
- package/dist/analysis/bot_fitting/backtest_bot_fitting.js.map +0 -1
- package/dist/analysis/bot_fitting/shared_utils.d.ts +0 -15
- package/dist/analysis/bot_fitting/shared_utils.d.ts.map +0 -1
- package/dist/analysis/bot_fitting/shared_utils.js +0 -48
- package/dist/analysis/bot_fitting/shared_utils.js.map +0 -1
- package/dist/analysis/bot_key_utils.d.ts +0 -22
- package/dist/analysis/bot_key_utils.d.ts.map +0 -1
- package/dist/analysis/bot_key_utils.js +0 -162
- package/dist/analysis/bot_key_utils.js.map +0 -1
- package/dist/analysis/bot_usage/discover_bot_accounts.d.ts +0 -3
- package/dist/analysis/bot_usage/discover_bot_accounts.d.ts.map +0 -1
- package/dist/analysis/bot_usage/discover_bot_accounts.js +0 -498
- package/dist/analysis/bot_usage/discover_bot_accounts.js.map +0 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +0 -546
- package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +0 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.js +0 -427
- package/dist/analysis/bot_usage/kibana_bot_queries.js.map +0 -1
- package/dist/analysis/derivative_chart_generator.d.ts +0 -18
- package/dist/analysis/derivative_chart_generator.d.ts.map +0 -1
- package/dist/analysis/derivative_chart_generator.js +0 -896
- package/dist/analysis/derivative_chart_generator.js.map +0 -1
- package/dist/analysis/price_sources.d.ts +0 -34
- package/dist/analysis/price_sources.d.ts.map +0 -1
- package/dist/analysis/price_sources.js +0 -103
- package/dist/analysis/price_sources.js.map +0 -1
- package/dist/analysis/trade_profitability.d.ts +0 -115
- package/dist/analysis/trade_profitability.d.ts.map +0 -1
- package/dist/analysis/trade_profitability.js +0 -1247
- package/dist/analysis/trade_profitability.js.map +0 -1
- package/dist/analysis/tradingview/analyze_tradingview.d.ts +0 -36
- package/dist/analysis/tradingview/analyze_tradingview.d.ts.map +0 -1
- package/dist/analysis/tradingview/analyze_tradingview.js +0 -172
- package/dist/analysis/tradingview/analyze_tradingview.js.map +0 -1
- package/dist/analysis/trend_detection/derivative_analyzer.d.ts +0 -250
- package/dist/analysis/trend_detection/derivative_analyzer.d.ts.map +0 -1
- package/dist/analysis/trend_detection/derivative_analyzer.js +0 -903
- package/dist/analysis/trend_detection/derivative_analyzer.js.map +0 -1
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts +0 -6
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts.map +0 -1
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js +0 -1450
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js.map +0 -1
- package/dist/analysis/trend_detection/kalman_chart_generator.d.ts +0 -6
- package/dist/analysis/trend_detection/kalman_chart_generator.d.ts.map +0 -1
- package/dist/analysis/trend_detection/kalman_chart_generator.js +0 -408
- package/dist/analysis/trend_detection/kalman_chart_generator.js.map +0 -1
- package/dist/analysis/trend_detection/regime_chart_generator.d.ts +0 -6
- package/dist/analysis/trend_detection/regime_chart_generator.d.ts.map +0 -1
- package/dist/analysis/trend_detection/regime_chart_generator.js +0 -345
- package/dist/analysis/trend_detection/regime_chart_generator.js.map +0 -1
- package/dist/analysis/trend_detection/tests/test_kalman_trend.d.ts +0 -2
- package/dist/analysis/trend_detection/tests/test_kalman_trend.d.ts.map +0 -1
- package/dist/analysis/trend_detection/tests/test_kalman_trend.js +0 -130
- package/dist/analysis/trend_detection/tests/test_kalman_trend.js.map +0 -1
- package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.d.ts +0 -2
- package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.d.ts.map +0 -1
- package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js +0 -38
- package/dist/analysis/trend_detection/tests/test_kalman_velocity_smoothing.js.map +0 -1
- package/dist/analysis/trend_detection/volatility_chart_generator.d.ts +0 -6
- package/dist/analysis/trend_detection/volatility_chart_generator.d.ts.map +0 -1
- package/dist/analysis/trend_detection/volatility_chart_generator.js +0 -732
- package/dist/analysis/trend_detection/volatility_chart_generator.js.map +0 -1
|
@@ -74,13 +74,49 @@
|
|
|
74
74
|
*
|
|
75
75
|
* ===============================================================================
|
|
76
76
|
*/
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
77
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
78
|
+
if (k2 === undefined) k2 = k;
|
|
79
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
80
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
81
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
82
|
+
}
|
|
83
|
+
Object.defineProperty(o, k2, desc);
|
|
84
|
+
}) : (function(o, m, k, k2) {
|
|
85
|
+
if (k2 === undefined) k2 = k;
|
|
86
|
+
o[k2] = m[k];
|
|
87
|
+
}));
|
|
88
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
89
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
90
|
+
}) : function(o, v) {
|
|
91
|
+
o["default"] = v;
|
|
92
|
+
});
|
|
93
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
94
|
+
var ownKeys = function(o) {
|
|
95
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
96
|
+
var ar = [];
|
|
97
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
98
|
+
return ar;
|
|
99
|
+
};
|
|
100
|
+
return ownKeys(o);
|
|
101
|
+
};
|
|
102
|
+
return function (mod) {
|
|
103
|
+
if (mod && mod.__esModule) return mod;
|
|
104
|
+
var result = {};
|
|
105
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
106
|
+
__setModuleDefault(result, mod);
|
|
107
|
+
return result;
|
|
108
|
+
};
|
|
109
|
+
})();
|
|
110
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
111
|
+
const constants_1 = require("../constants");
|
|
112
|
+
const system_1 = require("./utils/system");
|
|
113
|
+
const Format = __importStar(require("./format"));
|
|
114
|
+
const fundRegistry = __importStar(require("../fund_registry"));
|
|
115
|
+
const chainOrders = __importStar(require("../chain_orders"));
|
|
116
|
+
const math_1 = require("./utils/math");
|
|
117
|
+
const processed_fill_store_1 = require("./processed_fill_store");
|
|
118
|
+
const errors_1 = require("../utils/errors");
|
|
82
119
|
const { toFiniteNumber } = Format;
|
|
83
|
-
const fundRegistry = require('../fund_registry');
|
|
84
120
|
/**
|
|
85
121
|
* Accountant engine - Specialized handler for fund tracking and calculations
|
|
86
122
|
* @class Accountant
|
|
@@ -105,7 +141,7 @@ class Accountant {
|
|
|
105
141
|
this._pendingInvariantSnapshot = null; // Coalesces latest request while one is running
|
|
106
142
|
this._logThrottleState = new Map();
|
|
107
143
|
}
|
|
108
|
-
_logThrottled(key, message, level = 'warn', intervalMs = TIMING.LOG_THROTTLE_INTERVAL_MS) {
|
|
144
|
+
_logThrottled(key, message, level = 'warn', intervalMs = constants_1.TIMING.LOG_THROTTLE_INTERVAL_MS) {
|
|
109
145
|
const now = Date.now();
|
|
110
146
|
let state = this._logThrottleState.get(key);
|
|
111
147
|
if (!state || (now - state.lastAt) >= intervalMs) {
|
|
@@ -131,7 +167,7 @@ class Accountant {
|
|
|
131
167
|
}
|
|
132
168
|
_getBtsOrderType() {
|
|
133
169
|
const mgr = this.manager;
|
|
134
|
-
const btsSide = (mgr.config?.assetA === 'BTS') ? ORDER_TYPES.SELL : (mgr.config?.assetB === 'BTS') ? ORDER_TYPES.BUY : null;
|
|
170
|
+
const btsSide = (mgr.config?.assetA === 'BTS') ? constants_1.ORDER_TYPES.SELL : (mgr.config?.assetB === 'BTS') ? constants_1.ORDER_TYPES.BUY : null;
|
|
135
171
|
return btsSide;
|
|
136
172
|
}
|
|
137
173
|
_normalizeBtsFeeState(order) {
|
|
@@ -142,12 +178,12 @@ class Accountant {
|
|
|
142
178
|
}
|
|
143
179
|
_getBtsFeeSchedule() {
|
|
144
180
|
try {
|
|
145
|
-
const fees = getAssetFees('BTS');
|
|
181
|
+
const fees = (0, math_1.getAssetFees)('BTS');
|
|
146
182
|
return {
|
|
147
183
|
createFee: Math.max(0, toFiniteNumber(fees?.createFee, 0)),
|
|
148
184
|
updateFee: Math.max(0, toFiniteNumber(fees?.updateFee, 0)),
|
|
149
185
|
cancelFee: Math.max(0, toFiniteNumber(fees?.cancelFee, 0)),
|
|
150
|
-
makerFeeDiscountPercent: Math.max(0, toFiniteNumber(fees?.makerFeeDiscountPercent, this.manager?.config?.feeParams?.MAKER_REFUND_PERCENT ?? FEE_PARAMETERS.MAKER_REFUND_PERCENT))
|
|
186
|
+
makerFeeDiscountPercent: Math.max(0, toFiniteNumber(fees?.makerFeeDiscountPercent, this.manager?.config?.feeParams?.MAKER_REFUND_PERCENT ?? constants_1.FEE_PARAMETERS.MAKER_REFUND_PERCENT))
|
|
151
187
|
};
|
|
152
188
|
}
|
|
153
189
|
catch (err) {
|
|
@@ -156,7 +192,7 @@ class Accountant {
|
|
|
156
192
|
createFee: 0,
|
|
157
193
|
updateFee: 0,
|
|
158
194
|
cancelFee: 0,
|
|
159
|
-
makerFeeDiscountPercent: this.manager?.config?.feeParams?.MAKER_REFUND_PERCENT ?? FEE_PARAMETERS.MAKER_REFUND_PERCENT
|
|
195
|
+
makerFeeDiscountPercent: this.manager?.config?.feeParams?.MAKER_REFUND_PERCENT ?? constants_1.FEE_PARAMETERS.MAKER_REFUND_PERCENT
|
|
160
196
|
};
|
|
161
197
|
}
|
|
162
198
|
}
|
|
@@ -178,8 +214,8 @@ class Accountant {
|
|
|
178
214
|
}
|
|
179
215
|
_resolveBtsFeeLifecycle(oldOrder, newOrder, context, explicitFee) {
|
|
180
216
|
const fee = Math.max(0, toFiniteNumber(explicitFee, 0));
|
|
181
|
-
const oldActive = !!(oldOrder && (oldOrder.state === ORDER_STATES.ACTIVE || oldOrder.state === ORDER_STATES.PARTIAL) && oldOrder.orderId);
|
|
182
|
-
const newActive = !!(newOrder && (newOrder.state === ORDER_STATES.ACTIVE || newOrder.state === ORDER_STATES.PARTIAL) && newOrder.orderId);
|
|
217
|
+
const oldActive = !!(oldOrder && (oldOrder.state === constants_1.ORDER_STATES.ACTIVE || oldOrder.state === constants_1.ORDER_STATES.PARTIAL) && oldOrder.orderId);
|
|
218
|
+
const newActive = !!(newOrder && (newOrder.state === constants_1.ORDER_STATES.ACTIVE || newOrder.state === constants_1.ORDER_STATES.PARTIAL) && newOrder.orderId);
|
|
183
219
|
const oldDeferred = this._normalizeBtsFeeState(oldOrder).deferredFee;
|
|
184
220
|
const sameChainOrder = oldActive && newActive && oldOrder.orderId === newOrder.orderId;
|
|
185
221
|
const feeSchedule = this._getBtsFeeSchedule();
|
|
@@ -317,11 +353,11 @@ class Accountant {
|
|
|
317
353
|
let chainBuy = 0, chainSell = 0;
|
|
318
354
|
let virtualBuy = 0, virtualSell = 0;
|
|
319
355
|
// AUTO-SYNC SPREAD COUNT
|
|
320
|
-
mgr.currentSpreadCount = mgr._ordersByType[ORDER_TYPES.SPREAD]?.size || 0;
|
|
356
|
+
mgr.currentSpreadCount = mgr._ordersByType[constants_1.ORDER_TYPES.SPREAD]?.size || 0;
|
|
321
357
|
// STEP 1-4: Iterate all orders, classify, and aggregate by state
|
|
322
358
|
for (const order of orderSnapshot) {
|
|
323
|
-
const isActive = (order.state === ORDER_STATES.ACTIVE || order.state === ORDER_STATES.PARTIAL) && !!order.orderId;
|
|
324
|
-
const isVirtual = (order.state === ORDER_STATES.VIRTUAL);
|
|
359
|
+
const isActive = (order.state === constants_1.ORDER_STATES.ACTIVE || order.state === constants_1.ORDER_STATES.PARTIAL) && !!order.orderId;
|
|
360
|
+
const isVirtual = (order.state === constants_1.ORDER_STATES.VIRTUAL);
|
|
325
361
|
const size = toFiniteNumber(order.size);
|
|
326
362
|
if (size <= 0)
|
|
327
363
|
continue;
|
|
@@ -330,8 +366,8 @@ class Accountant {
|
|
|
330
366
|
// - SPREAD type: derive from price relation to startPrice (market midpoint)
|
|
331
367
|
// * price < startPrice → BUY side (lower prices are bids)
|
|
332
368
|
// * price >= startPrice → SELL side (higher prices are asks)
|
|
333
|
-
const isBuy = order.type === ORDER_TYPES.BUY || (order.type === ORDER_TYPES.SPREAD && order.price < mgr.config.startPrice);
|
|
334
|
-
const isSell = order.type === ORDER_TYPES.SELL || (order.type === ORDER_TYPES.SPREAD && order.price >= mgr.config.startPrice);
|
|
369
|
+
const isBuy = order.type === constants_1.ORDER_TYPES.BUY || (order.type === constants_1.ORDER_TYPES.SPREAD && order.price < mgr.config.startPrice);
|
|
370
|
+
const isSell = order.type === constants_1.ORDER_TYPES.SELL || (order.type === constants_1.ORDER_TYPES.SPREAD && order.price >= mgr.config.startPrice);
|
|
335
371
|
if (isBuy) {
|
|
336
372
|
if (isActive) {
|
|
337
373
|
gridBuy += size;
|
|
@@ -364,8 +400,8 @@ class Accountant {
|
|
|
364
400
|
mgr.funds.total.grid = { buy: gridBuy + virtualBuy, sell: gridSell + virtualSell };
|
|
365
401
|
// STEP 6: Calculate available funds (what we can spend right now)
|
|
366
402
|
// Uses utils::calculateAvailableFundsValue which deducts committe amounts
|
|
367
|
-
mgr.funds.available.buy = calculateAvailableFundsValue('buy', mgr.accountTotals, mgr.funds, mgr.config.assetA, mgr.config.assetB, mgr.config.activeOrders, mgr.config.min_BTS_value, mgr.config?.feeParams ?? null);
|
|
368
|
-
mgr.funds.available.sell = calculateAvailableFundsValue('sell', mgr.accountTotals, mgr.funds, mgr.config.assetA, mgr.config.assetB, mgr.config.activeOrders, mgr.config.min_BTS_value, mgr.config?.feeParams ?? null);
|
|
403
|
+
mgr.funds.available.buy = (0, math_1.calculateAvailableFundsValue)('buy', mgr.accountTotals, mgr.funds, mgr.config.assetA, mgr.config.assetB, mgr.config.activeOrders, mgr.config.min_BTS_value, mgr.config?.feeParams ?? null);
|
|
404
|
+
mgr.funds.available.sell = (0, math_1.calculateAvailableFundsValue)('sell', mgr.accountTotals, mgr.funds, mgr.config.assetA, mgr.config.assetB, mgr.config.activeOrders, mgr.config.min_BTS_value, mgr.config?.feeParams ?? null);
|
|
369
405
|
// Ensure percentage-based allocations are applied to the newly calculated totals
|
|
370
406
|
if (typeof mgr.applyBotFundsAllocation === 'function') {
|
|
371
407
|
mgr.applyBotFundsAllocation();
|
|
@@ -383,8 +419,8 @@ class Accountant {
|
|
|
383
419
|
const runVerification = (nextSnapshot) => {
|
|
384
420
|
this._isVerifyingInvariants = true;
|
|
385
421
|
this._verifyFundInvariants(mgr, nextSnapshot.chainFreeBuy, nextSnapshot.chainFreeSell, nextSnapshot.chainBuy, nextSnapshot.chainSell)
|
|
386
|
-
.catch(err => {
|
|
387
|
-
mgr.logger?.log?.(`[RECOVERY] Verification error: ${err
|
|
422
|
+
.catch((err) => {
|
|
423
|
+
mgr.logger?.log?.(`[RECOVERY] Verification error: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
|
|
388
424
|
})
|
|
389
425
|
.finally(() => {
|
|
390
426
|
this._isVerifyingInvariants = false;
|
|
@@ -427,8 +463,8 @@ class Accountant {
|
|
|
427
463
|
if (!Number.isFinite(buyPrecision) || !Number.isFinite(sellPrecision)) {
|
|
428
464
|
return; // Skip invariant check if precision not available
|
|
429
465
|
}
|
|
430
|
-
const precisionSlackBuy = getPrecisionSlack(buyPrecision);
|
|
431
|
-
const precisionSlackSell = getPrecisionSlack(sellPrecision);
|
|
466
|
+
const precisionSlackBuy = (0, math_1.getPrecisionSlack)(buyPrecision);
|
|
467
|
+
const precisionSlackSell = (0, math_1.getPrecisionSlack)(sellPrecision);
|
|
432
468
|
const PERCENT_TOLERANCE = (mgr.config?.gridLimits?.FUND_INVARIANT_PERCENT_TOLERANCE) / 100;
|
|
433
469
|
// FIX 5: Widen tolerance when orphan fills were recently credited.
|
|
434
470
|
// Orphan fill accounting adjusts mgr.accountTotals optimistically, but
|
|
@@ -509,7 +545,7 @@ class Accountant {
|
|
|
509
545
|
}
|
|
510
546
|
}
|
|
511
547
|
catch (_err) {
|
|
512
|
-
mgr.logger?.log?.(`[INVARIANT] Cross-bot registry check skipped: ${_err
|
|
548
|
+
mgr.logger?.log?.(`[INVARIANT] Cross-bot registry check skipped: ${(0, errors_1.getErrorMessage)(_err)}`, 'warn');
|
|
513
549
|
}
|
|
514
550
|
}
|
|
515
551
|
// NEW: Attempt immediate recovery if violation detected
|
|
@@ -519,13 +555,13 @@ class Accountant {
|
|
|
519
555
|
await this._attemptFundRecovery(mgr, 'Fund invariant violation');
|
|
520
556
|
}
|
|
521
557
|
catch (err) {
|
|
522
|
-
mgr.logger?.log?.(`[RECOVERY] Deferred recovery failed: ${err
|
|
558
|
+
mgr.logger?.log?.(`[RECOVERY] Deferred recovery failed: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
|
|
523
559
|
mgr._recoveryState = { ...mgr._recoveryState, lastFailureAt: Date.now() };
|
|
524
560
|
}
|
|
525
561
|
};
|
|
526
562
|
if (mgr._gridLock?.isLocked?.()) {
|
|
527
|
-
doRecovery().catch(err => {
|
|
528
|
-
mgr.logger?.log?.(`[RECOVERY] Deferred recovery scheduling failed: ${err
|
|
563
|
+
doRecovery().catch((err) => {
|
|
564
|
+
mgr.logger?.log?.(`[RECOVERY] Deferred recovery scheduling failed: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
|
|
529
565
|
});
|
|
530
566
|
}
|
|
531
567
|
else {
|
|
@@ -541,7 +577,7 @@ class Accountant {
|
|
|
541
577
|
* @returns {Promise<Object>} - Validation result from validateGridStateForPersistence()
|
|
542
578
|
*/
|
|
543
579
|
async _performStateRecovery(mgr) {
|
|
544
|
-
const accountRef = resolveAccountRef(mgr);
|
|
580
|
+
const accountRef = (0, system_1.resolveAccountRef)(mgr, '');
|
|
545
581
|
if (!accountRef) {
|
|
546
582
|
return {
|
|
547
583
|
isValid: false,
|
|
@@ -555,7 +591,6 @@ class Accountant {
|
|
|
555
591
|
// proceeds, so the temporary invariant tolerance is no longer needed.
|
|
556
592
|
mgr._orphanFillsCreditedAt = null;
|
|
557
593
|
// 2. Sync from open orders
|
|
558
|
-
const chainOrders = require('../chain_orders');
|
|
559
594
|
const openOrders = await chainOrders.readOpenOrders(accountRef);
|
|
560
595
|
// Recovery runs after fetchAccountTotals() has refreshed authoritative balances
|
|
561
596
|
// from chain. During this pass we only want to reconcile grid structure/order
|
|
@@ -608,7 +643,7 @@ class Accountant {
|
|
|
608
643
|
if (!mgr._recoveryState || typeof mgr._recoveryState !== 'object') {
|
|
609
644
|
mgr._recoveryState = { attemptCount: 0, lastAttemptAt: 0, inFlight: false, lastFailureAt: 0, structuralResyncRequested: false };
|
|
610
645
|
}
|
|
611
|
-
const pt = mgr.config?.pipelineTiming || PIPELINE_TIMING;
|
|
646
|
+
const pt = mgr.config?.pipelineTiming || constants_1.PIPELINE_TIMING;
|
|
612
647
|
const state = mgr._recoveryState;
|
|
613
648
|
const now = Date.now();
|
|
614
649
|
const retryIntervalMs = Math.max(0, Number(pt.RECOVERY_RETRY_INTERVAL_MS));
|
|
@@ -621,12 +656,12 @@ class Accountant {
|
|
|
621
656
|
// Decay: if enough time has passed since the last failure, treat this
|
|
622
657
|
// as a fresh violation cycle to prevent stale counts from a previous
|
|
623
658
|
// cycle permanently exhausting the attempt budget.
|
|
624
|
-
const decayMs = retryIntervalMs > 0 ? retryIntervalMs * 3 : (pt.RECOVERY_DECAY_FALLBACK_MS ?? PIPELINE_TIMING.RECOVERY_DECAY_FALLBACK_MS);
|
|
659
|
+
const decayMs = retryIntervalMs > 0 ? retryIntervalMs * 3 : (pt.RECOVERY_DECAY_FALLBACK_MS ?? constants_1.PIPELINE_TIMING.RECOVERY_DECAY_FALLBACK_MS);
|
|
625
660
|
if (state.attemptCount > 0 && state.lastFailureAt > 0 && (now - state.lastFailureAt) > decayMs) {
|
|
626
661
|
// Log at 'info' level so operators can monitor for repeated decay patterns
|
|
627
662
|
// which may indicate a persistent issue that self-corrects just long enough
|
|
628
663
|
// to trigger decay, then recurs. Pattern: repeated "decayed" messages.
|
|
629
|
-
mgr.logger?.log?.(`[RECOVERY] Attempt count decayed (${state.attemptCount} -> 0) after ${Math.round((now - state.lastFailureAt) / TIMING.MILLISECONDS_PER_SECOND)}s idle`, 'info');
|
|
664
|
+
mgr.logger?.log?.(`[RECOVERY] Attempt count decayed (${state.attemptCount} -> 0) after ${Math.round((now - state.lastFailureAt) / constants_1.TIMING.MILLISECONDS_PER_SECOND)}s idle`, 'info');
|
|
630
665
|
state.attemptCount = 0;
|
|
631
666
|
state.lastFailureAt = 0;
|
|
632
667
|
}
|
|
@@ -689,9 +724,9 @@ class Accountant {
|
|
|
689
724
|
mgr.logger?.log?.(`[RECOVERY] Structural grid resync not scheduled: ${scheduleResult.reason || 'request skipped'}`, 'warn');
|
|
690
725
|
}
|
|
691
726
|
})
|
|
692
|
-
.catch(err => {
|
|
727
|
+
.catch((err) => {
|
|
693
728
|
state.structuralResyncRequested = false;
|
|
694
|
-
mgr.logger?.log?.(`[RECOVERY] Structural grid resync scheduling failed: ${err
|
|
729
|
+
mgr.logger?.log?.(`[RECOVERY] Structural grid resync scheduling failed: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
|
|
695
730
|
});
|
|
696
731
|
}
|
|
697
732
|
else {
|
|
@@ -703,7 +738,7 @@ class Accountant {
|
|
|
703
738
|
}
|
|
704
739
|
catch (err) {
|
|
705
740
|
state.lastFailureAt = Date.now();
|
|
706
|
-
mgr.logger?.log?.(`[RECOVERY] State recovery error: ${err
|
|
741
|
+
mgr.logger?.log?.(`[RECOVERY] State recovery error: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
|
|
707
742
|
return false;
|
|
708
743
|
}
|
|
709
744
|
finally {
|
|
@@ -741,7 +776,7 @@ class Accountant {
|
|
|
741
776
|
*/
|
|
742
777
|
async tryDeductFromChainFree(orderType, size, operation = 'move') {
|
|
743
778
|
const mgr = this.manager;
|
|
744
|
-
const isBuy = orderType === ORDER_TYPES.BUY;
|
|
779
|
+
const isBuy = orderType === constants_1.ORDER_TYPES.BUY;
|
|
745
780
|
const key = isBuy ? 'buyFree' : 'sellFree';
|
|
746
781
|
if (!mgr.accountTotals || mgr.accountTotals[key] === undefined) {
|
|
747
782
|
return { ok: false, reason: 'undefined' };
|
|
@@ -779,7 +814,7 @@ class Accountant {
|
|
|
779
814
|
*/
|
|
780
815
|
async addToChainFree(orderType, size, operation = 'release') {
|
|
781
816
|
const mgr = this.manager;
|
|
782
|
-
const isBuy = orderType === ORDER_TYPES.BUY;
|
|
817
|
+
const isBuy = orderType === constants_1.ORDER_TYPES.BUY;
|
|
783
818
|
const key = isBuy ? 'buyFree' : 'sellFree';
|
|
784
819
|
if (!mgr.accountTotals || mgr.accountTotals[key] === undefined)
|
|
785
820
|
return false;
|
|
@@ -800,21 +835,20 @@ class Accountant {
|
|
|
800
835
|
* @param {string} [context='fill'] - Label for logging
|
|
801
836
|
* @returns {Promise<void>}
|
|
802
837
|
*/
|
|
803
|
-
async recordFillBalances(paysAsset, paysAmount,
|
|
838
|
+
async recordFillBalances(paysAsset, paysAmount, _receivesAsset, receivesAmount, context = 'fill') {
|
|
804
839
|
return await this.manager._fundLock.acquire(async () => {
|
|
805
840
|
const mgr = this.manager;
|
|
806
841
|
const assetA = mgr.config.assetA;
|
|
807
|
-
const assetB = mgr.config.assetB;
|
|
808
842
|
// Determine orientation
|
|
809
843
|
if (paysAsset === assetA) {
|
|
810
844
|
// Bot paid assetA (Selling assetA, buying assetB)
|
|
811
|
-
this.adjustTotalBalance(ORDER_TYPES.SELL, -paysAmount, `${context}-pays`);
|
|
812
|
-
this.adjustTotalBalance(ORDER_TYPES.BUY, receivesAmount, `${context}-receives`);
|
|
845
|
+
this.adjustTotalBalance(constants_1.ORDER_TYPES.SELL, -paysAmount, `${context}-pays`);
|
|
846
|
+
this.adjustTotalBalance(constants_1.ORDER_TYPES.BUY, receivesAmount, `${context}-receives`);
|
|
813
847
|
}
|
|
814
848
|
else {
|
|
815
849
|
// Bot paid assetB (Buying assetA, selling assetB)
|
|
816
|
-
this.adjustTotalBalance(ORDER_TYPES.BUY, -paysAmount, `${context}-pays`);
|
|
817
|
-
this.adjustTotalBalance(ORDER_TYPES.SELL, receivesAmount, `${context}-receives`);
|
|
850
|
+
this.adjustTotalBalance(constants_1.ORDER_TYPES.BUY, -paysAmount, `${context}-pays`);
|
|
851
|
+
this.adjustTotalBalance(constants_1.ORDER_TYPES.SELL, receivesAmount, `${context}-receives`);
|
|
818
852
|
}
|
|
819
853
|
});
|
|
820
854
|
}
|
|
@@ -826,7 +860,7 @@ class Accountant {
|
|
|
826
860
|
*/
|
|
827
861
|
adjustTotalBalance(orderType, delta, operation) {
|
|
828
862
|
const mgr = this.manager;
|
|
829
|
-
const isBuy = (orderType === ORDER_TYPES.BUY);
|
|
863
|
+
const isBuy = (orderType === constants_1.ORDER_TYPES.BUY);
|
|
830
864
|
const freeKey = isBuy ? 'buyFree' : 'sellFree';
|
|
831
865
|
const totalKey = isBuy ? 'buy' : 'sell';
|
|
832
866
|
if (!mgr.accountTotals)
|
|
@@ -850,10 +884,10 @@ class Accountant {
|
|
|
850
884
|
* @returns {string|null} Normalized side or null if unrecognised
|
|
851
885
|
*/
|
|
852
886
|
_normalizeSideHint(sideHint) {
|
|
853
|
-
if (sideHint === ORDER_TYPES.BUY || sideHint === 'buy')
|
|
854
|
-
return ORDER_TYPES.BUY;
|
|
855
|
-
if (sideHint === ORDER_TYPES.SELL || sideHint === 'sell')
|
|
856
|
-
return ORDER_TYPES.SELL;
|
|
887
|
+
if (sideHint === constants_1.ORDER_TYPES.BUY || sideHint === 'buy')
|
|
888
|
+
return constants_1.ORDER_TYPES.BUY;
|
|
889
|
+
if (sideHint === constants_1.ORDER_TYPES.SELL || sideHint === 'sell')
|
|
890
|
+
return constants_1.ORDER_TYPES.SELL;
|
|
857
891
|
return null;
|
|
858
892
|
}
|
|
859
893
|
/**
|
|
@@ -907,8 +941,8 @@ class Accountant {
|
|
|
907
941
|
newOrder = { ...newOrder };
|
|
908
942
|
}
|
|
909
943
|
if (!skipAssetAccounting) {
|
|
910
|
-
const oldIsActive = (oldOrder.state === ORDER_STATES.ACTIVE || oldOrder.state === ORDER_STATES.PARTIAL);
|
|
911
|
-
const newIsActive = (newOrder.state === ORDER_STATES.ACTIVE || newOrder.state === ORDER_STATES.PARTIAL);
|
|
944
|
+
const oldIsActive = (oldOrder.state === constants_1.ORDER_STATES.ACTIVE || oldOrder.state === constants_1.ORDER_STATES.PARTIAL);
|
|
945
|
+
const newIsActive = (newOrder.state === constants_1.ORDER_STATES.ACTIVE || newOrder.state === constants_1.ORDER_STATES.PARTIAL);
|
|
912
946
|
const oldSize = toFiniteNumber(oldOrder.size);
|
|
913
947
|
const newSize = toFiniteNumber(newOrder.size);
|
|
914
948
|
// 1. Handle Capital Commitment (Moves between FREE and LOCKED)
|
|
@@ -922,8 +956,8 @@ class Accountant {
|
|
|
922
956
|
if (mgr.logger && mgr.logger.level === 'debug') {
|
|
923
957
|
mgr.logger.log(`[ACCOUNTING] updateOptimisticFreeBalance: id=${newOrder.id}, type=${newOrder.type}, ` +
|
|
924
958
|
`state=${oldOrder.state}->${newOrder.state}, ` +
|
|
925
|
-
`size=${Format.formatSizeByOrderType(oldSize, sideForPrecision, mgr.assets)}->${Format.formatSizeByOrderType(newSize, sideForPrecision, mgr.assets)}, ` +
|
|
926
|
-
`delta=${Format.formatSizeByOrderType(commitmentDelta, sideForPrecision, mgr.assets)}, context=${context}`, 'debug');
|
|
959
|
+
`size=${Format.formatSizeByOrderType(oldSize, sideForPrecision ?? '', mgr.assets)}->${Format.formatSizeByOrderType(newSize, sideForPrecision ?? '', mgr.assets)}, ` +
|
|
960
|
+
`delta=${Format.formatSizeByOrderType(commitmentDelta, sideForPrecision ?? '', mgr.assets)}, context=${context}`, 'debug');
|
|
927
961
|
}
|
|
928
962
|
if (commitmentDelta > 0) {
|
|
929
963
|
// Lock capital: move from Free to Committed
|
|
@@ -958,8 +992,8 @@ class Accountant {
|
|
|
958
992
|
// attempting new deductions, reducing redundant recovery cycles.
|
|
959
993
|
if (!mgr._pendingRecovery) {
|
|
960
994
|
mgr._pendingRecovery = this._attemptFundRecovery(mgr, 'Optimistic commitment deduction failure')
|
|
961
|
-
.catch(err => {
|
|
962
|
-
mgr.logger?.log?.(`[RECOVERY] Immediate recovery scheduling failed: ${err
|
|
995
|
+
.catch((err) => {
|
|
996
|
+
mgr.logger?.log?.(`[RECOVERY] Immediate recovery scheduling failed: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
|
|
963
997
|
mgr._recoveryState = { ...mgr._recoveryState, lastFailureAt: Date.now() };
|
|
964
998
|
})
|
|
965
999
|
.finally(() => {
|
|
@@ -1015,7 +1049,7 @@ class Accountant {
|
|
|
1015
1049
|
if (!side)
|
|
1016
1050
|
return;
|
|
1017
1051
|
const fees = mgr.funds.btsFeesOwed;
|
|
1018
|
-
const orderType = (side === 'buy') ? ORDER_TYPES.BUY : ORDER_TYPES.SELL;
|
|
1052
|
+
const orderType = (side === 'buy') ? constants_1.ORDER_TYPES.BUY : constants_1.ORDER_TYPES.SELL;
|
|
1019
1053
|
const freeKey = (side === 'buy') ? 'buyFree' : 'sellFree';
|
|
1020
1054
|
const chainFree = mgr.accountTotals[freeKey] || 0;
|
|
1021
1055
|
// SUFFICIENCY CHECK: Defer if insufficient funds
|
|
@@ -1054,11 +1088,11 @@ class Accountant {
|
|
|
1054
1088
|
const size = toFiniteNumber(order.size);
|
|
1055
1089
|
if (size <= 0)
|
|
1056
1090
|
continue;
|
|
1057
|
-
if (order.type === ORDER_TYPES.BUY) {
|
|
1091
|
+
if (order.type === constants_1.ORDER_TYPES.BUY) {
|
|
1058
1092
|
// Buy order uses Asset B (Quote)
|
|
1059
1093
|
requiredBuy += size;
|
|
1060
1094
|
}
|
|
1061
|
-
else if (order.type === ORDER_TYPES.SELL) {
|
|
1095
|
+
else if (order.type === constants_1.ORDER_TYPES.SELL) {
|
|
1062
1096
|
// Sell order uses Asset A (Base)
|
|
1063
1097
|
requiredSell += size;
|
|
1064
1098
|
}
|
|
@@ -1082,8 +1116,8 @@ class Accountant {
|
|
|
1082
1116
|
if (mgr.assets?.assetB?.precision === undefined || mgr.assets?.assetA?.precision === undefined) {
|
|
1083
1117
|
throw new Error(`CRITICAL: Asset precision unavailable for slack calculation`);
|
|
1084
1118
|
}
|
|
1085
|
-
const slackBuy = getPrecisionSlack(mgr.assets?.assetB?.precision);
|
|
1086
|
-
const slackSell = getPrecisionSlack(mgr.assets?.assetA?.precision);
|
|
1119
|
+
const slackBuy = (0, math_1.getPrecisionSlack)(mgr.assets?.assetB?.precision);
|
|
1120
|
+
const slackSell = (0, math_1.getPrecisionSlack)(mgr.assets?.assetA?.precision);
|
|
1087
1121
|
const buyShortfall = Math.max(0, requiredBuy - (totalBuy + slackBuy));
|
|
1088
1122
|
const sellShortfall = Math.max(0, requiredSell - (totalSell + slackSell));
|
|
1089
1123
|
const isValid = buyShortfall === 0 && sellShortfall === 0;
|
|
@@ -1117,15 +1151,15 @@ class Accountant {
|
|
|
1117
1151
|
// For other assets: apply normal fee calculation (market fee %)
|
|
1118
1152
|
// Fail-safe: if fee cache is missing/stale, do not crash fill processing.
|
|
1119
1153
|
try {
|
|
1120
|
-
const feeInfo = getAssetFees(assetSymbol, rawAmount, isMaker);
|
|
1121
|
-
const netProceeds = toFiniteNumber(feeInfo?.netProceeds,
|
|
1154
|
+
const feeInfo = (0, math_1.getAssetFees)(assetSymbol, rawAmount, isMaker);
|
|
1155
|
+
const netProceeds = toFiniteNumber(feeInfo?.netProceeds, undefined);
|
|
1122
1156
|
if (netProceeds === null) {
|
|
1123
1157
|
throw new Error('netProceeds is not finite');
|
|
1124
1158
|
}
|
|
1125
1159
|
return netProceeds;
|
|
1126
1160
|
}
|
|
1127
1161
|
catch (err) {
|
|
1128
|
-
this.manager?.logger?.log?.(`[FILL-FEE] CRITICAL: Failed to compute fees for ${assetSymbol}: ${err
|
|
1162
|
+
this.manager?.logger?.log?.(`[FILL-FEE] CRITICAL: Failed to compute fees for ${assetSymbol}: ${(0, errors_1.getErrorMessage)(err)}. Using raw proceeds (${Format.formatAmount8(rawAmount)}) — fund tracking will over-credit by un-deducted fee.`, 'error');
|
|
1129
1163
|
return rawAmount;
|
|
1130
1164
|
}
|
|
1131
1165
|
}
|
|
@@ -1143,7 +1177,7 @@ class Accountant {
|
|
|
1143
1177
|
// Persistence is durable by default. Callers that process many fills under
|
|
1144
1178
|
// the fill lock can opt into deferred persistence and close the window with
|
|
1145
1179
|
// one explicit batch flush before leaving the processing cycle.
|
|
1146
|
-
const persistenceMode = resolveProcessedFillPersistenceMode(options);
|
|
1180
|
+
const persistenceMode = (0, processed_fill_store_1.resolveProcessedFillPersistenceMode)(options);
|
|
1147
1181
|
const pays = fillOp?.pays;
|
|
1148
1182
|
const receives = fillOp?.receives;
|
|
1149
1183
|
if (!pays || !receives)
|
|
@@ -1169,22 +1203,22 @@ class Accountant {
|
|
|
1169
1203
|
const assetASymbol = mgr.config?.assetA;
|
|
1170
1204
|
const assetBSymbol = mgr.config?.assetB;
|
|
1171
1205
|
if (pays.asset_id === assetAId) {
|
|
1172
|
-
const amount = blockchainToFloat(pays.amount, assetAPrecision
|
|
1173
|
-
balanceAdjustments.push({ orderType: ORDER_TYPES.SELL, delta: -amount, operation: 'fill-pays' });
|
|
1206
|
+
const amount = (0, math_1.blockchainToFloat)(pays.amount, assetAPrecision);
|
|
1207
|
+
balanceAdjustments.push({ orderType: constants_1.ORDER_TYPES.SELL, delta: -amount, operation: 'fill-pays' });
|
|
1174
1208
|
}
|
|
1175
1209
|
else if (pays.asset_id === assetBId) {
|
|
1176
|
-
const amount = blockchainToFloat(pays.amount, assetBPrecision
|
|
1177
|
-
balanceAdjustments.push({ orderType: ORDER_TYPES.BUY, delta: -amount, operation: 'fill-pays' });
|
|
1210
|
+
const amount = (0, math_1.blockchainToFloat)(pays.amount, assetBPrecision);
|
|
1211
|
+
balanceAdjustments.push({ orderType: constants_1.ORDER_TYPES.BUY, delta: -amount, operation: 'fill-pays' });
|
|
1178
1212
|
}
|
|
1179
1213
|
if (receives.asset_id === assetAId) {
|
|
1180
|
-
const rawAmount = blockchainToFloat(receives.amount, assetAPrecision
|
|
1214
|
+
const rawAmount = (0, math_1.blockchainToFloat)(receives.amount, assetAPrecision);
|
|
1181
1215
|
const netAmount = this._deductFeesFromProceeds(assetASymbol, rawAmount, isMaker);
|
|
1182
|
-
balanceAdjustments.push({ orderType: ORDER_TYPES.SELL, delta: netAmount, operation: 'fill-receives' });
|
|
1216
|
+
balanceAdjustments.push({ orderType: constants_1.ORDER_TYPES.SELL, delta: netAmount, operation: 'fill-receives' });
|
|
1183
1217
|
}
|
|
1184
1218
|
else if (receives.asset_id === assetBId) {
|
|
1185
|
-
const rawAmount = blockchainToFloat(receives.amount, assetBPrecision
|
|
1219
|
+
const rawAmount = (0, math_1.blockchainToFloat)(receives.amount, assetBPrecision);
|
|
1186
1220
|
const netAmount = this._deductFeesFromProceeds(assetBSymbol, rawAmount, isMaker);
|
|
1187
|
-
balanceAdjustments.push({ orderType: ORDER_TYPES.BUY, delta: netAmount, operation: 'fill-receives' });
|
|
1221
|
+
balanceAdjustments.push({ orderType: constants_1.ORDER_TYPES.BUY, delta: netAmount, operation: 'fill-receives' });
|
|
1188
1222
|
}
|
|
1189
1223
|
const btsRefundAdjustment = this._buildBtsDeferredRefundAdjustment(fillOp.order_id, isMaker);
|
|
1190
1224
|
if (btsRefundAdjustment) {
|
|
@@ -1195,7 +1229,7 @@ class Accountant {
|
|
|
1195
1229
|
if (fillKey) {
|
|
1196
1230
|
processedAt = Date.now();
|
|
1197
1231
|
const lastProcessed = tracker.get(fillKey);
|
|
1198
|
-
if (lastProcessed !== undefined && (processedAt - lastProcessed) < TIMING.FILL_RECORD_RETENTION_MS) {
|
|
1232
|
+
if (lastProcessed !== undefined && (processedAt - lastProcessed) < constants_1.TIMING.FILL_RECORD_RETENTION_MS) {
|
|
1199
1233
|
this.manager?.logger?.log(`[FILL-DEDUP] Skipping duplicate credit for fill ${fillKey} (processed ${processedAt - lastProcessed}ms ago)`, 'warn');
|
|
1200
1234
|
return false;
|
|
1201
1235
|
}
|
|
@@ -1209,12 +1243,12 @@ class Accountant {
|
|
|
1209
1243
|
await processedFillStore.persist(fillKey, processedAt || Date.now(), { mode: persistenceMode });
|
|
1210
1244
|
}
|
|
1211
1245
|
catch (err) {
|
|
1212
|
-
if (persistenceMode === PROCESSED_FILL_PERSISTENCE_MODES.IMMEDIATE) {
|
|
1246
|
+
if (persistenceMode === processed_fill_store_1.PROCESSED_FILL_PERSISTENCE_MODES.IMMEDIATE) {
|
|
1213
1247
|
// Clean up any pending write that the flush error handler re-queued.
|
|
1214
1248
|
processedFillStore.discard(fillKey, processedAt || Date.now());
|
|
1215
1249
|
throw err;
|
|
1216
1250
|
}
|
|
1217
|
-
mgr.logger?.log?.(`[FILL-DEDUP] Failed to persist fill ${fillKey}: ${err
|
|
1251
|
+
mgr.logger?.log?.(`[FILL-DEDUP] Failed to persist fill ${fillKey}: ${(0, errors_1.getErrorMessage)(err)}`, 'warn');
|
|
1218
1252
|
}
|
|
1219
1253
|
}
|
|
1220
1254
|
this._applyBalanceAdjustments(balanceAdjustments);
|
|
@@ -1222,7 +1256,7 @@ class Accountant {
|
|
|
1222
1256
|
tracker.set(fillKey, processedAt || Date.now());
|
|
1223
1257
|
// Prune entries beyond the retention horizon to prevent unbounded growth.
|
|
1224
1258
|
if (tracker.size > 500) {
|
|
1225
|
-
const cutoff = (processedAt || Date.now()) - TIMING.FILL_RECORD_RETENTION_MS;
|
|
1259
|
+
const cutoff = (processedAt || Date.now()) - constants_1.TIMING.FILL_RECORD_RETENTION_MS;
|
|
1226
1260
|
for (const [k, ts] of tracker) {
|
|
1227
1261
|
if (ts < cutoff)
|
|
1228
1262
|
tracker.delete(k);
|
|
@@ -1232,5 +1266,6 @@ class Accountant {
|
|
|
1232
1266
|
return true;
|
|
1233
1267
|
}
|
|
1234
1268
|
}
|
|
1269
|
+
exports.default = Accountant;
|
|
1235
1270
|
module.exports = Accountant;
|
|
1236
1271
|
//# sourceMappingURL=accounting.js.map
|