配置变更: - 恢复使用931862.CSI(中证0-9个月国债指数,短债指数) - name从'30年国债'修正为'短债指数'(修正标注错误) - etf设为null(无对应ETF可交易,直接用指数数据) - 注释掉000012.SH配置(上证国债指数) 收益对比验证: | 配置 | 最终净值 | 累计收益 | 说明 | |------|---------|---------|------| | 931862.CSI(短债) | 264.54 | 26354% | ✓ 当前配置 | | 000012.SH(综合国债) | 216.30 | 21530% | 已注释 | | 收益差异 | +48.24 | +4824% | 短债高18.2% | 决策原因: 1. 短债指数久期<1年,波动极小,熊市防御效果最佳 2. 000012.SH是综合国债指数,包含短债到长债,波动较大 3. 之前000012.SH错误映射到511520.SH(政金债ETF),指数-ETF不匹配 4. 931862.CSI虽无对应ETF,但数据覆盖19年(2007开始),回测充分 数据验证: - 931862.CSI: 4335条数据 (2007-12-31 ~ 2026-05-14) - 数据年数: 约19年 关键发现: - 短债指数因其极低波动特性,在熊市动量稳定 - 红利低波(H30269)归类为A股,与创业板竞争A股Top1 - 短债指数(931862)单独作为BOND大类,自动入选 - 实现红利低波+短债同时持仓的双重防御机制
159 lines
5.3 KiB
YAML
159 lines
5.3 KiB
YAML
# ETF轮动策略配置
|
||
|
||
# ==================== 候选池配置 ====================
|
||
# 指数-ETF映射配置
|
||
# index: 指数代码(用于计算因子信号)
|
||
# etf: ETF代码(用于实际交易和收益计算),null表示直接交易指数/加密货币
|
||
code_list:
|
||
# 中国A股指数
|
||
"399006.SZ":
|
||
name: "创业板指"
|
||
etf: "159915.SZ"
|
||
market: "A"
|
||
"H30269.CSI":
|
||
name: "中证红利低波"
|
||
etf: "512890.SH"
|
||
market: "A"
|
||
|
||
|
||
# 全球市场
|
||
"NDX":
|
||
name: "纳指100"
|
||
etf: "513100.SH"
|
||
market: "US"
|
||
"N225":
|
||
name: "日经225"
|
||
etf: "513520.SH"
|
||
market: "JP"
|
||
"GDAXI":
|
||
name: "德国DAX"
|
||
etf: "513030.SH"
|
||
market: "EU"
|
||
"HSI":
|
||
name: "恒生指数"
|
||
etf: "159920.SZ"
|
||
market: "HK"
|
||
"HSTECH.HK":
|
||
name: "恒生科技"
|
||
etf: "513130.SH"
|
||
market: "HK"
|
||
|
||
# 商品 & 固收
|
||
# 使用 COMEX/WTI 期货替代上期所主力合约(数据更长)
|
||
"GC=F": # COMEX黄金期货(2000年至今)
|
||
name: "黄金"
|
||
etf: "518880.SH" # 国内黄金ETF
|
||
market: "COMMODITY"
|
||
"CL=F": # WTI原油期货(2000年至今)
|
||
name: "原油"
|
||
etf: "160723.SZ" # 国内原油ETF
|
||
market: "COMMODITY"
|
||
# 使用 COMEX 铜期货替代上期所主力合约(数据更长)
|
||
"HG=F": # COMEX铜期货(2000年至今)
|
||
name: "有色金属"
|
||
etf: "159980.SZ" # 国内有色金属ETF
|
||
market: "COMMODITY"
|
||
|
||
# 防御类资产:短债指数
|
||
# 931862.CSI = 中证0-9个月国债指数(短债指数)
|
||
# 数据范围:2007-12-31开始,约19年数据
|
||
# 久期:极短(<1年),波动极小,熊市防御效果最佳
|
||
# 收益对比:
|
||
# - 使用931862.CSI(短债):净值264.54,收益26354%
|
||
# - 使用000012.SH(综合国债):净值216.30,收益21530%
|
||
# - 短债防御效果更好,收益高18.2%
|
||
# 注意:无对应ETF可交易,直接使用指数数据计算动量和收益
|
||
"931862.CSI":
|
||
name: "短债指数"
|
||
etf: null
|
||
market: "BOND"
|
||
|
||
# 000012.SH(上证国债指数)配置已注释,原因:
|
||
# 1. 000012.SH是综合国债指数(包含短债到长债),无对应ETF
|
||
# 2. 之前错误映射到511520.SH(政金债ETF),指数-ETF不匹配
|
||
# 3. 收益低于短债指数(216.30 vs 264.54)
|
||
# "000012.SH":
|
||
# name: "上证国债指数"
|
||
# etf: "511520.SH"
|
||
# market: "BOND"
|
||
|
||
# 主市场配置
|
||
primary_market:
|
||
source: "Tushare"
|
||
code: "000300.SH"
|
||
|
||
# 基准指数配置
|
||
benchmark:
|
||
code: "000300.SH"
|
||
name: "沪深300"
|
||
|
||
# ==================== 回测参数 ====================
|
||
start_date: "2002-01-01"
|
||
|
||
# ==================== 因子参数 ====================
|
||
# 动量/趋势窗口期(天数)
|
||
n_days: 25
|
||
# 因子类型:'momentum', 'slope_r2', 'weighted_momentum'
|
||
factor_type: "weighted_momentum"
|
||
|
||
# 动态周期参数 (匹配 JoinQuant 策略)
|
||
auto_day: false
|
||
min_days: 20
|
||
max_days: 60
|
||
|
||
# ==================== 轮动参数 ====================
|
||
select_num: 3
|
||
# 强制分散化:每个大类只选 Top 1
|
||
diversified: true
|
||
# 动量最低阈值:标的动量得分需>=此值才考虑入选(年化收益率*R²)
|
||
# 设置为0表示过滤负动量标的,更高阈值虽能改善回撤但可能错过正动量机会
|
||
min_score: 0.0
|
||
|
||
# ==================== 调仓控制 ====================
|
||
# 最低调仓周期(交易日):持仓至少持有 N 天后才允许换仓
|
||
rebalance_days: 1
|
||
# 调仓得分阈值:新组合总得分需超过当前组合 X% 才触发调仓
|
||
rebalance_threshold: 0.0
|
||
# 单次换仓成本(双边,含佣金+滑点)
|
||
trade_cost: 0.001
|
||
|
||
# ==================== 溢价控制配置 ====================
|
||
# 跨境ETF溢价过滤机制(防止高溢价买入)
|
||
premium_control:
|
||
enabled: true
|
||
default_threshold: 0.10 # 默认溢价阈值 10%
|
||
mode: "filter" # "filter"(完全排除) 或 "penalize"(降权)
|
||
penalty_factor: 0.5 # 降权模式下的惩罚系数
|
||
|
||
# 按市场类型覆盖配置
|
||
market_overrides:
|
||
A: # A股 ETF
|
||
enabled: false # 不启用(溢价通常 < 0.5%)
|
||
HK: # 港股 ETF
|
||
enabled: true
|
||
threshold: 0.10 # 阈值 10%
|
||
US: # 美股 ETF
|
||
enabled: true
|
||
threshold: 0.10 # 阈值 10%
|
||
COMMODITY: # 商品 ETF
|
||
enabled: false
|
||
|
||
# ==================== 数据缓存 ====================
|
||
# 是否使用本地缓存(True=优先从本地读取)
|
||
use_cache: true
|
||
|
||
# ==================== 数据源配置 ====================
|
||
# Flask API 服务配置(优先使用远程 API 获取数据)
|
||
flask_api:
|
||
enabled: true # 是否启用 Flask API
|
||
url: "https://k3s.tokenpluse.xyz" # Flask API 服务地址
|
||
|
||
# SSH 隧道配置(用于网络受限环境,通过境外服务器访问 yfinance)
|
||
ssh_tunnel:
|
||
enabled: true # 是否启用 SSH 隧道
|
||
host: "8.218.167.69" # SSH 服务器地址(阿里云香港 ECS IP)
|
||
port: 22 # SSH 端口
|
||
username: "root" # SSH 用户名
|
||
key_path: "hk_ecs.pem" # SSH 私钥路径(相对于项目根目录)
|
||
local_port: 1080 # 本地 SOCKS5 代理端口
|