A frame is the simulation time window for a backtest. It tells backtest-kit which slice of historical market data to replay, at what candle resolution, and how to label the run. Every strategy run must reference exactly one frame; the frame is identified by a string name that links theDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/backtest-kit/backtest-kit-redis-mongo-docker/llms.txt
Use this file to discover all available pages before exploring further.
addFrameSchema registration to the Backtest.background call in the entry point.
Frame definition
src/logic/frame/jan_2026.frame.ts registers the January 2026 frame:
addFrameSchema parameters
| Parameter | Type | Description |
|---|---|---|
frameName | string | Unique identifier for this frame. Must match the enum value ("jan_2026_frame"). |
interval | CandleInterval | Candle interval used during the simulation ("1m", "3m", "5m", "15m", "30m", "1h", "2h", "4h", "6h", "8h", "1d"). |
startDate | Date | UTC Date marking the beginning of the simulation window. |
endDate | Date | UTC Date marking the end of the simulation window (inclusive). |
note | string | Human-readable label shown in reports and logs. |
FrameName enum
frameName passed to addFrameSchema.
Referencing a frame in the entry point
The frame name, exchange name, and strategy name are passed together when launching a backtest insrc/main/backtest.ts:
startDate, endDate, and interval to drive the simulation loop.
Supported candle intervals
Theinterval value controls how many minutes each candle represents. The full mapping, as defined in the persistence layer, is:
assets/entry.jsonl. The default frame uses "1m" because alignToInterval aligns publishedAt timestamps to 1-minute boundaries when matching signals to candle ticks.