Saxo vs IBKR Cutover Matrix¶
Current recommendation¶
- Keep Saxo as the production LT broker for now.
- Keep IBKR in shadow / evidence-collection mode only until the current blockers clear.
- Revisit cutover only after all three conditions are true:
- Paper Trading password reset blocker is cleared.
- 5 business days of parity observation are captured.
- Ticket
#16633Q3 (COB routing) is answered, or the team explicitly decides to stop waiting for that answer.
Scoring note¶
The weights below are working operator weights inferred from current blockers and runbooks, not a session-owner-approved policy. They are filled in so the document can drive day-to-day decisions, but any owner-specific weighting should replace them later.
| Criterion | Saxo today | IBKR current status | Weight | Current gate | Evidence / notes |
|---|---|---|---|---|---|
| Fill rate | LIVE observations exist, but combo dead-letter cases remain [pending Saxo confirmation] |
No production fill evidence yet; shadow / whatIf / Paper comparison is still ahead | 14 | Blocked on IBKR evidence | Current docs say cutover judgment should wait for a 5-business-day parity window. |
| Combo pricing | Credit spread combo bid zero / negative cases observed | Spread quote collector / parity pipeline skeleton is ready, but live spread parity is not complete yet | 14 | Blocked on parity data | saxo_escalation_checklist.md, ibkr_phase6_mvp_postmortem.md, and R5#13-R5#16 logs all point to parity evidence as the next step. |
| Execution transparency | Broker-side execution detail is limited | Better public execution-quality disclosure exists, but local evidence is still incomplete | 8 | Advantage IBKR on paper, not yet operationally proven | cob_routing_comparison.md shows IBKR public Rule 605/606 coverage; Saxo remains less transparent. |
| Routing control | COB routing answer is still pending in Ticket #16633 |
IBKR combo routing modes are documented publicly, but local combo execution path is not yet exercised | 14 | Blocked on Saxo answer and IBKR validation | Current blocker is still unresolved Q3 rather than missing documentation. |
| Session stability | Existing token-keeper flow is already in production | IBeam / gateway deploy lane exists, but unattended session stability still needs proof | 12 | Blocked on soak time | ibkr_phase6_mvp_postmortem.md says deployment lane exists, but runtime proof is still pending. |
| 2FA burden | Already absorbed by the live Saxo flow | TOTP secret storage / rotation is required | 5 | Operational burden only | This is a secondary ops concern, not the main cutover blocker. |
| Market data entitlement | Live quote path exists, but combo interpretation is disputed | Market Data API acknowledgement and Paper account existence were confirmed, but live spread evidence is still incomplete | 10 | Partially unblocked | AGENTS context confirms entitlement prerequisites, but not end-to-end live parity yet. |
| Operational cost | Existing infra path is already sunk cost | Extra gateway / collector / secrets management are needed | 5 | Saxo cheaper today | No steady-state cost table is in current logs, so exact monthly delta remains [needs input from session owner]. |
| Deployment complexity | Existing CI/CD path is established | Separate workflow / compose skeleton exists, but more moving parts remain | 6 | IBKR more complex today | ibkr_phase6_mvp_postmortem.md records the added gateway and env bootstrap lane. |
| Broker integration risk | Current LT runtime is coupled to Saxo but already battle-tested | New adapter lane is intentionally shadow-only and reversible | 6 | Keep reversible shadow mode | Current safe pattern is additive shadow, not hard cutover. |
| Support / escalation leverage | Ticket #16633 remains open with Q3 unanswered |
IBKR parity data can strengthen escalation or a future replacement case | 6 | Gather evidence before deciding | saxo_escalation_checklist.md explicitly tracks parity evidence as attachment material. |
Minimum cutover gate¶
Paper Trading password resetbackend error is cleared and a local sanity flow succeeds.5 business daysof Saxo vs IBKR parity artifacts are captured without a join / schema gap.- Saxo Q3 follow-up is sent by
2026-04-15if still unanswered, with the current evidence bundle attached. - Final cutover scoring policy, if different from the working weights above, is confirmed by the session owner.
Current reading¶
- Saxo remains the only broker with a proven live operational lane.
- IBKR is no longer blocked on basic scaffold work, but it is still blocked on password reset recovery plus parity evidence.
- The safe near-term strategy is not "Saxo vs IBKR choose one today"; it is "keep Saxo primary while IBKR collects enough evidence to either strengthen the Saxo escalation or justify a later broker shift."