Home Strategy Performance Research Live Dashboard

Broker = dumb pipe.

The broker provides market data and order routing. Everything else -- features, models, risk, sizing -- lives in shared core that never changes when swapping providers.

Data Providers

  • Sierra CSV poll ticks_RGW.csv, dom_RGW.csv
  • IB TWS API reqMktData, reqMktDepth
  • Rithmic Direct planned

Trade Providers

  • Sierra CSV orders orders_RGW.csv, fills_RGW.csv
  • IB TWS orders placeOrder, reqPositions

Strategy (Shared)

  • features.py 44 tick features + PSO
  • ensemble.py multi-model voting
  • ai_trading_system.py regime, quality, sizing
  • exit_manager.py R-multiple trailing

Core (Shared)

  • core/position.py PositionTracker
  • core/risk.py RiskManager
  • core/filters.py EntryFilters

File map.

Strategy layer never changes when swapping brokers. Sierra Chart and Interactive Brokers providers implement the same abstract interfaces.

Data Service (Blue)

  • core/data_service.py TickData, DOMSnapshot, DataService(ABC)
  • providers/sierra/data_service.py SierraDataService (CSV poll)
  • providers/ib/data_service.py IBDataService (TWS API)

Trade Service (Green)

  • core/trade_service.py OrderRequest, FillLine, TradeService(ABC)
  • providers/sierra/trade_service.py SierraTradeService (CSV orders)
  • providers/ib/trade_service.py IBTradeService (TWS orders)

Strategy (Gold)

  • features.py 44 tick features + PSO
  • signal_pipeline.py F1 LSTM inference
  • ensemble.py Multi-model voting
  • ai_trading_system.py Regime, quality, sizing
  • exit_manager.py R-multiple trailing

Core (Pink)

  • core/position.py PositionTracker + TradeTracker
  • core/risk.py RiskManager (daily loss, drawdown)
  • core/filters.py EntryFilters (rate gate, vol, trend)
  • main_localbridge.py Bridge orchestrator (4,385 lines)

Version history.

VersionDateChanges
v035.350Mar 15F2-primary architecture. Ensemble voting removed. SYNC_CORRECTION P&L fixed (was $7K phantom). ETH sessions disabled. Trend override added.
v035.200Mar 13Post-mortem rebuild. F2/F5m/SAM model validation gate. Journal coverage all exit paths. Bridge as nssm service.
v111Mar 9F2 confidence gate, F5m bar strategy, rolling retrain, STAT_ARB killed permanently
v81eFeb 26All 3 models retrained on 200K ticks. Last ensemble version.
v79Feb 24STAT_ARB killed by ablation (ML-only: PF 1.80 vs combined PF 1.58)
v77Feb 23Mean Revert removed by ablation (+58% P&L without it). F2 solo PF 1.87 identified.
v73Feb 20Momentum model removed (toxic: blocking profitable trades)

Scaling path.

Production on Azure B2s. Bridge runs as nssm Windows service — survives RDP disconnects and Azure health events.

Production

Azure B2s VM

2 vCPU / 4GB, East US 2. Sierra Chart x64 + Python bridge as nssm service. SSH + Tailscale. ~$56/mo. Replaced Parallels ARM64 (retired Mar 3).

Built

IB Providers

Interactive Brokers provider complete: broker.py (616 lines), data_service.py, trade_service.py. All implement ABCs. Ready for multi-broker.

Next

Monolith Extraction

200+ strategy globals need extraction into classes before IB can run. Phase 2C: build broker-agnostic orchestrator with shared core/.