Evolution engine · WTI research

We evolved an oil-trading algorithm.Then tried to break it.

BetaEvolve searches candidate strategies across signal blends, exits, exposure, and risk controls. The model stays private; the aggregate evidence, assumptions, and promotion gates do not.

private genome·public evidence·paper first
Evolution / oil researchCandidate frontier
risk × return
novelty →
performance →
explored
selected
searched, not hand-tuned
+198.2%optimized same-window return
1.50simulated Sharpe
3/3positive WF folds

Hypothetical research, not actual trading and not a promise of future results.

The result is public.
The recipe isn’t.

Private model · public evidence

We used evolutionary search to discover a portfolio of behaviors, exits, and risk controls that a human would be unlikely to tune by hand. Production parameters and weights are never embedded in this page; only aggregate, reproducible research results are shown.

Test 1 · Same-window optimization+198.20%

Optimized four-year simulated return

20 Jul 2022–20 Jul 2026 · 997 daily WTI spot-proxy observations · 153 modeled trades

Annualized31.39%
Sharpe ratio1.50
Max drawdown22.75%
Modeled costs2 + 3 bpsfees + slippage assumptions
Test 2 · Separate walk-forward validation

+16.56% across three later validation periods.

Each validation fold used candidates evolved only from earlier data. This is a different, more conservative test—not the amount that the +198.20% result compounded to, and not prospective or live performance.

Fold 01+4.25%
Fold 02+7.44%
Fold 03+4.07%
3 folds compounded+16.56%
Worst drawdown5.44%

Production is a sequence of gates—not a switch.

The research engine is built. Live trading still requires tradable futures data, prospective evidence, broker reconciliation, and a separately approved execution control plane.

  1. 01

    Graduate to tradable data

    Re-run on licensed, timestamped Micro WTI futures contracts with explicit rolls, whole-contract sizing, margin, and broker-calibrated costs.

  2. 02

    Earn promotion

    Predeclare seeds and gates, repeat anchored walk-forward tests, then accumulate a genuinely unseen paper cohort across multiple market regimes and contract rolls.

  3. 03

    Reconcile paper execution

    Connect an isolated IBKR paper account and reconcile every intent, fill, fee, rejection, margin event, slippage estimate, and roll against broker statements.

  4. 04

    Build the live control plane

    Add credential isolation, idempotent order handling, position and daily-loss limits, stale-data rejection, a kill switch, monitoring, reconciliation, and human authorization.

Current execution statePaper-only by design

The checked-in IBKR adapter deliberately rejects live accounts, live ports, oversized or unarmed orders, and never equates acceptance with a fill. Real-money authorization must be a separately reviewed change.

IBKR paper-testing guidance

Small enough to embed.
Strict enough to trust.

01

Reusable by design

Dependency-free SwiftPM and Python packages keep the archive engine separate from our API, UI, trading, and execution layers.

02

Deterministic search

Seeded selection, numeric cell ordering, lineage, and coverage metrics make experiments reproducible and inspectable.

03

One semantic contract

Swift and Python run the same E10 and E11 fixtures. Drift in archive, emitter, crossover, constraint, or batch semantics fails the tests.

“MAP-Elites” means the same thing on both sides.

Two shared fixtures exercise both implementations from baseline archive behavior through advanced search coordination. A semantic disagreement becomes a named, reproducible test failure—not a benchmark anecdote.

Use the shared contract
SWIFT
PYTHON
Archive semantics
Constraint dominance
Emitter selection
Crossover lineage
Batch ordering
Error validation
Contract passingseed: 7
Honest scope

BetaEvolve now includes two-parent crossover, four deterministic emitter policies, feasibility-first constraints, and retrying distributed batch evaluation. Network transports and domain fitness remain application-owned.

Start with a working surface.

Every landing-page action leads to a live part of BetaEvolve—no placeholder buttons and no private documentation dead ends.