Evaluation protocols
methodology + evaluation protocol = performance.
A protocol carries everything that shapes a number but is not part of the
strategy: the trading calendar, transaction costs, execution lag, walk-forward
grid, sealed holdout and data snapshot. Each is versioned and hashed, because
changing any of them reprices every result measured under it.
protocol/long-warmup@1
Long-warmup evaluation (504-day estimation windows)
- Calendar
- nyse@1
- Transaction costs
- 10.0bps of notional traded
- Execution lag
- 1 session
- Walk-forward
- expanding, warmup 504,
step 5, purge 0,
embargo 0
- Data snapshot
- yfinance 2016-01-01 … 2025-11-20
- Content hash
- 10cbea5935740b4e58b4a9e0a3ee82cd…
protocol/sealed@1
Sealed-holdout evaluation (2022-01-01 onward)
Holdout sealed
- Calendar
- nyse@1
- Transaction costs
- 10.0bps of notional traded
- Execution lag
- 1 session
- Walk-forward
- expanding, warmup 252,
step 5, purge 10,
embargo 10
- Holdout
- 2022-01-01 … 2025-11-20
sealed
The runner truncates the panel before execution, so the
sealed period is unreachable rather than merely unreported. It opens once,
by a logged event.
- Data snapshot
- yfinance 2016-01-01 … 2025-11-20
- Content hash
- 13834b75f61986bfe179e882fd63c25b…
protocol/standard@1
Standard multi-asset ETF evaluation
- Calendar
- nyse@1
- Transaction costs
- 10.0bps of notional traded
- Execution lag
- 1 session
- Walk-forward
- expanding, warmup 252,
step 5, purge 0,
embargo 0
- Data snapshot
- yfinance 2016-01-01 … 2025-11-20
- Content hash
- f5561e2cf4227a975e0af48ed12dc9e9…
Trading calendars
A calendar is a referenced artifact, not a string. Holidays are expressed as
rules — fixed dates with weekend observance, nth-weekday, and Easter-relative —
so they can be checked against a published exchange schedule.
calendar/crypto@1
Continuous 24/7 crypto sessions
- Sessions per year
- 365
- Trading days
- 7 per week
- Closures
- 0 recurring rules
- Covers
- 2000-01-01 … 2035-12-31
Applying it outside this range raises rather than extrapolating.
calendar/nyse@1
New York Stock Exchange regular sessions
- Sessions per year
- 252
- Trading days
- 5 per week
- Closures
- 10 recurring rules
- Covers
- 2000-01-01 … 2035-12-31
Applying it outside this range raises rather than extrapolating.