From 76f554af4fc0bdc86e2ee873f10d06f95b8b6bcd Mon Sep 17 00:00:00 2001 From: rosemarycox5334-debug Date: Wed, 8 Jul 2026 08:59:05 +0800 Subject: [PATCH] 0.94 --- _launch_jp225.bat | 3 + _launch_us2000.bat | 3 + _launch_us30.bat | 3 + strategies/best_JP225.cash.json | 15 +++++ strategies/best_US2000.cash.json | 18 ++++++ strategies/best_US30.cash.json | 15 +++++ strategies/us2000_v1.json | 101 +++++++++++++++++++++++++++++++ strategies/us30_v1.json | 96 +++++++++++++++++++++++++++++ 8 files changed, 254 insertions(+) create mode 100644 _launch_jp225.bat create mode 100644 _launch_us2000.bat create mode 100644 _launch_us30.bat create mode 100644 strategies/best_JP225.cash.json create mode 100644 strategies/best_US2000.cash.json create mode 100644 strategies/best_US30.cash.json create mode 100644 strategies/us2000_v1.json create mode 100644 strategies/us30_v1.json diff --git a/_launch_jp225.bat b/_launch_jp225.bat new file mode 100644 index 0000000..d31450d --- /dev/null +++ b/_launch_jp225.bat @@ -0,0 +1,3 @@ +@echo off +cd /d D:\cl\MT5_AlphaGPT +"C:\Program Files\Python313\python.exe" train_single.py JP225.cash --offline > jp225_train.log 2>&1 diff --git a/_launch_us2000.bat b/_launch_us2000.bat new file mode 100644 index 0000000..3dcb489 --- /dev/null +++ b/_launch_us2000.bat @@ -0,0 +1,3 @@ +@echo off +cd /d D:\cl\MT5_AlphaGPT +"C:\Program Files\Python313\python.exe" train_single.py US2000.cash --offline > us2000_train.log 2>&1 diff --git a/_launch_us30.bat b/_launch_us30.bat new file mode 100644 index 0000000..daf10e0 --- /dev/null +++ b/_launch_us30.bat @@ -0,0 +1,3 @@ +@echo off +cd /d D:\cl\MT5_AlphaGPT +"C:\Program Files\Python313\python.exe" train_single.py US30.cash --offline > us30_train.log 2>&1 diff --git a/strategies/best_JP225.cash.json b/strategies/best_JP225.cash.json new file mode 100644 index 0000000..57b56de --- /dev/null +++ b/strategies/best_JP225.cash.json @@ -0,0 +1,15 @@ +{ + "vocab_version": "v9217a2c0d91a", + "symbol": "JP225.cash", + "formula": [ + 44, + 22, + 66, + 89, + 118, + 45, + 66, + 71 + ], + "best_score": 1.1126550436019897 +} \ No newline at end of file diff --git a/strategies/best_US2000.cash.json b/strategies/best_US2000.cash.json new file mode 100644 index 0000000..30c7cf7 --- /dev/null +++ b/strategies/best_US2000.cash.json @@ -0,0 +1,18 @@ +{ + "vocab_version": "v9217a2c0d91a", + "symbol": "US2000.cash", + "mode": "single", + "formula": [ + 24, + 114, + 74, + 91, + 22, + 114, + 67, + 123 + ], + "formula_decoded": "OBV_SLOPE -> TS_SUM_20 -> DECAY -> WMA -> BOLL_WIDTH -> TS_SUM_20 -> MUL -> CLIP", + "best_score": 1.2308598756790161, + "train_steps": 5000 +} \ No newline at end of file diff --git a/strategies/best_US30.cash.json b/strategies/best_US30.cash.json new file mode 100644 index 0000000..c861869 --- /dev/null +++ b/strategies/best_US30.cash.json @@ -0,0 +1,15 @@ +{ + "vocab_version": "v9217a2c0d91a", + "symbol": "US30.cash", + "formula": [ + 12, + 100, + 50, + 86, + 120, + 13, + 86, + 98 + ], + "best_score": 1.1718814373016357 +} \ No newline at end of file diff --git a/strategies/us2000_v1.json b/strategies/us2000_v1.json new file mode 100644 index 0000000..83d8075 --- /dev/null +++ b/strategies/us2000_v1.json @@ -0,0 +1,101 @@ +{ + "name": "us2000_v1", + "version": "2026-07-08", + "vocab_version": "v9217a2c0d91a", + "status": "verified", + "symbol": "US2000.cash (Russell 2000)", + "mode": "single", + "formula_tokens": [ + 24, + 114, + 74, + 91, + 22, + 114, + 67, + 123 + ], + "formula_readable": "OBV_SLOPE -> TS_SUM_20 -> DECAY -> WMA -> BOLL_WIDTH -> TS_SUM_20 -> MUL -> CLIP", + "formula_operators": [ + "OBV_SLOPE", + "TS_SUM_20", + "DECAY", + "WMA", + "BOLL_WIDTH", + "TS_SUM_20", + "MUL", + "CLIP" + ], + "train_best_score": 1.2308598756790161, + "train_step": 5000, + "train_restarts": 25, + "train_duration": "8.87 hours", + "backtest": { + "annual_return": "+21.2%", + "sharpe": 1.13, + "ic": "+0.015", + "win_rate": "52.5%", + "turnover": "241 trades/year", + "position_bias": "50% long / 50% short (perfectly balanced)", + "data": "8.0 years, 49,961 H1 bars", + "note": "4/4 WF全过,OOS第二高(+1.98)。唯一风险:前两年亏损(Year1 Sharpe-1.38)", + "walk_forward": { + "fold1": { + "oos": "+0.80", + "sharpe": 1.97 + }, + "fold2": { + "oos": "+0.64", + "sharpe": 2.09 + }, + "fold3": { + "oos": "+0.49", + "sharpe": 1.9 + }, + "fold4": { + "oos": "+0.06", + "sharpe": 0.19 + }, + "total_oos": "+1.98", + "verdict": "PASS — ALL 4 folds profitable (4/4)" + }, + "yearly": { + "year1": { + "pnl": "-0.18", + "sharpe": -1.38 + }, + "year2": { + "pnl": "-0.01", + "sharpe": -0.09 + }, + "year3": { + "pnl": "+0.79", + "sharpe": 2.72 + }, + "year4": { + "pnl": "+0.09", + "sharpe": 0.51 + }, + "year5": { + "pnl": "+0.47", + "sharpe": 2.45 + }, + "year6": { + "pnl": "+0.16", + "sharpe": 1.04 + }, + "year7": { + "pnl": "+0.29", + "sharpe": 1.34 + }, + "year8": { + "pnl": "+0.08", + "sharpe": 0.49 + } + } + }, + "logic": { + "summary": "OBV斜率+布林带宽+衰减动量", + "detail": "OBV_SLOPE量价斜率经TS_SUM_20累积,DECAY衰减平滑后WMA加权,与BOLL_WIDTH波动通道经TS_SUM_20平滑后MUL相乘,CLIP截断" + } +} \ No newline at end of file diff --git a/strategies/us30_v1.json b/strategies/us30_v1.json new file mode 100644 index 0000000..c77f862 --- /dev/null +++ b/strategies/us30_v1.json @@ -0,0 +1,96 @@ +{ + "name": "us30_v1", + "version": "2026-07-07", + "vocab_version": "v9217a2c0d91a", + "status": "verified", + "symbol": "US30.cash (Dow Jones)", + "mode": "single", + "formula_tokens": [ + 12, + 100, + 50, + 86, + 120, + 13, + 86, + 98 + ], + "formula_readable": "PRESSURE -> TS_ARG_MAX_5 -> TRIX_SIGNAL -> TS_CORR_10 -> TS_ZSCORE_10 -> AC1 -> TS_CORR_10 -> TS_MAX_20", + "formula_operators": [ + "PRESSURE", + "TS_ARG_MAX_5", + "TRIX_SIGNAL", + "TS_CORR_10", + "TS_ZSCORE_10", + "AC1", + "TS_CORR_10", + "TS_MAX_20" + ], + "train_best_score": 1.1718814373016357, + "train_step": 920, + "train_restarts": 9, + "backtest": { + "annual_return": "+16.8%", + "sharpe": 1.56, + "ic": "+0.017", + "win_rate": "53.0%", + "turnover": "153 trades/year", + "position_bias": "57% long / 39% short", + "data": "6.9 years, 42,973 H1 bars", + "note": "三指数中最稳健(7年全盈利),但收益最低。换手三指数最低(153/yr)", + "walk_forward": { + "fold1": { + "oos": "+0.16", + "sharpe": 1.26 + }, + "fold2": { + "oos": "+0.35", + "sharpe": 2.33 + }, + "fold3": { + "oos": "+0.08", + "sharpe": 0.87 + }, + "fold4": { + "oos": "+0.23", + "sharpe": 1.61 + }, + "total_oos": "+0.82", + "verdict": "PASS — ALL 4 folds profitable (4/4)" + }, + "yearly": { + "year1": { + "pnl": "+0.27", + "sharpe": 1.78 + }, + "year2": { + "pnl": "+0.15", + "sharpe": 1.18 + }, + "year3": { + "pnl": "+0.14", + "sharpe": 1.46 + }, + "year4": { + "pnl": "+0.25", + "sharpe": 2.38 + }, + "year5": { + "pnl": "+0.06", + "sharpe": 0.92 + }, + "year6": { + "pnl": "+0.09", + "sharpe": 0.91 + }, + "year7": { + "pnl": "+0.19", + "sharpe": 2.65 + } + } + }, + "logic": { + "summary": "买卖压力+三重指数均线+TRIX信号", + "detail": "PRESSURE算买卖压力,TS_ARG_MAX_5找极值点,TRIX_SIGNAL捕捉三重指数均线交叉,经TS_CORR_10+TS_ZSCORE_10标准化后,AC1自相关降噪,再次TS_CORR_10确认方向,TS_MAX_20最终平滑" + } +} \ No newline at end of file