feat(config): 优化ETF轮动策略配置

- 将候选池指数列表升级为包含名称、对应ETF代码及市场的详细映射结构
- 支持多市场ETF映射,包括A股、港股、美股、商品及加密货币市场
- 新增主市场配置及跨境ETF溢价控制机制,防止高溢价买入
- 溢价控制支持启用开关、不同市场阈值及降权模式
- 明确交易成本、缓存使用及交易日历设置,增强策略灵活性和稳定性
This commit is contained in:
2026-03-25 22:01:22 +08:00
parent 61362b274b
commit e6898a851c

View File

@@ -1,43 +1,111 @@
# ETF轮动策略配置
# ==================== 候选池配置 ====================
# A股全行业指数配置Tushare格式XXXXXX.SH / XXXXXX.SZ
# 格式: {代码: 名称}
# 指数-ETF映射配置
# index: 指数代码(用于计算因子信号)
# etf: ETF代码用于实际交易和收益计算null表示直接交易指数/加密货币
code_list:
# 中国A股指数 (使用 Tushare) - 主市场,交易日基准
# 宽基指数
"000300.SH": "沪深300"
"000905.SH": "中证500"
"000852.SH": "中证1000"
"399006.SZ": "创业板指"
"000015.SH": "上证红利"
"000300.SH":
name: "沪深300"
etf: "510300.SH" # 华泰柏瑞沪深300ETF
market: "A"
"000905.SH":
name: "中证500"
etf: "510500.SH" # 南方中证500ETF
market: "A"
"000852.SH":
name: "中证1000"
etf: "512100.SH" # 南方中证1000ETF
market: "A"
"399006.SZ":
name: "创业板指"
etf: "159915.SZ" # 易方达创业板ETF
market: "A"
"000015.SH":
name: "上证红利"
etf: "510880.SH" # 华泰柏瑞红利ETF
market: "A"
# 金融
"399986.SZ": "中证银行"
"399986.SZ":
name: "中证银行"
etf: "512800.SH" # 华宝银行ETF
market: "A"
# 消费
"399997.SZ": "中证白酒"
"399997.SZ":
name: "中证白酒"
etf: "512690.SH" # 鹏华酒ETF
market: "A"
# 医药健康
"399989.SZ": "中证医疗"
"399989.SZ":
name: "中证医疗"
etf: "512170.SH" # 华宝医疗ETF
market: "A"
# 科技信息
"000935.SH": "中证信息"
"000935.SH":
name: "中证信息"
etf: "512330.SH" # 南方信息ETF
market: "A"
# 新能源
"399976.SZ": "新能源车"
"399976.SZ":
name: "新能源车"
etf: "515030.SH" # 华夏新能源ETF
market: "A"
# 周期资源
"399395.SZ": "国证有色"
"399998.SZ": "中证煤炭"
"399813.SZ": "细分化工"
"000937.SH": "中证能源"
"399395.SZ":
name: "国证有色"
etf: "159880.SZ" # 有色ETF
market: "A"
"399998.SZ":
name: "中证煤炭"
etf: "515220.SH" # 煤炭ETF
market: "A"
"399813.SZ":
name: "细分化工"
etf: "516120.SH" # 化工ETF
market: "A"
"000937.SH":
name: "中证能源"
etf: "159930.SZ" # 能源ETF
market: "A"
# 其他行业
"399967.SZ": "中证军工"
"000949.SH": "中证农业"
"399702.SZ": "国债指数"
"399967.SZ":
name: "中证军工"
etf: "512660.SH" # 军工ETF
market: "A"
"000949.SH":
name: "中证农业"
etf: "159825.SZ" # 农业ETF
market: "A"
"399702.SZ":
name: "国债指数"
etf: "511010.SH" # 国债ETF
market: "A"
# 全球市场指数 (使用 YFinance) - 非主市场数据会前向填充到A股交易日
"HSTECH": "恒生科技" # 港股
"NDX": "纳指100" # 美股
"GC=F": "黄金" # 黄金期货 (COMEX)
"HSTECH":
name: "恒生科技"
etf: "513180.SH" # 华夏恒生科技ETF
market: "HK"
"NDX":
name: "纳指100"
etf: "159501.SZ" # 嘉实纳指100ETF流动性好
market: "US"
"GC=F":
name: "黄金"
etf: "518880.SH" # 华安黄金ETF
market: "COMMODITY"
# 加密货币 (使用 CCXT/OKX 现货) - 通过 SSH->HTTP 代理访问
"BTC": "比特币" # OKX 现货
"ETH": "以太坊" # OKX 现货
"BTC":
name: "比特币"
etf: null # 无ETF直接交易
market: "CRYPTO"
"ETH":
name: "以太坊"
etf: null # 无ETF直接交易
market: "CRYPTO"
# 主市场配置(用于确定交易日历)
primary_market:
@@ -71,6 +139,27 @@ rebalance_threshold: 0.0
# 单次换仓成本(双边,含佣金+滑点)
trade_cost: 0.001
# ==================== 溢价控制配置 ====================
# 跨境ETF溢价过滤机制防止高溢价买入
premium_control:
enabled: true
default_threshold: 0.02 # 默认溢价阈值 2%
mode: "filter" # "filter"(完全排除) 或 "penalize"(降权)
penalty_factor: 0.5 # 降权模式下的惩罚系数
# 按市场类型覆盖配置
market_overrides:
A: # A股 ETF
enabled: false # 不启用(溢价通常 < 0.5%
HK: # 港股 ETF
enabled: true
threshold: 0.03 # 阈值 3%
US: # 美股 ETF
enabled: true
threshold: 0.02 # 阈值 2%
COMMODITY: # 商品 ETF
enabled: false
# ==================== 数据缓存 ====================
# 是否使用本地缓存True=优先从本地读取)
use_cache: true