Add updated notes from Claude.

This commit is contained in:
sam
2024-11-15 15:16:31 -08:00
parent 368878a482
commit 502b47842e
+53 -36
View File
@@ -1,7 +1,7 @@
# Bitcoin Price Model Description # Bitcoin Price Model Description
## Overview ## Overview
This Bitcoin price prediction model uses a combination of log returns, cycle awareness, and Monte Carlo simulation to generate price projections with confidence intervals. The model was developed through several iterations, with each refinement aimed at improving accuracy and reliability. This Bitcoin price prediction model uses a combination of log returns, cycle awareness, market maturity eras, and Monte Carlo simulation to generate price projections with confidence intervals. The model was developed through several iterations, with each refinement aimed at improving accuracy and reliability.
## Core Components ## Core Components
@@ -11,17 +11,24 @@ This Bitcoin price prediction model uses a combination of log returns, cycle awa
- Applies simple moving average smoothing to reduce noise while preserving underlying patterns - Applies simple moving average smoothing to reduce noise while preserving underlying patterns
- Position within cycle is calculated linearly between known halving dates - Position within cycle is calculated linearly between known halving dates
### 2. Volatility Estimation ### 2. Market Era Adjustments
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
Uses a multi-timeframe approach: Uses a multi-timeframe approach:
- Short window (30 days) - Short window (30 days)
- Medium window (90 days) - Medium window (90 days)
- Long window (180 days) - Long window (180 days)
- Combines these using weighted exponential moving averages - Combines these using weighted exponential moving averages
- Applies a scaling factor of 1.2 to better calibrate confidence intervals - Applies era-specific scaling factors
### 3. Price Projection ### 4. Price Projection
- Uses Monte Carlo simulation with 1000 paths - Uses Monte Carlo simulation with 1000 paths
- Incorporates a small directional skew (0.087) based on expected returns - Incorporates era-aware adjustments to volatility and trends
- Generates both point estimates and confidence intervals - Generates both point estimates and confidence intervals
- Projects forward using cycle-aware return expectations - Projects forward using cycle-aware return expectations
@@ -38,53 +45,63 @@ Instead of working directly with prices or simple returns, the model uses log re
- Maps historical returns to cycle positions - Maps historical returns to cycle positions
- Allows the model to capture recurring patterns around halving events - Allows the model to capture recurring patterns around halving events
### Market Maturity
- Recognizes distinct market eras with different characteristics
- Adjusts projections based on market maturity level
- Accounts for major market structure changes (e.g., futures introduction)
- Provides era-specific calibration of uncertainty estimates
### Enhanced Monte Carlo ### Enhanced Monte Carlo
- Base simulation using normal distribution - Base simulation using normal distribution
- Includes small directional skew to capture trend persistence - Includes era-specific adjustments for volatility and trends
- Generates both median projections and confidence intervals - Generates both median projections and confidence intervals
- Well-calibrated uncertainty estimates (68% CI coverage ≈ 68.1%) - Well-calibrated uncertainty estimates for post-2013 data
## Performance Metrics ## Performance Metrics
When trained on 2016-2024 (two full cycles): When trained on 2016-2024 (two full cycles):
- MAPE: 19.9% - MAPE: 16.8%
- RMSE: ~$17,000 - RMSE: ~$13,940
- 68% CI Coverage: 68.1% - Max Error: $32,536
- 95% CI Coverage: ~99.5% - 95% CI Coverage: 100%
- 68% CI Coverage: 79.5%
## Development History ## Model Limitations
1. Started with direct cycle analysis of returns - Not suitable for pre-2013 market data
2. Moved to log-based analysis for better handling of exponential growth - Assumes future cycles will resemble post-2013 patterns
3. Refined volatility calculation using multiple timeframes
4. Fine-tuned confidence intervals through skew adjustment
5. Simplified trend smoothing while maintaining accuracy
## Current Implementation
The model uses three main functions:
1. `analyze_trends()`: Calculates cycle-position-specific log returns with smoothing
2. `calculate_volatility()`: Computes volatility estimate using multiple timeframes
3. `project_prices()`: Generates price projections using Monte Carlo simulation
## Strengths
- Well-calibrated uncertainty estimates
- Captures both cycle effects and recent market behavior
- Handles exponential price growth naturally
- Balances complexity with interpretability
## Limitations
- Assumes future cycles will resemble past ones
- Does not explicitly model market maturity effects
- Uses simple linear interpolation between halving dates - Uses simple linear interpolation between halving dates
- May not capture extreme market events well - May not capture extreme market events well
## Development History
1. Started with direct cycle analysis of returns
2. Added log-based analysis for better handling of exponential growth
3. Incorporated market maturity through era-specific adjustments
4. Refined volatility calculation using multiple timeframes
5. Calibrated confidence intervals through era-aware scaling
## Current Implementation
The model uses four main functions:
1. `calculate_market_maturity_score()`: Evaluates market maturity indicators
2. `analyze_trends()`: Calculates cycle-position-specific log returns
3. `calculate_volatility()`: Computes era-adjusted volatility estimates
4. `project_prices()`: Generates price projections using Monte Carlo simulation
## Strengths
- Well-calibrated uncertainty estimates for post-2013 data
- Captures both cycle effects and market maturity
- Handles exponential price growth naturally
- Balances complexity with interpretability
- Adapts to different market eras
## Possible Future Improvements ## Possible Future Improvements
- Market maturity indicators
- Non-linear cycle progression - Non-linear cycle progression
- Regime detection - Regime detection for market phases
- External factor incorporation - External factor incorporation
- Dynamic adjustment of parameters based on market conditions
- Improved handling of market transitions
## Usage Notes ## Usage Notes
The model works best when: The model works best when:
- Using post-2013 data
- Trained on at least one full cycle of data - Trained on at least one full cycle of data
- Used for medium-term projections (months to years) - Used for medium-term projections (months to years)
- Interpreted probabilistically rather than as point forecasts - Interpreted probabilistically rather than as point forecasts