Add Claude's notes from recent session.
This commit is contained in:
@@ -16,6 +16,7 @@ Uses distinct eras with specific characteristics:
|
||||
- Early (2013-2017): Higher volatility, conservative trends, moderate trend following
|
||||
- Transition (2017-2020): Slightly elevated uncertainty during futures market introduction
|
||||
- Mature (2020+): Reduced volatility, balanced trends, lighter trend following
|
||||
|
||||
Each era has specific scaling factors for volatility, trend expectations, and trend following behavior
|
||||
|
||||
### 3. Volatility Estimation
|
||||
@@ -53,42 +54,95 @@ Instead of working directly with prices or simple returns, the model uses log re
|
||||
|
||||
## Performance Metrics
|
||||
When trained on 2016-2024 (two full cycles):
|
||||
- MAPE: 16.8%
|
||||
- RMSE: ~$13,940
|
||||
- Max Error: $32,536
|
||||
- 95% CI Coverage: 100%
|
||||
- 68% CI Coverage: 79.5%
|
||||
- MAPE: 11.7%
|
||||
- RMSE: ~$9,011
|
||||
- Max Error: $18,786
|
||||
- 95% CI Coverage: 99.5%
|
||||
- 68% CI Coverage: 69.0%
|
||||
|
||||
## Model Limitations
|
||||
- Not suitable for pre-2013 market data
|
||||
- Assumes future cycles will resemble post-2013 patterns
|
||||
- Uses simple linear interpolation between halving dates
|
||||
- May not capture extreme market events well
|
||||
- Shows increased error in transition periods (2015-2018)
|
||||
|
||||
## Development History
|
||||
1. Started with direct cycle analysis of returns
|
||||
2. Added log-based analysis for better handling of exponential growth
|
||||
3. Refined volatility calculation using multiple timeframes
|
||||
4. Calibrated confidence intervals through era-aware scaling
|
||||
5. Attempted model refinements for transition periods
|
||||
|
||||
### Recent Refinement Attempts (2024)
|
||||
|
||||
#### Attempt 1: Era Subdivision
|
||||
- Split transition period into multiple sub-periods
|
||||
- Added skew adjustments for different market phases
|
||||
- Results: Made the model more complex without clear benefits
|
||||
- Outcome: Abandoned in favor of simpler approach
|
||||
|
||||
#### Attempt 2: Dynamic Regime Detection
|
||||
- Implemented real-time market regime detection
|
||||
- Used volatility ratios and trend strength metrics
|
||||
- Results: Made the model too reactive to short-term changes
|
||||
- Outcome: Less stable than original era-based approach
|
||||
|
||||
#### Attempt 3: Weighted Rolling Regression
|
||||
- Used weighted regression for trend estimation
|
||||
- Combined cycle position and time-based weights
|
||||
- Results: Similar performance to original model but more complex
|
||||
- Key Findings:
|
||||
- Recent Period: Slightly worse (MAPE 12.4% vs 11.7%)
|
||||
- Mid Period: Marginally better coverage but similar overall
|
||||
- Early Period: Similar coverage but worse accuracy
|
||||
- Outcome: Returned to original implementation due to comparable performance with less complexity
|
||||
|
||||
## Current Implementation
|
||||
The model uses four main functions:
|
||||
1. `analyze_trends()`: Calculates cycle-position-specific log returns
|
||||
2. `calculate_volatility()`: Computes era-adjusted volatility estimates
|
||||
3. `project_prices()`: Generates price projections using Monte Carlo simulation
|
||||
4. `get_projection_adjustments()`: Handles uncertainty scaling over time
|
||||
|
||||
## Strengths
|
||||
- Well-calibrated uncertainty estimates for post-2013 data
|
||||
- Handles exponential price growth naturally
|
||||
- Balances complexity with interpretability
|
||||
- Adapts to different market eras
|
||||
- Maintains consistent performance across multiple validation periods
|
||||
|
||||
## Possible Future Improvements
|
||||
- Non-linear cycle progression
|
||||
- Regime detection for market phases
|
||||
- External factor incorporation
|
||||
- Dynamic adjustment of parameters based on market conditions
|
||||
- Improved handling of market transitions
|
||||
## Key Learnings from Recent Attempts
|
||||
1. Added complexity doesn't necessarily improve performance:
|
||||
- Multiple sub-periods led to over-fitting
|
||||
- Dynamic regime detection made the model too reactive
|
||||
- Weighted regression provided similar results with more complexity
|
||||
|
||||
2. Transition period challenges:
|
||||
- 2015-2018 remains consistently challenging across approaches
|
||||
- Sharp regime changes are difficult to model without compromising overall stability
|
||||
- Simple era boundaries may be as effective as more complex transitions
|
||||
|
||||
3. Model stability considerations:
|
||||
- Simpler approaches tend to be more robust
|
||||
- Era-based adjustments provide good balance of adaptability and stability
|
||||
- Over-optimization for specific periods can harm general performance
|
||||
|
||||
## Future Improvement Possibilities
|
||||
1. Conservative Approaches:
|
||||
- Fine-tune existing era boundaries
|
||||
- Adjust scaling factors within current framework
|
||||
- Optimize window sizes for different periods
|
||||
|
||||
2. Alternative Approaches to Consider:
|
||||
- Hybrid models combining multiple timeframes
|
||||
- Conditional volatility models
|
||||
- Cycle strength indicators
|
||||
|
||||
3. Areas Needing Further Research:
|
||||
- Better handling of regime transitions
|
||||
- More robust volatility estimation during market structure changes
|
||||
- Improved cycle position effects near halving events
|
||||
|
||||
## Usage Notes
|
||||
The model works best when:
|
||||
@@ -97,60 +151,6 @@ The model works best when:
|
||||
- Used for medium-term projections (months to years)
|
||||
- Interpreted probabilistically rather than as point forecasts
|
||||
|
||||
The confidence intervals should be understood as ranges of likely outcomes based on historical patterns, not hard bounds on future prices.
|
||||
The confidence intervals should be understood as ranges of likely outcomes based on historical patterns, not hard bounds on future prices. When using the model, particular attention should be paid to the training period selection, as this can significantly impact projection quality.
|
||||
|
||||
# Bitcoin Price Model Development Log
|
||||
## Focus: Market Maturity Removal & CI Calibration
|
||||
|
||||
### Initial State
|
||||
- Started with market maturity integrated model
|
||||
- CI coverage was inconsistent across periods
|
||||
- Complex behavior from maturity interactions
|
||||
|
||||
### Key Changes Made
|
||||
1. Removed Market Maturity Component
|
||||
- Eliminated volume-based calculations
|
||||
- Removed efficiency metrics
|
||||
- Simplified volatility calculations
|
||||
|
||||
2. Replaced with Direct Period Scaling
|
||||
- Introduced period-specific base adjustments
|
||||
- More granular era transitions
|
||||
- Progressive scaling for early period
|
||||
|
||||
3. Simplified Volatility Calculation
|
||||
- Standard weights (20/50/30 split)
|
||||
- Direct period-based scaling factors
|
||||
- Removed complex regime detection
|
||||
|
||||
4. Refined Uncertainty Growth
|
||||
- Reduced maximum growth caps
|
||||
- Simplified cycle position handling
|
||||
- More conservative projection adjustments
|
||||
|
||||
### Final Performance
|
||||
Recent (2016-2024):
|
||||
- 68% CI: 69.0% (target achieved)
|
||||
- MAPE: 11.7% (excellent)
|
||||
|
||||
Mid-Period (2015-2022):
|
||||
- 68% CI: 56.1% (below target)
|
||||
- Improved 95% CI performance
|
||||
|
||||
Early Period (2013-2020):
|
||||
- Reduced excessive interval width
|
||||
- Maintained good MAPE (23.4%)
|
||||
|
||||
### Key Learnings
|
||||
1. Market maturity added complexity without clear benefits
|
||||
2. Direct period scaling provides more controllable results
|
||||
3. Simpler adjustments lead to more consistent performance
|
||||
4. Period-specific calibration more effective than dynamic maturity
|
||||
|
||||
### Next Steps
|
||||
1. Consider further tuning of mid-period coverage
|
||||
2. Potential refinement of transition period handling
|
||||
3. Explore alternative cycle position adjustments
|
||||
4. Review projection adjustment caps
|
||||
|
||||
The model now provides more consistent and interpretable results while maintaining or improving key performance metrics.
|
||||
Special consideration should be given to projections spanning major market structure changes or halving events, as these periods have shown higher uncertainty in backtests.
|
||||
|
||||
Reference in New Issue
Block a user