次方量化 全球宏观 每月宏观 公众号 股票开户

区间涨幅-最小持有-止盈冷却

lindercube 2个月前 (11-07) 阅读数 66 #量化教程

就是一个简单的区间涨幅,带有止盈止损功能,


该策略是一个基于动量因子的 ETF 轮动策略,核心逻辑是通过筛选特定周期内动量表现符合条件的 ETF,并结合持有时间限制、止盈规则和冷却机制进行交易决策。以下是策略逻辑的详细分析:

一、策略初始化(initialize 函数)

设定策略基础参数和全局变量,为后续交易逻辑提供基础配置,主要包括:
  1. 基准与交易规则:以沪深 300(000300.XSHG)为基准,使用真实价格交易,开启防未来函数,设置交易成本(佣金 0.02%,无税费)。

  2. 核心参数定义

    • 动量周期:25 天(计算过去 25 天的价格动量)。

    • 动量阈值:仅保留动量在 0.04(4%)到 1(100%)之间的 ETF(过滤动量过低或过高的标的)。

    • 最小持有天数:8 天(自然日),避免频繁交易。

    • 止盈规则:涨幅达 10% 时触发止盈,止盈后对应 ETF 进入 4 天冷却期(期间不再次买入)。

  3. 全局变量:记录上次交易时间、当前 / 历史持仓 ETF、持仓成本、ETF 池(14 只宽基 / 行业 ETF)、止盈时间字典等。

  4. 定时任务:每日 14:50 运行select函数(筛选标的),14:55 运行trade函数(执行交易)。

二、核心逻辑模块

1. 标的筛选(selection 函数)

负责从 ETF 池中筛选符合条件的标的,是策略的核心选股逻辑,步骤如下:
  • 计算动量:对每只 ETF,获取过去 25 天的收盘价,计算动量得分((当前收盘价 - 25 天前收盘价)/25 天前收盘价),过滤数据不足的 ETF。

  • 排序与过滤

    • 按动量得分降序排序(优先选动量高的标的)。

    • 过滤处于止盈冷却期的 ETF(若某 ETF 在 4 天内触发过止盈,则暂时排除)。

    • 保留动量在 0.04~1 之间的 ETF(剔除动量过低或过高的标的)。

  • 结果输出:返回筛选后排名前 2 的 ETF(为后续换仓提供备选)。

2. 交易标的选择(select 函数,14:50 运行)

根据selection的筛选结果,结合持有时间和止盈规则,确定当日是否换仓及目标标的,逻辑如下:
  • 首次开仓:若从未交易(last_trade_time为 None),直接选取selection返回的第一个 ETF 作为目标。

  • 非首次交易

    • 检查是否触发止盈(当前价格较买入价涨幅≥10%):

    • 若触发止盈:记录止盈时间,若筛选结果只有 1 只 ETF 则清仓,否则换为第 2 只 ETF。

    • 未触发止盈:继续持有当前 ETF。

    • 需满足 “持有天数≥8 天” 才允许调整持仓(避免短期频繁操作)。

    • 若筛选出的首个 ETF 与当前持仓不同:直接将其设为目标标的(准备换仓)。

    • 若筛选出的首个 ETF 与当前持仓相同:

3. 交易执行(trade 函数,14:55 运行 + rotation 函数)

根据select确定的目标标的,执行实际买卖操作:
  • 无目标标的(g.etf 为空):若之前有持仓,则清仓,并重置持仓记录、交易时间等参数。

  • 有目标标的且与当前持仓不同:调用rotation函数执行换仓:

    • 先卖出当前持仓(平仓)。

    • 记录目标 ETF 的当前价格(用于后续止盈计算)。

    • 用全部资金买入目标 ETF(满仓操作)。

    • 更新持仓记录、上次交易时间等参数。

三、关键规则总结

  1. 动量驱动:核心是选择过去 25 天动量在 4%~100% 之间的 ETF,优先选排名靠前的标的。

  2. 持有约束:单只 ETF 至少持有 8 天,避免短期交易。

  3. 止盈保护:涨幅达 10% 时止盈,且止盈后 4 天内不再次买入该 ETF(避免追高)。

  4. 轮动逻辑:当筛选出的最优 ETF 与当前持仓不同,且满足持有天数要求时,立即换仓(满仓切换)。

四、策略整体流程

  1. 每日 14:50:通过selection筛选符合条件的 ETF,再通过select结合持有时间、止盈规则确定目标标的。

  2. 每日 14:55:通过traderotation执行交易,若目标标的变化则换仓,若需清仓则平仓。

  3. 循环上述过程,持续根据动量变化和规则调整持仓。

该策略本质是通过动量因子捕捉中期趋势,同时用持有天数、止盈和冷却期控制风险,实现 ETF 的轮动配置。



image.png

分享到:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门
标签列表