etf机器学习
由wtyu创建,最终由wtyu 被浏览 3 用户
基础配置
# 核心参数
TRAIN_START = "2016-01-01"
TRAIN_END = "2019-01-01"
TEST_START = "2021-01-01"
TEST_END = "2025-06-02"
# 基础因子
BASE_FEATURES = [
"open", "high", "low", "close", "volume", "amount",
"close / m_lag(close, 5) as mom5",
"m_avg(volume, 5) as mvol5",
"close / open as c2o",
"m_nanstd((close / m_lag(close,1)-1), 5) as volatility5"
]
# 动态调仓参数
ATR_WINDOW = 14
ATR_RADIO_WINDOW = 20
ATR_DISCRETE_BINS = [0,1, 2, np.inf] # 低/正常/高波动区间
代码:
https://n2nquant.com/aistudio/studios/dc5342a7-cfa4-46c2-8b57-79af89f2bfdd/?folder=/home/aiuser/work
\
调优维度及顺序
阶段 | 调整对象 | 目标 | 测试变量 |
---|---|---|---|
1 | 模型架构 | 优化预测性能 | RF/XGBoost/LightGBM |
2 | 标签设计 | 改进信号质量 | 5日/10日收益率,涨跌分类 |
3 | 因子组合 | 增强特征有效性 | 技术指标+基本面因子 |
4 | ATR离散化参数 | 提升仓位控制适应性 | 窗口大小/分箱阈值 |
调优过程记录
阶段1:模型架构对比 (基准因子+5日收益率标签)
# 测试模型
MODELS = {
"RandomForest": RandomForestRegressor(n_estimators=10, random_state=42),
"XGBoost": XGBRegressor(objective='reg:squarederror'),
"LightGBM": LGBMRegressor(num_leaves=31)
}
模型 | 年化收益率 | 夏普比率 | 胜率 | 最大回撤 | 换手率 |
---|---|---|---|---|---|
RandomForest | 16.3% | 1.25 | 55% | -18.2% | |
XGBoost | 18.1% | 1.41 | 57% | -15.8% | |
LightGBM | 17.5% | 1.38 | 56% | -16.5% |
📌 关键结论:XGBoost在收益风险比和回撤控制上表现最优
阶段2:标签设计方案对比 (XGBoost模型)
# 标签定义方案
LABEL_VARIANTS = {
"LABEL_5D": "m_lead(close, 5) / m_lead(open, 1)", # 原始5日收益
"LABEL_10D": "m_lead(close, 10) / m_lead(open, 1)",
"CLASS_5D": "I((m_lead(close,5)/m_lead(open,1) > 1.02)" # 二元分类(涨超2%)
}
标签类型 | 模型指标 | 年化收益率 | 胜率 | 最大回撤 | 交易频率 |
---|---|---|---|---|---|
5日收益率(回归) | MSE=0.0082 | 16.3% | - | -18.2% | 中 |
10日收益率 | MSE=0.0115 | 14.1% | - | -16.5% | 低 |
5日涨跌分类 | AUC=0.68 | 18.7% | 61% | -14.9% | 高 |
10日涨跌分类 | AUC=0.63 | 15.2% | 58% | -16.1% | 中 |
📌 关键结论:5日涨跌分类标签在收益和风险控制上取得最佳平衡
阶段3:因子组合有效性 (XGBoost+分类标签) |
因子组合 | 特征数量 | AUC | 年化收益 | 夏普比率 | 重要因子排名 |
---|---|---|---|---|---|
基础因子 | 8 | 0.68 | 18.7% | 1.51 | mom5 > c2o |
基础+RSI(14) | 9 | 0.70 | 19.8% | 1.67 | RSI > mom5 |
基础+典型价格 | 9 | 0.69 | 19.2% | 1.58 | typ_price > vol5 |
基础+RSI+典型价格 | 10 | 0.71 | 20.5% | 1.79 | RSI > typ_price > mom5 |
全因子(12个) | 12 | 0.70 | 19.6% | 1.65 | RSI > typ_price > vol_ema |
📌 关键结论:RSI+典型价格组合提升明显,更多因子未带来增益
阶段4:ATR参数敏感性测试 |
---|
ATR计算窗口 | 分箱阈值 | 年化收益 | 夏普比率 | 最大回撤 | 换手率 | |
---|---|---|---|---|---|---|
(10,15) | [0.7,1.3] | 19.8% | 1.91 | -13.5% | ||
(14,20) | [0.8,1.2] | 20.1% | 1.85 | -14.2% | ||
(20,30) | [0.75,1.25] | 18.9% | 1.78 | -15.1% | ||
(14,20) | [0.85,1.15] | 22.3% | 2.07 | -12.3% | ||
(14,20) | [0.9,1.1] | 21.1% | 1.95 | -13.8% |
📌 关键结论:窄阈值([0.85,1.15])配合标准窗口表现最优
\