383 lines
9.4 KiB
JSON
383 lines
9.4 KiB
JSON
{
|
|
"artifact_schema_version": 2,
|
|
"score_version": "accumulation-score-v2",
|
|
"weights": {
|
|
"pct_above_200w_sma": 0.5075,
|
|
"drawdown": 0.1716,
|
|
"pct_above_lth_rp": 0.0934,
|
|
"rhodl_ratio": 0.08,
|
|
"fear_greed": 0.0459,
|
|
"puell_multiple": 0.0384,
|
|
"reserve_risk": 0.0335,
|
|
"mvrv_zscore": 0.018,
|
|
"nupl": 0.0116
|
|
},
|
|
"feature_importances": {
|
|
"raw_pct_above_200w_sma": 0.448165,
|
|
"days_since_ath": 0.138053,
|
|
"raw_pct_above_lth_rp": 0.093426,
|
|
"raw_rhodl_ratio": 0.080038,
|
|
"score_pct_above_200w_sma": 0.059336,
|
|
"raw_fear_greed": 0.04573,
|
|
"puell_x_reserve": 0.034997,
|
|
"raw_drawdown": 0.033552,
|
|
"raw_puell_multiple": 0.02023,
|
|
"raw_reserve_risk": 0.012477,
|
|
"raw_mvrv_zscore": 0.011366,
|
|
"mvrv_x_nupl": 0.008204,
|
|
"raw_nupl": 0.003843,
|
|
"delta_30d_nupl": 0.003624,
|
|
"delta_30d_reserve_risk": 0.003541,
|
|
"delta_30d_mvrv_zscore": 0.002548,
|
|
"delta_30d_puell_multiple": 0.000677,
|
|
"score_fear_greed": 0.000182,
|
|
"score_rhodl_ratio": 1.1e-05,
|
|
"score_puell_multiple": 0.0,
|
|
"score_mvrv_zscore": 0.0,
|
|
"score_reserve_risk": 0.0,
|
|
"score_nupl": 0.0,
|
|
"score_drawdown": 0.0,
|
|
"score_pct_above_lth_rp": 0.0
|
|
},
|
|
"cv_results": {
|
|
"mean_auc": 0.7667,
|
|
"std_auc": 0.1734,
|
|
"mean_f1": 0.4085,
|
|
"mean_precision": 0.3708,
|
|
"mean_recall": 0.4898,
|
|
"validation_method": "purged_expanding_window",
|
|
"label_horizon_days": 365,
|
|
"folds": [
|
|
{
|
|
"fold": 1,
|
|
"weights": {
|
|
"pct_above_lth_rp": 0.7418,
|
|
"drawdown": 0.1523,
|
|
"reserve_risk": 0.0339,
|
|
"mvrv_zscore": 0.0211,
|
|
"puell_multiple": 0.0164,
|
|
"rhodl_ratio": 0.0141,
|
|
"nupl": 0.0128,
|
|
"pct_above_200w_sma": 0.0043,
|
|
"fear_greed": 0.0033
|
|
},
|
|
"metrics": {
|
|
"auc": 0.7583,
|
|
"f1": 0.0,
|
|
"precision": 0.0,
|
|
"recall": 0.0
|
|
},
|
|
"date_ranges": {
|
|
"train": "2018-02-01 to 2019-08-05",
|
|
"validation": "2020-08-04 to 2021-10-31"
|
|
},
|
|
"n_train": 548,
|
|
"n_validation": 454
|
|
},
|
|
{
|
|
"fold": 2,
|
|
"weights": {
|
|
"reserve_risk": 0.4125,
|
|
"puell_multiple": 0.3942,
|
|
"drawdown": 0.085,
|
|
"pct_above_lth_rp": 0.0429,
|
|
"pct_above_200w_sma": 0.0324,
|
|
"rhodl_ratio": 0.0135,
|
|
"nupl": 0.0131,
|
|
"mvrv_zscore": 0.0053,
|
|
"fear_greed": 0.001
|
|
},
|
|
"metrics": {
|
|
"auc": 0.8346,
|
|
"f1": 0.6582,
|
|
"precision": 0.4906,
|
|
"recall": 1.0
|
|
},
|
|
"date_ranges": {
|
|
"train": "2018-02-01 to 2020-11-01",
|
|
"validation": "2021-11-01 to 2023-01-28"
|
|
},
|
|
"n_train": 1002,
|
|
"n_validation": 454
|
|
},
|
|
{
|
|
"fold": 3,
|
|
"weights": {
|
|
"reserve_risk": 0.2919,
|
|
"puell_multiple": 0.2495,
|
|
"drawdown": 0.1619,
|
|
"pct_above_lth_rp": 0.1028,
|
|
"pct_above_200w_sma": 0.089,
|
|
"fear_greed": 0.0754,
|
|
"nupl": 0.0103,
|
|
"mvrv_zscore": 0.0099,
|
|
"rhodl_ratio": 0.0091
|
|
},
|
|
"metrics": {
|
|
"auc": 0.9755,
|
|
"f1": 0.9757,
|
|
"precision": 0.9926,
|
|
"recall": 0.9593
|
|
},
|
|
"date_ranges": {
|
|
"train": "2018-02-01 to 2022-01-29",
|
|
"validation": "2023-01-29 to 2024-04-26"
|
|
},
|
|
"n_train": 1456,
|
|
"n_validation": 454
|
|
},
|
|
{
|
|
"fold": 4,
|
|
"weights": {
|
|
"drawdown": 0.6216,
|
|
"reserve_risk": 0.1302,
|
|
"puell_multiple": 0.1161,
|
|
"fear_greed": 0.0554,
|
|
"rhodl_ratio": 0.0322,
|
|
"pct_above_lth_rp": 0.0163,
|
|
"mvrv_zscore": 0.0117,
|
|
"pct_above_200w_sma": 0.0094,
|
|
"nupl": 0.0071
|
|
},
|
|
"metrics": {
|
|
"auc": 0.4983,
|
|
"f1": 0.0,
|
|
"precision": 0.0,
|
|
"recall": 0.0
|
|
},
|
|
"date_ranges": {
|
|
"train": "2018-02-01 to 2023-04-28",
|
|
"validation": "2024-04-27 to 2025-07-26"
|
|
},
|
|
"n_train": 1910,
|
|
"n_validation": 454
|
|
}
|
|
]
|
|
},
|
|
"training_info": {
|
|
"n_samples": 2728,
|
|
"n_positive": 1554,
|
|
"positive_rate": 0.5696,
|
|
"n_features": 25,
|
|
"target_threshold": 30.0,
|
|
"date_range": "2018-02-01 to 2025-07-26",
|
|
"model": "GradientBoostingClassifier"
|
|
},
|
|
"provenance": {
|
|
"validation_method": "purged_expanding_window",
|
|
"label_horizon_days": 365,
|
|
"weight_scope": "full_history_fit",
|
|
"training_date_range": {
|
|
"start": "2018-02-01",
|
|
"end": "2025-07-26"
|
|
},
|
|
"trained_at": "2026-07-26T23:19:01.231759+00:00"
|
|
},
|
|
"comparison": {
|
|
"equal_weight": [
|
|
{
|
|
"range": "0-20",
|
|
"label": "EXTREME CAUTION",
|
|
"days": 286,
|
|
"avg_365d": -7.25,
|
|
"median_365d": -13.89,
|
|
"win_rate_365d": 34.3
|
|
},
|
|
{
|
|
"range": "20-35",
|
|
"label": "CAUTION \u2014 OVERHEATED",
|
|
"days": 537,
|
|
"avg_365d": 8.85,
|
|
"median_365d": -21.49,
|
|
"win_rate_365d": 35.6
|
|
},
|
|
{
|
|
"range": "35-50",
|
|
"label": "NEUTRAL",
|
|
"days": 660,
|
|
"avg_365d": 85.33,
|
|
"median_365d": 16.54,
|
|
"win_rate_365d": 60.8
|
|
},
|
|
{
|
|
"range": "50-65",
|
|
"label": "MODERATE OPPORTUNITY",
|
|
"days": 575,
|
|
"avg_365d": 113.54,
|
|
"median_365d": 88.64,
|
|
"win_rate_365d": 88.5
|
|
},
|
|
{
|
|
"range": "65-80",
|
|
"label": "STRONG ACCUMULATION ZONE",
|
|
"days": 339,
|
|
"avg_365d": 183.9,
|
|
"median_365d": 128.5,
|
|
"win_rate_365d": 89.7
|
|
},
|
|
{
|
|
"range": "80-100",
|
|
"label": "EXTREME ACCUMULATION ZONE",
|
|
"days": 331,
|
|
"avg_365d": 120.82,
|
|
"median_365d": 91.85,
|
|
"win_rate_365d": 99.7
|
|
}
|
|
],
|
|
"ml_weighted": [
|
|
{
|
|
"range": "0-20",
|
|
"label": "EXTREME CAUTION",
|
|
"days": 642,
|
|
"avg_365d": -7.11,
|
|
"median_365d": -26.48,
|
|
"win_rate_365d": 25.1
|
|
},
|
|
{
|
|
"range": "20-35",
|
|
"label": "CAUTION \u2014 OVERHEATED",
|
|
"days": 679,
|
|
"avg_365d": 18.61,
|
|
"median_365d": 4.67,
|
|
"win_rate_365d": 53.2
|
|
},
|
|
{
|
|
"range": "35-50",
|
|
"label": "NEUTRAL",
|
|
"days": 462,
|
|
"avg_365d": 138.2,
|
|
"median_365d": 95.1,
|
|
"win_rate_365d": 87.0
|
|
},
|
|
{
|
|
"range": "50-65",
|
|
"label": "MODERATE OPPORTUNITY",
|
|
"days": 277,
|
|
"avg_365d": 206.31,
|
|
"median_365d": 163.37,
|
|
"win_rate_365d": 87.7
|
|
},
|
|
{
|
|
"range": "65-80",
|
|
"label": "STRONG ACCUMULATION ZONE",
|
|
"days": 285,
|
|
"avg_365d": 182.42,
|
|
"median_365d": 123.75,
|
|
"win_rate_365d": 99.3
|
|
},
|
|
{
|
|
"range": "80-100",
|
|
"label": "EXTREME ACCUMULATION ZONE",
|
|
"days": 383,
|
|
"avg_365d": 118.93,
|
|
"median_365d": 119.03,
|
|
"win_rate_365d": 100.0
|
|
}
|
|
]
|
|
},
|
|
"out_of_sample_comparison": {
|
|
"folds": 4,
|
|
"validation_days": 1816,
|
|
"equal_weight": [
|
|
{
|
|
"range": "0-20",
|
|
"label": "EXTREME CAUTION",
|
|
"days": 281,
|
|
"avg_365d": -6.2,
|
|
"median_365d": -13.66,
|
|
"win_rate_365d": 34.9
|
|
},
|
|
{
|
|
"range": "20-35",
|
|
"label": "CAUTION \u2014 OVERHEATED",
|
|
"days": 432,
|
|
"avg_365d": 20.09,
|
|
"median_365d": -14.6,
|
|
"win_rate_365d": 43.1
|
|
},
|
|
{
|
|
"range": "35-50",
|
|
"label": "NEUTRAL",
|
|
"days": 419,
|
|
"avg_365d": 71.09,
|
|
"median_365d": -9.19,
|
|
"win_rate_365d": 48.9
|
|
},
|
|
{
|
|
"range": "50-65",
|
|
"label": "MODERATE OPPORTUNITY",
|
|
"days": 255,
|
|
"avg_365d": 101.47,
|
|
"median_365d": 103.63,
|
|
"win_rate_365d": 76.9
|
|
},
|
|
{
|
|
"range": "65-80",
|
|
"label": "STRONG ACCUMULATION ZONE",
|
|
"days": 237,
|
|
"avg_365d": 100.95,
|
|
"median_365d": 122.53,
|
|
"win_rate_365d": 85.2
|
|
},
|
|
{
|
|
"range": "80-100",
|
|
"label": "EXTREME ACCUMULATION ZONE",
|
|
"days": 192,
|
|
"avg_365d": 76.91,
|
|
"median_365d": 51.03,
|
|
"win_rate_365d": 99.5
|
|
}
|
|
],
|
|
"ml_weighted": [
|
|
{
|
|
"range": "0-20",
|
|
"label": "EXTREME CAUTION",
|
|
"days": 371,
|
|
"avg_365d": 9.72,
|
|
"median_365d": -19.7,
|
|
"win_rate_365d": 31.3
|
|
},
|
|
{
|
|
"range": "20-35",
|
|
"label": "CAUTION \u2014 OVERHEATED",
|
|
"days": 372,
|
|
"avg_365d": 13.85,
|
|
"median_365d": -10.98,
|
|
"win_rate_365d": 42.2
|
|
},
|
|
{
|
|
"range": "35-50",
|
|
"label": "NEUTRAL",
|
|
"days": 263,
|
|
"avg_365d": 107.81,
|
|
"median_365d": 76.78,
|
|
"win_rate_365d": 59.7
|
|
},
|
|
{
|
|
"range": "50-65",
|
|
"label": "MODERATE OPPORTUNITY",
|
|
"days": 348,
|
|
"avg_365d": 64.05,
|
|
"median_365d": 99.55,
|
|
"win_rate_365d": 64.9
|
|
},
|
|
{
|
|
"range": "65-80",
|
|
"label": "STRONG ACCUMULATION ZONE",
|
|
"days": 223,
|
|
"avg_365d": 121.71,
|
|
"median_365d": 126.27,
|
|
"win_rate_365d": 93.7
|
|
},
|
|
{
|
|
"range": "80-100",
|
|
"label": "EXTREME ACCUMULATION ZONE",
|
|
"days": 239,
|
|
"avg_365d": 61.69,
|
|
"median_365d": 42.02,
|
|
"win_rate_365d": 89.1
|
|
}
|
|
]
|
|
},
|
|
"trained_at": "2026-07-26T23:19:01.231759+00:00"
|
|
} |