在 GitHub 上查看

低波动率回归策略图

English | Русский | Español | Deutsch | Português | 日本語

均值回归在行情横盘时有效,在趋势中则会受伤,因此本图只在市场平静时入场。平静的定义不含任何绝对数字:把当前的平均真实波幅与它自身的平滑均值相比,只有当它低于该均值的设定比例时才开仓。

schema

策略概览

  • 波动率是相对自身衡量的:AverageTrueRange 送入 SmoothedMovingAverage,两者之比就是全部的行情状态过滤器,因此本图无需重新标定即可用于任何品种。
  • SmoothedMovingAverage 使用递推公式:均值乘以周期减一,加上新值,再除以周期。
  • 公允价格是普通的 SimpleMovingAverage:收盘价低于它就买入,高于它就卖出,但仅限平静状态且仅在空仓时。
  • 本图运行在随附历史数据所提供的五分钟K线上。

入场与出场规则

  • 做多入场: 平均真实波幅低于平静水平,收盘价位于均线之下,且当前空仓。订单按设定数量买入。
  • 做空入场: 平均真实波幅低于平静水平,收盘价位于均线之上,且当前空仓。订单按设定数量卖出。
  • 离场: 收盘价重新回到均线之上时平掉多头,重新回到均线之下时平掉空头。离场刻意不使用波动率过滤,因此即便行情已经启动也照样了结。没有止损,也没有止盈。

参数

参数 默认值 说明
SMA Length 20 作为公允价格的移动平均线周期。
ATR Length 14 衡量当前波动率的平均真实波幅周期。
ATR averaging length 20 对平均真实波幅进行平滑以求其自身均值的周期。
Quiet threshold, % 80 低于平均波动率的百分比阈值,达到即视为市场平静。
Volume 1 下单数量(手)。
Candles 00:05:00 整张图使用的K线周期。

图表详情

  • K线方块向收盘价转换方块、移动平均线和平均真实波幅供数;波幅随后送入第二个指标方块进行平滑。
  • 一个公式方块把平滑后的波幅与公开的百分比换算成平静水平,比较方块再把未平滑波幅与之对比。
  • 两个比较方块判断收盘价位于均线哪一侧,并被复用:开多的条件同时用于平空。
  • 两个入场逻辑与各自合并三个条件——价格、波动率与空仓,而两个离场逻辑与只合并价格与持仓,这正是离场在任何行情下都有效的原因。

使用方法

.json 文件导入 Designer,在回测器中用历史数据运行,然后根据自己的交易品种调整参数或方块,确认无误后再用于实盘。