docs: define strategy template and backtesting MVP
This commit is contained in:
@@ -292,10 +292,73 @@ DATA-001 (Price Feed)
|
||||
|
||||
**Dependencies:** PORT-001
|
||||
|
||||
### EXEC-001A: Named Strategy Templates [P1, M] **[depends: DATA-003]**
|
||||
**As a** risk manager, **I want** protection strategies to be first-class named templates **so that** I can compare, reuse, and later edit hedge definitions.
|
||||
|
||||
**Acceptance Criteria:**
|
||||
- Persist strategy templates with a stable id and display name
|
||||
- Support at least initial system-defined templates (future user-editable names)
|
||||
- Store template parameters separately from backtest scenarios
|
||||
- Strategy templates are reusable by both live recommendation flows and backtests
|
||||
|
||||
**Technical Notes:**
|
||||
- Add strategy template model/repository
|
||||
- Separate template definition from strategy execution state
|
||||
- Keep room for future user-editable naming and rule parameters
|
||||
|
||||
**Dependencies:** DATA-003
|
||||
|
||||
### BT-001: Synthetic Historical Backtesting [P1, L] **[depends: EXEC-001A, PORT-001]**
|
||||
**As a** portfolio manager, **I want** to backtest hedge strategies against historical selloffs **so that** I can see which approach would have survived without a margin call.
|
||||
|
||||
**Acceptance Criteria:**
|
||||
- Define a backtest scenario with start date, end date, collateral basis, and initial LTV
|
||||
- Simulate at least one named hedge strategy over historical GLD prices
|
||||
- Report max LTV, final equity, hedge cost, and whether a margin call would have occurred
|
||||
- Compare protected vs unprotected outcomes for the same scenario
|
||||
- Support known event replay such as the 2026 gold selloff window
|
||||
|
||||
**Technical Notes:**
|
||||
- Start with synthetic/model-priced historical options rather than requiring point-in-time full historical chains
|
||||
- Use historical underlying prices plus Black-Scholes/volatility assumptions
|
||||
- Output both time series and summary metrics
|
||||
|
||||
**Dependencies:** EXEC-001A, PORT-001
|
||||
|
||||
### BT-002: Historical Daily Options Snapshot Provider [P2, L] **[depends: BT-001]**
|
||||
**As a** quant user, **I want** real historical daily options snapshots **so that** backtests use observed premiums instead of only modeled prices.
|
||||
|
||||
**Acceptance Criteria:**
|
||||
- Historical data provider abstraction supports point-in-time daily option chain snapshots
|
||||
- Backtest engine can swap synthetic pricing for provider-backed historical daily premiums
|
||||
- Contract selection avoids lookahead bias
|
||||
- Provider choice and data quality limits are documented clearly
|
||||
|
||||
**Technical Notes:**
|
||||
- Add provider interface for underlying history and option snapshot history
|
||||
- Prefer daily snapshots first; intraday/tick fidelity is a later upgrade
|
||||
- Candidate providers: Databento, Massive/Polygon, ThetaData, EODHD
|
||||
|
||||
**Dependencies:** BT-001
|
||||
|
||||
### BT-003: Selloff Event Comparison Report [P2, M] **[depends: BT-001]**
|
||||
**As a** portfolio manager, **I want** event-based backtest reports **so that** I can answer questions like “which strategy got me through the Jan 2026 selloff?”
|
||||
|
||||
**Acceptance Criteria:**
|
||||
- Event presets can define named historical windows
|
||||
- Report ranks strategies by survival, max LTV, cost, and final equity
|
||||
- Report highlights breach date if a strategy fails
|
||||
- UI can show the unhedged path beside hedged paths
|
||||
|
||||
**Dependencies:** BT-001
|
||||
|
||||
## Implementation Priority Queue
|
||||
|
||||
1. **PORT-001A** - Add collateral entry basis and derived weight/value handling in settings
|
||||
2. **PORT-002** - Risk management safety
|
||||
3. **EXEC-001** - Core user workflow
|
||||
4. **EXEC-002** - Execution capability
|
||||
5. Remaining features
|
||||
1. **EXEC-001A** - Define named strategy templates as the foundation for backtesting
|
||||
2. **BT-001** - Ship synthetic historical backtesting over GLD history
|
||||
3. **PORT-003** - Historical LTV visibility and export groundwork
|
||||
4. **BT-002** - Upgrade backtests to real daily options snapshots
|
||||
5. **BT-003** - Event comparison reporting
|
||||
6. **EXEC-001** - Core user workflow
|
||||
7. **EXEC-002** - Execution capability
|
||||
8. Remaining features
|
||||
|
||||
Reference in New Issue
Block a user