Commit Graph

  • 9b76f33d4d chore: clean up stale .gitignore entries master nicolas 2026-06-04 10:53:10 -0300
  • 2a502c666e docs: update README with disclaimer and contact; cleanup: remove compare_enum.py nicolas 2026-06-04 10:45:02 -0300
  • 9863dc182b cleanup: remove obsolete files nicolas 2026-06-04 10:43:30 -0300
  • 40d734b146 docs: update README with disclaimer and contact information nicolas 2026-06-04 10:41:19 -0300
  • 47ee17bbfd chore: untrack AGENTS.md, add to .gitignore nicolas 2026-06-04 10:36:40 -0300
  • 3c4bbfde8b cleanup: remove stale files, add session to .gitignore nicolas 2026-06-04 10:35:34 -0300
  • e6ca8ac624 chore: remove MAX_DIRTY_BATCH cap, use MAX_SYMBOLS for dirty symbol set nicolas 2026-06-03 09:42:06 -0300
  • ccf6ff8670 fix: dedicate a separate WS connection for private channels (fills + balance) nicolas 2026-06-02 23:42:18 -0300
  • b0056f4b6b fix: per-slot fill channels with orderId fallback routing; fix reconnect double-subscribe nicolas 2026-06-02 18:29:30 -0300
  • d569063c75 fix: register reconnected WS socket in epoll, arm ping timer after connect nicolas 2026-06-02 09:42:13 -0300
  • 930365f072 feat: add allow_same_quote config, fix overlapping pair isolation to check all 3 legs, document config example nicolas 2026-05-30 11:22:16 -0300
  • 60257f068f fix: use double-precision timestamps for sub-millisecond signal timing nicolas 2026-05-29 15:24:38 -0300
  • 17aac4b4ef cleanup: remove unused constants MAX_CURRENCIES and _D1 nicolas 2026-05-29 12:05:30 -0300
  • 2c8cfc74b5 cleanup: remove dead config fields (executor_socket_path, cooldown_seconds, stats_interval_seconds), add concurrent_slots to example nicolas 2026-05-29 10:31:49 -0300
  • 405fc557dc remove fee table path: fee rate now computed solely from formula fee_category * 0.001 * taker_fee_coeff nicolas 2026-05-29 09:49:37 -0300
  • faa88070e7 fix: check slot before keepalive to prevent blocking REST call delaying signal pickup nicolas 2026-05-29 00:00:23 -0300
  • e461dfb7a7 fix: keep slot IN_FLIGHT during execution so evaluator sees busy and drops instead of queuing nicolas 2026-05-28 22:27:33 -0300
  • b714ac132e perf: replace SPSC signal queue with per-executor atomic slot delivery nicolas 2026-05-28 22:15:59 -0300
  • f2c50b37ea docs: update README to reflect single-binary architecture and current config nicolas 2026-05-28 20:50:03 -0300
  • 6005b5ca88 fix: tear down SSL connection on read failure to force reconnect nicolas 2026-05-28 20:39:02 -0300
  • 7253d34983 feat: make balance wait between live legs configurable, default off nicolas 2026-05-28 16:37:32 -0300
  • 2c3796005b fix: drain signal eventfd after pop to prevent CPU spin; fix all warnings nicolas 2026-05-28 15:43:43 -0300
  • b8d6499c33 fix: compute net_bps and update best/worst before STATUS log nicolas 2026-05-28 10:07:26 -0300
  • 2f518d1a2d fix: cascade-based threshold gate, status log, best_net_bps tracking nicolas 2026-05-28 10:01:17 -0300
  • 9e0866c9e7 fix: remove double fee hold on legs 1-2; fix sell order_param dimension nicolas 2026-05-28 09:19:48 -0300
  • 728f41679a fix: replace evaluate.c cascade with paper-trade simulation from executor nicolas 2026-05-27 23:44:14 -0300
  • 174b7570fa feat: concurrent executor slots; fix: fundsIncrement for market buys, remove double-counted leg0 fee hold nicolas 2026-05-27 13:18:53 -0300
  • 562fddf124 cleanup: remove Python executor, dead config/HTTP server; add balance wait; fix fee hold, PnL, warnings nicolas 2026-05-27 12:14:10 -0300
  • 06706ca479 fix: timing legends, log timestamp cache, mask generation, fill drop warning, remove fast parser nicolas 2026-05-27 11:40:03 -0300
  • 0420d548d5 fix: timings use correct fields and clocks, match Python format nicolas 2026-05-27 09:39:14 -0300
  • 8739c871d5 fix: separate screen-only logging from file logging nicolas 2026-05-27 09:31:49 -0300
  • 46084de4b2 fix: keepalive, connection health check, log file, single-line reports, timings fix nicolas 2026-05-27 00:15:08 -0300
  • 03b5daa003 migrate: absorb all executor functions into fused_engine (C) nicolas 2026-05-26 19:54:41 -0300
  • 60c21bed36 chore: add microsecond resolution to structlog timestamps nicolas 2026-05-25 23:12:32 -0300
  • e9727003d7 chore: remove session_warmed info log from warmup nicolas 2026-05-25 22:49:38 -0300
  • affe18cbac fix: authenticated session warmup, balance-aware cascade, books always in signal nicolas 2026-05-25 22:34:24 -0300
  • 0d3acc62cb fix: add kcs_discount_active to Python config known keys nicolas 2026-05-25 20:39:40 -0300
  • 3828e2b104 fix: cross-leg increment floor, ceiling-to-floor rounding, balance WS subscription, order-level logging nicolas 2026-05-25 20:21:19 -0300
  • c1c4aa4be8 docs: add docstrings to ~50 undocumented functions across C source files nicolas 2026-05-24 23:32:33 -0300
  • 97b341fec9 cleanup: remove dead fh_ob/oe_em Python modules, add book_ts_ms to screen output nicolas 2026-05-24 21:36:48 -0300
  • 43333984a3 feat: print execution reports to stdout for all statuses nicolas 2026-05-24 20:50:16 -0300
  • 7afd4977ca fix: revert jsmn parser to cJSON, keep coalescing nicolas 2026-05-24 19:34:43 -0300
  • 7c9b7f7ae6 perf: jsmn zero-alloc parser, coalesce evaluations, fix fill race nicolas 2026-05-24 18:17:14 -0300
  • 71ed25fe56 refactor: move order sizing to engine, simplify executor nicolas 2026-05-24 17:49:09 -0300
  • 2a82086683 Add initial triangular arbitrage bot nicolas 2026-05-24 16:12:04 -0300