板块轮动策略

📑 目录
  1. 策略概述
  2. 策略原理
  3. 核心参数
  4. 信号生成逻辑
  5. 策略特点
  6. 相关文件清单

板块轮动策略

策略概述

板块轮动策略基于 CPLC 旋转指标(Cycle Price Location & Cycle),通过多周期 EMA 指数移动平均线的交叉关系,判断板块的轮动时机和趋势方向,指导资金在不同板块间的配置切换。

核心代码位于 E:\钱龙\py\量化策略\板块轮动.py,主函数为 calc_CPLC


策略原理

CPLC 旋转指标

CPLC 指标的核心思想是通过短期 EMA长期 EMA 的交叉关系,判断价格所处的趋势阶段。

1. 计算 DI 值(中间价)

di = (H + L + C * 2) / 4.0

将最高价(H)、最低价(L)和两倍收盘价(C)加权平均,得到一个综合价格 DI,用于平滑价格波动。

2. 计算 EMA 平滑系数

kA = 2.0 / (short_period + 1)   # 短期 EMA 系数
kB = 2.0 / (long_period + 1)    # 长期 EMA 系数
k = 2.0 / (signal_period + 1)   # 信号线 EMA 系数

3. 计算短期与长期 EMA

A[i] = di[i] * kA + A[i-1] * (1 - kA)  # 短期 EMA(快线)
B[i] = di[i] * kB + B[i-1] * (1 - kB)  # 长期 EMA(慢线)

4. 生成旋转信号

  • rotationMore:当短期 EMA 上穿长期 EMA 时产生买入信号
  • rotationNull:当短期 EMA 下穿长期 EMA 时产生卖出信号

核心参数

参数默认值说明
price_times0价格缩放系数,0 表示不缩放
short_period5短期 EMA 周期(快线)
long_period53长期 EMA 周期(慢线)
signal_period6信号线 EMA 周期

信号生成逻辑

短期 EMA (快线) > 长期 EMA (慢线)  →  板块走强,rotationMore 信号
短期 EMA (快线) < 长期 EMA (慢线)  →  板块走弱,rotationNull 信号

买入信号

  • 短期 EMA 从下方上穿长期 EMA
  • 表示板块进入上升趋势
  • 适合加仓或切换资金进入该板块

卖出信号

  • 短期 EMA 从上方下穿长期 EMA
  • 表示板块进入下降趋势
  • 适合减仓或将资金切换至其他板块

策略特点

  1. 趋势追踪:通过 EMA 交叉捕捉板块趋势变化
  2. 参数可调:可调整长短周期参数适应不同市场节奏
  3. 板块轮动:适合多板块间的资金配置切换
  4. 多语言实现:Python / C / C++ / Dart 多版本

相关文件清单

Python 实现

文件路径说明
板块轮动.pyE:\钱龙\py\量化策略\板块轮动.pyPython 主算法实现
板块轮动 copy.pyE:\钱龙\py\量化策略\板块轮动 copy.py备份版本

C / C++ 实现

文件路径说明
板块轮动.cE:\钱龙\py\量化策略\板块轮动.cC 语言实现
板块轮动.c++E:\钱龙\py\量化策略\板块轮动.c++C++ 实现

Dart 手机版

文件路径说明
手机板块轮动indicatorcplcutils.dartE:\钱龙\py\量化策略\手机板块轮动indicatorcplcutils.dart手机端 Dart 实现

辅助文件

文件路径说明
统计.pyE:\钱龙\py\量化策略\统计.py策略统计工具
策略统计.xlsxE:\钱龙\py\量化策略\策略统计.xlsx策略统计结果