← Back to Docs

DEPLOYMENT & PAPER TRADING

After a backtest looks good, deploy a strategy to paper trading. The kickoff MVP is paper-only — fills run against an internal ledger, with no live broker. Deployment happens in the dashboard; there is no deploy CLI.

Deployment Lifecycle

  1. Backtest — validate over a historical window. Each run version-locks your code and config.
  2. Deploy — promote a backtested version to a live paper deployment. A virtual portfolio is seeded with paper capital.
  3. Daily ticks — the strategy-ticks cron runs your signal() each trading evening.
  4. Monitor — track equity, drawdown, decisions, and governance events.
  5. Reconcile — the next morning, estimated fills are corrected to actual open prices.

Daily Paper-Trading Flow

text
Market data refresh (≈8:30 PM ET, weekdays)
  └─ Databento OHLCV for ~2,900 symbols + split adjustment → market_data_cache

Strategy ticks (≈9:33–9:35 PM ET, 3 batches)
  └─ for each deployed strategy:
       1. Serialize StrategyContext (portfolio, OHLCV, fundamentals)
       2. Execute strategy.signal() in an Azure Dynamic Session
       3. Apply guardrails to target weights
       4. Derive orders from weight changes
       5. Fill at today's close (estimated)
       6. Record portfolio snapshot + decision log + governance event

Reconciliation (≈9:30 AM ET next day)
  └─ Fetch actual T+1 open prices, adjust fills, update snapshots

Monitoring & Reconciliation

Each deployment has a monitoring view (live equity curve, positions, recent decisions) and a reconciliation view that shows the T+1 adjustment from estimated close fills to actual open prices. Fills are marked-to-market at the close; mark-to-market and fill prices are tracked separately to avoid double-counting.

Related