dexbot 1.6.4 → 1.6.6
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/CHANGELOG.md +75 -3
- package/README.md +109 -40
- package/analysis/README.md +19 -17
- package/analysis/account_resolver.ts +1 -11
- package/analysis/analyze_dynamic_weight.ts +9 -3
- package/analysis/bot_usage/kibana_bot_queries.ts +1 -1
- package/analysis/chain_pool.ts +1 -1
- package/analysis/fills_source.ts +0 -6
- package/analysis/grid_correction_check.ts +20 -26
- package/analysis/resolve_source.ts +1 -1
- package/analysis/trade_profitability.ts +2 -5
- package/analysis/tradingview/analyze_tradingview.ts +5 -0
- package/analysis/tradingview/tradingview_uplot_chart_generator.ts +2 -2
- package/analysis/trend_detection/DYNAMIC_WEIGHT_RESEARCH.md +35 -2
- package/analysis/trend_detection/README.md +1 -3
- package/analysis/trend_detection/dynamic_weight_chart_generator.ts +82 -10
- package/analysis/trend_detection/package.json +1 -1
- package/claw/modules/dexbot_profiles.ts +4 -3
- package/claw/package.json +1 -1
- package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
- package/claw/runtimes/openclaw-plugin/package.json +1 -1
- package/claw/tests/test_claw_mcp_transport.ts +2 -2
- package/claw/tests/test_dexbot_profiles.ts +18 -1
- package/dist/analysis/account_resolver.d.ts +1 -4
- package/dist/analysis/account_resolver.d.ts.map +1 -1
- package/dist/analysis/account_resolver.js +1 -1
- package/dist/analysis/account_resolver.js.map +1 -1
- package/dist/analysis/analyze_dynamic_weight.js +9 -3
- package/dist/analysis/analyze_dynamic_weight.js.map +1 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +1 -2
- package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.js +1 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -1
- package/dist/analysis/chain_pool.d.ts +1 -3
- package/dist/analysis/chain_pool.d.ts.map +1 -1
- package/dist/analysis/chain_pool.js +1 -1
- package/dist/analysis/chain_pool.js.map +1 -1
- package/dist/analysis/fills_source.d.ts +1 -51
- package/dist/analysis/fills_source.d.ts.map +1 -1
- package/dist/analysis/fills_source.js +1 -1
- package/dist/analysis/fills_source.js.map +1 -1
- package/dist/analysis/grid_correction_check.d.ts +2 -3
- package/dist/analysis/grid_correction_check.d.ts.map +1 -1
- package/dist/analysis/grid_correction_check.js +18 -26
- package/dist/analysis/grid_correction_check.js.map +1 -1
- package/dist/analysis/resolve_source.d.ts +1 -1
- package/dist/analysis/resolve_source.d.ts.map +1 -1
- package/dist/analysis/trade_profitability.d.ts.map +1 -1
- package/dist/analysis/trade_profitability.js +2 -7
- package/dist/analysis/trade_profitability.js.map +1 -1
- package/dist/analysis/tradingview/analyze_tradingview.d.ts.map +1 -1
- package/dist/analysis/tradingview/analyze_tradingview.js +5 -0
- package/dist/analysis/tradingview/analyze_tradingview.js.map +1 -1
- package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js +2 -2
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts.map +1 -1
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js +82 -10
- package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js.map +1 -1
- package/dist/dexbot.d.ts.map +1 -1
- package/dist/dexbot.js +85 -140
- package/dist/dexbot.js.map +1 -1
- package/dist/market_adapter/core/asymmetric_bounds.d.ts +2 -2
- package/dist/market_adapter/core/asymmetric_bounds.d.ts.map +1 -1
- package/dist/market_adapter/core/asymmetric_bounds.js +15 -12
- package/dist/market_adapter/core/asymmetric_bounds.js.map +1 -1
- package/dist/market_adapter/core/kibana_candles.d.ts +1 -15
- package/dist/market_adapter/core/kibana_candles.d.ts.map +1 -1
- package/dist/market_adapter/core/kibana_candles.js +1 -1
- package/dist/market_adapter/core/kibana_candles.js.map +1 -1
- package/dist/market_adapter/inputs/fetch_lp_data.d.ts +1 -35
- package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -1
- package/dist/market_adapter/inputs/fetch_lp_data.js +10 -54
- package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -1
- package/dist/market_adapter/inputs/kibana_feed_source.d.ts +1 -8
- package/dist/market_adapter/inputs/kibana_feed_source.d.ts.map +1 -1
- package/dist/market_adapter/inputs/kibana_feed_source.js +1 -1
- package/dist/market_adapter/inputs/kibana_feed_source.js.map +1 -1
- package/dist/market_adapter/inputs/window_cache.d.ts +2 -63
- package/dist/market_adapter/inputs/window_cache.d.ts.map +1 -1
- package/dist/market_adapter/inputs/window_cache.js +22 -102
- package/dist/market_adapter/inputs/window_cache.js.map +1 -1
- package/dist/market_adapter/interval_utils.d.ts +1 -1
- package/dist/market_adapter/interval_utils.js +1 -1
- package/dist/modules/account_bots.d.ts +70 -6
- package/dist/modules/account_bots.d.ts.map +1 -1
- package/dist/modules/account_bots.js +353 -149
- package/dist/modules/account_bots.js.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts.map +1 -1
- package/dist/modules/bitshares-native/crypto/ecc.browser.js +0 -31
- package/dist/modules/bitshares-native/crypto/ecc.browser.js.map +1 -1
- package/dist/modules/bot_defaults.d.ts +98 -0
- package/dist/modules/bot_defaults.d.ts.map +1 -0
- package/dist/modules/bot_defaults.js +169 -0
- package/dist/modules/bot_defaults.js.map +1 -0
- package/dist/modules/bot_settings.d.ts.map +1 -1
- package/dist/modules/bot_settings.js +4 -1
- package/dist/modules/bot_settings.js.map +1 -1
- package/dist/modules/config.d.ts +1 -0
- package/dist/modules/config.d.ts.map +1 -1
- package/dist/modules/config.js +1 -0
- package/dist/modules/config.js.map +1 -1
- package/dist/modules/constants.d.ts +11 -2
- package/dist/modules/constants.d.ts.map +1 -1
- package/dist/modules/constants.js +40 -27
- package/dist/modules/constants.js.map +1 -1
- package/dist/modules/credit_runtime.d.ts +0 -2
- package/dist/modules/credit_runtime.d.ts.map +1 -1
- package/dist/modules/credit_runtime.js +1 -10
- package/dist/modules/credit_runtime.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +13 -10
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_class.js +0 -9
- package/dist/modules/dexbot_class.js.map +1 -1
- package/dist/modules/dexbot_cow_runtime.d.ts +13 -0
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.js +13 -1
- package/dist/modules/dexbot_cow_runtime.js.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.d.ts +1 -1
- package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.js +9 -4
- package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
- package/dist/modules/launcher/adapter_requirement.js +1 -1
- package/dist/modules/launcher/launch_modes.d.ts +17 -1
- package/dist/modules/launcher/launch_modes.d.ts.map +1 -1
- package/dist/modules/launcher/launch_modes.js +18 -1
- package/dist/modules/launcher/launch_modes.js.map +1 -1
- package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -1
- package/dist/modules/launcher/monolithic_runtime.js +8 -1
- package/dist/modules/launcher/monolithic_runtime.js.map +1 -1
- package/dist/modules/market_adapter_whitelist.d.ts +40 -1
- package/dist/modules/market_adapter_whitelist.d.ts.map +1 -1
- package/dist/modules/market_adapter_whitelist.js +161 -11
- package/dist/modules/market_adapter_whitelist.js.map +1 -1
- package/dist/modules/order/accounting.d.ts +4 -18
- package/dist/modules/order/accounting.d.ts.map +1 -1
- package/dist/modules/order/accounting.js +4 -34
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/export.d.ts +9 -12
- package/dist/modules/order/export.d.ts.map +1 -1
- package/dist/modules/order/export.js +9 -12
- package/dist/modules/order/export.js.map +1 -1
- package/dist/modules/order/grid.d.ts +44 -40
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +66 -48
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile.js +111 -20
- package/dist/modules/order/grid_reconcile.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts +5 -3
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +18 -3
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/manager.d.ts +0 -8
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +3 -12
- package/dist/modules/order/manager.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +22 -7
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +103 -21
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/system.d.ts +5 -1
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +5 -2
- package/dist/modules/order/utils/system.js.map +1 -1
- package/dist/modules/order/utils/withPoolRef.d.ts +12 -0
- package/dist/modules/order/utils/withPoolRef.d.ts.map +1 -1
- package/dist/modules/order/utils/withPoolRef.js +17 -0
- package/dist/modules/order/utils/withPoolRef.js.map +1 -1
- package/dist/modules/order/working_grid.d.ts +8 -13
- package/dist/modules/order/working_grid.d.ts.map +1 -1
- package/dist/modules/order/working_grid.js +8 -29
- package/dist/modules/order/working_grid.js.map +1 -1
- package/dist/modules/settings_merge.d.ts +10 -1
- package/dist/modules/settings_merge.d.ts.map +1 -1
- package/dist/modules/settings_merge.js +27 -17
- package/dist/modules/settings_merge.js.map +1 -1
- package/dist/modules/validate_profiles.d.ts.map +1 -1
- package/dist/modules/validate_profiles.js +4 -3
- package/dist/modules/validate_profiles.js.map +1 -1
- package/dist/scripts/chart_command.d.ts +48 -0
- package/dist/scripts/chart_command.d.ts.map +1 -0
- package/dist/scripts/chart_command.js +504 -0
- package/dist/scripts/chart_command.js.map +1 -0
- package/dist/scripts/dw.d.ts +3 -0
- package/dist/scripts/dw.d.ts.map +1 -0
- package/dist/scripts/dw.js +30 -0
- package/dist/scripts/dw.js.map +1 -0
- package/dist/scripts/sync-version.js +0 -22
- package/dist/scripts/sync-version.js.map +1 -1
- package/dist/scripts/tv.d.ts +1 -31
- package/dist/scripts/tv.d.ts.map +1 -1
- package/dist/scripts/tv.js +10 -463
- package/dist/scripts/tv.js.map +1 -1
- package/dist/scripts/update.js +99 -62
- package/dist/scripts/update.js.map +1 -1
- package/dist/scripts/update_dist_freshness.d.ts +58 -0
- package/dist/scripts/update_dist_freshness.d.ts.map +1 -0
- package/dist/scripts/update_dist_freshness.js +144 -0
- package/dist/scripts/update_dist_freshness.js.map +1 -0
- package/dist/unlock.js +1 -1
- package/dist/unlock.js.map +1 -1
- package/docs/BITSHARES_ONBOARDING.md +16 -10
- package/docs/COW_INVARIANTS.md +1 -0
- package/docs/DEXBOT_COMPARISON.md +11 -11
- package/docs/EVOLUTION.md +9 -7
- package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +4 -4
- package/docs/GRID_PRICE_INVARIANT.md +518 -0
- package/docs/GRID_RECALCULATION.md +20 -24
- package/docs/GRID_RECONCILE.md +62 -41
- package/docs/LOGGING.md +1 -0
- package/docs/ORDER_ENGINE_POST_1.0_RETROSPECTIVE.md +556 -0
- package/docs/README.md +18 -18
- package/docs/WORKFLOW.md +13 -8
- package/docs/architecture.md +42 -40
- package/docs/developer_guide.md +5 -8
- package/market_adapter/README.md +45 -65
- package/modules/README.md +3 -2
- package/package.json +7 -4
- package/scripts/README.md +18 -34
- package/scripts/reset-settings.sh +1 -1
- package/analysis/ama_fitting/package.json +0 -12
- package/analysis/analyze_derivatives.ts +0 -320
- package/analysis/derivative_chart_generator.ts +0 -874
- package/analysis/trend_detection/SIGNAL_DOCUMENTATION.md +0 -403
- package/analysis/trend_detection/derivative_analyzer.ts +0 -1059
- package/dist/analysis/analyze_derivatives.d.ts +0 -68
- package/dist/analysis/analyze_derivatives.d.ts.map +0 -1
- package/dist/analysis/analyze_derivatives.js +0 -287
- package/dist/analysis/analyze_derivatives.js.map +0 -1
- package/dist/analysis/derivative_chart_generator.d.ts +0 -12
- package/dist/analysis/derivative_chart_generator.d.ts.map +0 -1
- package/dist/analysis/derivative_chart_generator.js +0 -891
- package/dist/analysis/derivative_chart_generator.js.map +0 -1
- package/dist/analysis/trend_detection/derivative_analyzer.d.ts +0 -248
- package/dist/analysis/trend_detection/derivative_analyzer.d.ts.map +0 -1
- package/dist/analysis/trend_detection/derivative_analyzer.js +0 -910
- package/dist/analysis/trend_detection/derivative_analyzer.js.map +0 -1
- package/dist/scripts/generate_market_adapter_whitelist.d.ts +0 -15
- package/dist/scripts/generate_market_adapter_whitelist.d.ts.map +0 -1
- package/dist/scripts/generate_market_adapter_whitelist.js +0 -191
- package/dist/scripts/generate_market_adapter_whitelist.js.map +0 -1
package/dist/unlock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unlock.js","sourceRoot":"","sources":["../unlock.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"unlock.js","sourceRoot":"","sources":["../unlock.ts"],"names":[],"mappings":"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"}
|
|
@@ -261,6 +261,8 @@ Key answers for your first bot:
|
|
|
261
261
|
- **startPrice** — leave the default (`"pool"` reads the liquidity-pool price,
|
|
262
262
|
`"book"` reads the order-book mid price, or a number for a fixed anchor). If
|
|
263
263
|
your pair has no native pool, set **poolRef** to a pool id such as `1.19.48`.
|
|
264
|
+
- **Active / Dry run / adapter flags** — boolean prompts accept `y`, `yes`, or
|
|
265
|
+
`true` and `n`, `no`, or `false`; Enter keeps the shown default.
|
|
264
266
|
|
|
265
267
|
Keep all other defaults — they are sensible. Prefer **relative values** where
|
|
266
268
|
possible: dynamic price sources like `"pool"` / `"book"` for `startPrice`,
|
|
@@ -285,9 +287,6 @@ The only things worth tuning later:
|
|
|
285
287
|
`{ "sell": 1.0, "buy": 1.0 }` for your first bot.
|
|
286
288
|
- `minPrice` / `maxPrice` — grid bounds. Once AMA is active, tighten them
|
|
287
289
|
around the market's maximum expected volatility instead of a wide range.
|
|
288
|
-
- `gridPrice` — set it to `"ama"` so the market adapter centers the grid on the
|
|
289
|
-
AMA signal (`"ama"` uses the pair's default preset; `"ama1"`–`"ama4"` pin a
|
|
290
|
-
specific one, fastest to slowest).
|
|
291
290
|
|
|
292
291
|
See the "Recommended Bot Setup" section of the
|
|
293
292
|
[README](../README.md#recommended-bot-setup).
|
|
@@ -308,15 +307,22 @@ saves, so you always know whether anything else is needed.
|
|
|
308
307
|
|
|
309
308
|
### Activate the market adapter
|
|
310
309
|
|
|
311
|
-
|
|
310
|
+
New bots anchor on `gridPrice: "ama3"`, but AMA pricing only goes live once
|
|
311
|
+
the per-bot adapter `Price` flag is on: run `dexbot bot`, choose
|
|
312
|
+
`2) Modify bot`, pick the bot, then `6) Adapter` and set **Price** to yes
|
|
313
|
+
(`y` / `yes` / `true` all count; Enter keeps the current value). Without it
|
|
314
|
+
the adapter still computes state but live output stays in dry-run.
|
|
312
315
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
+
To change how closely the grid center tracks the market, set `gridPrice` in
|
|
317
|
+
`3) Price`: `"ama1"` reacts fastest, `"ama4"` is the slowest and steadiest
|
|
318
|
+
(higher numbers smooth more), and `"ama"` uses the pair's default preset.
|
|
319
|
+
|
|
320
|
+
The three flags are stored per bot in `profiles/market_adapter_whitelist.json`:
|
|
321
|
+
|
|
322
|
+
- **Price** — live grid files and recalc triggers (`ama: true`)
|
|
323
|
+
- **Weight** — dynamic buy/sell weights (opt-in)
|
|
324
|
+
- **Range** — range scaling (opt-in; stays off until enabled here)
|
|
316
325
|
|
|
317
|
-
Writes `profiles/market_adapter_whitelist.json` for your AMA bot so it writes
|
|
318
|
-
live grid files and recalc triggers. New entries enable AMA pricing only;
|
|
319
|
-
range scaling stays off unless you opt in with `dexbot white --asymmetric-bounds`.
|
|
320
326
|
The adapter is started/stopped automatically when active AMA bots exist.
|
|
321
327
|
|
|
322
328
|
---
|
package/docs/COW_INVARIANTS.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# DEXBot vs DEXBot2 — Detailed Comparison Report
|
|
2
2
|
|
|
3
3
|
> **Date:** 2026-09-02 *(metrics refreshed against local source trees)*
|
|
4
|
-
> **Scope:** Full architectural, functional, and operational comparison between the original [DEXBot](https://github.com/Codaone/DEXBot) (Python, v1.0.0) and DEXBot2 (TypeScript, v1.6.
|
|
4
|
+
> **Scope:** Full architectural, functional, and operational comparison between the original [DEXBot](https://github.com/Codaone/DEXBot) (Python, v1.0.0) and DEXBot2 (TypeScript, v1.6.6).
|
|
5
5
|
> **Audience:** Developers, contributors, and operators evaluating or migrating between the two projects.
|
|
6
6
|
|
|
7
7
|
---
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
|
|
37
37
|
| Attribute | DEXBot (original) | DEXBot2 |
|
|
38
38
|
|---|---|---|
|
|
39
|
-
| **Release Track** | 1.0.0 | v1.6.
|
|
39
|
+
| **Release Track** | 1.0.0 | v1.6.6 |
|
|
40
40
|
| **Language** | Python 3.6+ | TypeScript 5.x |
|
|
41
41
|
| **Status** | Released 1.0.0, unmaintained | Active development |
|
|
42
42
|
| **Last Repo Activity** | May 23, 2020 | 2026-09-02 |
|
|
@@ -140,7 +140,7 @@ DEXBot brings a full Python desktop GUI and a strategy plugin model. DEXBot2 is
|
|
|
140
140
|
|
|
141
141
|
- **Four specialized engines** (Accountant, StrategyEngine, Grid, SyncEngine) coordinate through OrderManager
|
|
142
142
|
- **Copy-on-Write** grid: planning happens on isolated `WorkingGrid`; committed atomically or discarded on failure
|
|
143
|
-
- **Targeted fill subscription** via `set_subscribe_callback` → `get_account_history_operations` filtered for `OP_FILL_ORDER` fill operations; push-triggered
|
|
143
|
+
- **Targeted fill subscription** via `set_subscribe_callback` → `get_account_history_operations` filtered for `OP_FILL_ORDER` fill operations; push-triggered gap-slot batching (a unified batch contains at most `gapSlots + 1` fills)
|
|
144
144
|
- **Market Adapter**: AMA-based price tracking, dynamic buy/sell weighting, Kalman confirmation, ATR/regime dampening, asymmetric grid bounds, and configurable delta triggers
|
|
145
145
|
- **`fund_registry.ts`**: shared-account fund registry — tracks per-account, per-bot fund and collateral allocations; pre-registered atomically at startup so all bots sharing an account see a consistent proportional split before any bot starts; cross-bot invariant enforcement
|
|
146
146
|
- **Bot keys**: deterministic name-derived key (`sanitizeKey(name)`) with uniqueness enforced at all write paths — eliminates name-collision risk across restarts and config reorders
|
|
@@ -208,8 +208,8 @@ DEXBot brings a full Python desktop GUI and a strategy plugin model. DEXBot2 is
|
|
|
208
208
|
- **Fixed reference boundary** divides BUY zone (below) from SELL zone (above)
|
|
209
209
|
- **Dynamic spread gap** around market price (configurable `targetSpreadPercent`)
|
|
210
210
|
- On fill: grid **crawls** — boundary shifts, slots reassign roles, new orders placed
|
|
211
|
-
- **Partial fill
|
|
212
|
-
- **
|
|
211
|
+
- **Partial fill handling**: immediate on-chain dust cancellation plus fund-driven correction of surviving non-dust partials
|
|
212
|
+
- **Gap-slot fill batching**: `1..gapSlots+1` fills per unified batch; deeper queues are chunked at `gapSlots+1`
|
|
213
213
|
- **Replay-safe fill dedupe**: processed-fill persistence prevents duplicate accounting after restarts or resyncs
|
|
214
214
|
- **Dynamic weighting**: AMA slope, Kalman confirmation, ATR volatility, and regime gates can bias buy/sell allocation without changing the core grid model
|
|
215
215
|
- **Asymmetric range scaling**: trend diagnostics can tilt grid bounds during recalculation, giving the grid more room in the direction of movement
|
|
@@ -326,7 +326,7 @@ workers:
|
|
|
326
326
|
### DEXBot2
|
|
327
327
|
|
|
328
328
|
- **Format:** JSON (`profiles/bots.json`, `profiles/general.settings.json`)
|
|
329
|
-
- **No GUI wizard** —
|
|
329
|
+
- **No GUI wizard** — interactive `dexbot bot` menu editor for main settings; advanced keys edited directly in JSON
|
|
330
330
|
- **~27 configuration objects** in `modules/constants.ts`, frozen via `Object.freeze` (loaded at startup)
|
|
331
331
|
- Runtime parameters via environment variables (`RUN_LOOP_MS`, `BOT_NAME`, launcher/daemon settings, etc.)
|
|
332
332
|
- `profiles/general.settings.json` for global timing/limits/node settings
|
|
@@ -357,7 +357,7 @@ workers:
|
|
|
357
357
|
| Feature | DEXBot | DEXBot2 |
|
|
358
358
|
|---|---|---|
|
|
359
359
|
| **Format** | YAML | JSON |
|
|
360
|
-
| **Interactive Setup** | Yes (whiptail + PyQt5 GUI) |
|
|
360
|
+
| **Interactive Setup** | Yes (whiptail + PyQt5 GUI) | Yes (`dexbot bot` menu editor) |
|
|
361
361
|
| **Key Encryption** | No (file-system only) | Yes (AES-256-GCM) |
|
|
362
362
|
| **Multi-bot in one config** | Yes (YAML array) | Yes (JSON array) |
|
|
363
363
|
| **Runtime overrides** | Env vars (limited) | Env vars (full) |
|
|
@@ -508,7 +508,7 @@ Where:
|
|
|
508
508
|
| Feature | DEXBot | DEXBot2 |
|
|
509
509
|
|---|---|---|
|
|
510
510
|
| **Desktop GUI** | Yes (PyQt5) | No |
|
|
511
|
-
| **Interactive Config Wizard** | Yes (GUI + whiptail) | No |
|
|
511
|
+
| **Interactive Config Wizard** | Yes (GUI + whiptail) | No (menu-driven editor, not a guided wizard) |
|
|
512
512
|
| **CLI** | Yes (Click) | Yes (custom) |
|
|
513
513
|
| **Real-time Status** | GUI view | `unlock status` / `dexbot stat` + log tailing |
|
|
514
514
|
| **Automation Surface** | Plugin/strategy hooks | Claw modules, scripts, and runtime helpers |
|
|
@@ -754,7 +754,7 @@ Where:
|
|
|
754
754
|
- Single hardcoded core strategy (boundary-crawl grid)
|
|
755
755
|
- Extending core trading behavior requires modifying runtime modules
|
|
756
756
|
- Market adapter (`market_adapter/`) provides real-time signal-driven parameter tuning: AMA center, dynamic weights, Kalman confirmation, ATR/regime dampening, and asymmetric bounds
|
|
757
|
-
- `analysis/` tools provide AMA fitting, dynamic-weight research,
|
|
757
|
+
- `analysis/` tools provide AMA fitting, dynamic-weight research, Kalman signal research, volatility/regime analysis, bot-parameter sweeps, bot-activity queries (`bot_usage/`), and FIFO-based trade PnL analysis (`trade_profitability.ts`)
|
|
758
758
|
- `claw/` exposes a separate automation and AI-consumption layer: profile reading, chain queries/actions, short MPA workflows, position health, runtime manifests, and skill/plugin artifacts
|
|
759
759
|
|
|
760
760
|
### Extensibility Comparison
|
|
@@ -776,7 +776,7 @@ Where:
|
|
|
776
776
|
|
|
777
777
|
| Metric | DEXBot | DEXBot2 |
|
|
778
778
|
|---|---|---|
|
|
779
|
-
| **Release Track** | 1.0.0 | v1.6.
|
|
779
|
+
| **Release Track** | 1.0.0 | v1.6.6 |
|
|
780
780
|
| **Active Since** | ~2018 | December 2025 |
|
|
781
781
|
| **Last Commit** | May 23, 2020 | 2026-09-02 |
|
|
782
782
|
| **Total Commits** | 2281 | 2,125 (v1.4.25) |
|
|
@@ -863,7 +863,7 @@ The 500× figure is not theoretical: it materializes in production when higher o
|
|
|
863
863
|
- **Single core strategy** — no runtime-swappable plugin system, but the boundary-crawl grid is deeply engineered with AMA/Kalman/ATR/regime adaptive signals, making it far more capable and configurable than DEXBot's individual strategies
|
|
864
864
|
- No GUI — requires CLI proficiency
|
|
865
865
|
- No DEXBot-style external CEX price-feed strategy support
|
|
866
|
-
-
|
|
866
|
+
- Advanced bot keys (`debtPolicy`, `creditOnly`, `min_BTS_value`) require manual JSON editing; main settings are interactive via `dexbot bot`
|
|
867
867
|
- Backtesting/research exists under `analysis/`, but it is not a polished end-user backtesting product
|
|
868
868
|
- No community/plugin ecosystem
|
|
869
869
|
- Heavy documentation suggests significant learning curve for contributors
|
package/docs/EVOLUTION.md
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
## Executive Summary
|
|
4
4
|
|
|
5
|
-
DEXBot2 is a sophisticated decentralized exchange trading bot for the BitShares blockchain. This report documents the complete evolution of the project from its inception in December 2025 through the current 1.6.
|
|
5
|
+
DEXBot2 is a sophisticated decentralized exchange trading bot for the BitShares blockchain. This report documents the complete evolution of the project from its inception in December 2025 through the current 1.6.6 stable release.
|
|
6
6
|
|
|
7
7
|
### Key Milestones
|
|
8
8
|
- **Project Inception**: December 2, 2025
|
|
9
|
-
- **Growth Phase**: 2,
|
|
9
|
+
- **Growth Phase**: 2,277 commits over ~9 active months
|
|
10
10
|
- **Code Maturity**: Evolution from basic utilities to a ~100,000+ LoC intelligent TypeScript system
|
|
11
|
-
- **Stability**: Progression from manual testing to a suite of
|
|
12
|
-
- **Releases**:
|
|
11
|
+
- **Stability**: Progression from manual testing to a suite of 297 automated test files
|
|
12
|
+
- **Releases**: 138 version entries in the changelog (v0.1.0 to v1.6.6)
|
|
13
13
|
|
|
14
14
|
> **Post-1.0.0 "why":** the thematic story behind the hardening releases — root cause, recurring
|
|
15
15
|
> bug families, and lessons — lives in
|
|
@@ -162,11 +162,13 @@ Compact, era-level view. Per-release detail lives in [CHANGELOG.md](../CHANGELOG
|
|
|
162
162
|
| v1.5.3 → v1.6.0 | 37 | Node-failure ledger, grid regeneration, reserve ladder, live-config pickup, owed-crawl persistence, fill-anchored boundary recovery, TradingView overlay |
|
|
163
163
|
| v1.6.0 → v1.6.3 | 12 | Never-run-stale hardening, whitelist range-scaling opt-in, grid-price invariant, shard candle cache, correction-queue staleness, final pre-broadcast pivot gate |
|
|
164
164
|
| v1.6.3 → v1.6.4 | 18 | Fund-driven spread correction, gapSlots+1 batch cap, VIRTUAL RMS divergence, sync-lock log fix, invariant-doc contract, analysis shared modules, window-aware profitability annualisation, portable chart exports, range-threshold restore, dead-code purge, doc consolidation |
|
|
165
|
+
| v1.6.4 → v1.6.5 | 15 | Editor-managed whitelist flags + legacy generator removal, centralized bot defaults/settings docs, log-symmetric range-scaling tilt, AMA gridPrice default + unset → startPrice normalization, Pool default/warn-color cues, Grid Health AMA-slope Δ knob, dynamic-weight chart CLI, update dist-freshness self-heal, launcher worker rename, RMS log tagging |
|
|
166
|
+
| v1.6.5 → v1.6.6 | 13 | Stale-cancellation guard hardening (live ownership, per-plan startup revalidation, COW orphan protection, settlement safety), editor label/menu realignment + colored bot list, grouped CLI help, poolRef aliases + startPrice priority, legacy SMA/MACD/RSI analyzer archived, run-relative candle-cache migration dropped, update dist-freshness tsconfig-exclude fix |
|
|
165
167
|
|
|
166
168
|
---
|
|
167
169
|
|
|
168
170
|
**Report Originally Generated**: February 19, 2026
|
|
169
|
-
**Last Updated**: September
|
|
170
|
-
**Total Commits**: 2,
|
|
171
|
-
**Date Range**: December 2, 2025 – September
|
|
171
|
+
**Last Updated**: September 25, 2026
|
|
172
|
+
**Total Commits**: 2,277
|
|
173
|
+
**Date Range**: December 2, 2025 – September 25, 2026
|
|
172
174
|
**Repository**: DEXBot2 (BitShares DEX Trading Bot)
|
|
@@ -478,15 +478,15 @@ When a grid is regenerated or resized, existing partial orders (partially filled
|
|
|
478
478
|
A partial order is classified as **Dust** if:
|
|
479
479
|
$$Size_{current} < Size_{ideal} \times 0.05$$
|
|
480
480
|
|
|
481
|
-
Dust orders are too small to be efficient on-chain and are
|
|
481
|
+
Dust orders are too small to be efficient on-chain and are **cancelled immediately on detection** — no delay, no timer (`cancelDustOrders()`, `[DUST]` tag). Detection runs on every fill/sync tick plus a 5-minute health check (`DUST_HEALTH_CHECK_INTERVAL_MS`) as a crash/restart safety net; the cancel flows through the synthetic-fill pipeline so funds return to `ChainFree`.
|
|
482
482
|
|
|
483
483
|
### 4.2 Consolidation Strategy
|
|
484
484
|
|
|
485
485
|
When the strategy engine encounters partial orders during rebalancing:
|
|
486
486
|
|
|
487
487
|
**Direct Approach** (Simplified):
|
|
488
|
-
1. **
|
|
489
|
-
2. **
|
|
488
|
+
1. **Cancel dust first**: partials below the 5% dust threshold are cancelled on detection (see §4.1) and never reach the rebuild
|
|
489
|
+
2. **Consolidate the remainder**: surviving partials are absorbed when the grid is rebuilt in the next rebalance cycle
|
|
490
490
|
3. **Fund-driven grid rebuild**: Rather than complex slot-by-slot merge/split logic, the entire grid is regenerated based on current total funds (including proceeds from fills)
|
|
491
491
|
4. **Natural redistribution**: The rebuilt grid automatically sizes all orders (including those replacing consolidation candidates) using the Ideal Grid sizing formula
|
|
492
492
|
5. **Spread maintenance**: The target spread gap remains constant at `targetSpreadPercent`—no dynamically inflated corrections
|
|
@@ -801,4 +801,4 @@ To prevent "Time-of-Check to Time-of-Use" errors:
|
|
|
801
801
|
**TOCTOU protection in `processFillAccounting`.** `_buildBtsDeferredRefundAdjustment` reads `btsFeeState` from `mgr.orders` while the order lock is held — the lock is acquired before accounting runs, and the POST-RESET and BOOTSTRAP tracked-fill accounting paths follow the same locking pattern.
|
|
802
802
|
|
|
803
803
|
---
|
|
804
|
-
*Technical Reference for DEXBot2 v1.6.
|
|
804
|
+
*Technical Reference for DEXBot2 v1.6.6 release*
|