程序员的量化世界投资理财量化交易

抛物线转向在商品期货择时策略中的应用(附源码)

2018-05-04  本文已影响40人  发明者量化FMZ

前言

一名合格的交易者,不会因为自己的经验,而有所偏见,而是尊重事实,并做出理性客观的决策。 但大部分投资者总是在潜意识中存在这样那样的偏见,而这些偏见就是交易路上的绊脚石。

很多人都有这样的偏见:「都已经连续跌了这么长时间了,并且跌到前期低点,肯定是底部了,正是抄底的时候」。据此轻易的作出判断,下更大赌注,这种做法,华尔街戏称「徒手接天上掉下来的刀子」。价格之所以下跌,背后肯定有不为所知的原因,价格总是走它自己的路,更不会听任你的偏见。

所以,在交易中,判断归判断,但始终要尊重事实。牢记风控第一判断****第二。一旦市场走势与自己的判断不符,承认错误,不断的修正自己,作出客观理性的决策,才是交易正途。

概述

回到正题,本篇将为大家带来:基于抛物线转向的交易策略。

抛物线转向(SAR)是一个计算非常复杂的分析工具,由美国威尔斯·威尔德发明。「抛物线」这个名字只是一个描述,实际上在指标中并不涉及抛物线的数学计算,它只是在图表上的形状跟抛物线比较相像。

有意思的是,当你在图标上手动绘制趋势线时,它们通常与抛物线转向指标的点对齐。

蓝色虚线——抛物线转向(SAR)

image

数据来源:宽客在线(www.quant.la

抛物线转向最大的特点是:内置加速因子,将趋势方向与趋势强度相结合。在算法中,不仅利用价位变动的动能,还利用了时间变动性质来调整价位上设定的止损点。其中,递减或递增与实际价格之升跌幅度及时间长短有密切关系,可以很好的适应不同形态价格的波动。

原理及算法

抛物线转向原理

简单概括为:首先需要确定极值点(最高价或最低价 EP)。然后在它的基础上加上从 0.02 起步的加速因子(AF),然后每当触及下一个极值点时,再加 0.02。AF的最高为 0.20。然后用极点价与前一时段 SAR 之间的差值乘以加速因子,然后再加上前一时段的 SAR。

涨势中的算法

第一步:假设时间段是t。SAR(t)等于前面N个时间段的最低价格。Af(t)的初始值为0.02。

第二步:时间段是t+1,即:

SAR(t+1)=SAR(t)+Af(t)*(Ep(t) – SAR(t))

第三步:在后面的时间段t+2,t+3,……,上重复涨势第二步中的算法,直到发生跳转为止。另外,AF的最大值是0.2。

跌势中的算法

第一步:假设时间段是t。SAR(t)等于前面N个时间段的最高价格。Af(t)的初始值为0.02。

第二步:时间段是t+1,即:

SAR(t+1)=SAR(t)+Af(t)*(Ep(t) – SAR(t))

第三步:在后面的时间段t+2,t+3,……,上重复涨势第二步中的算法,直到发生跳转为止。另外,AF的最大值是0.2。

关于SAR的算法,有很多种版本,上面这种算法只是其中之一,算法结构都差不多,区别是在细节上,比如:加速因子的触发条件、Ep(t)的确定算法等,会有所区别。

SAR实例

上述的算法过程,你可能会看的云里雾里。不过你可以利用BotVS量化交易平台,直接引用talib库中的SAR指标:

首先引用:☑商品期货交易类库

image.png

由上述几行代码就可以获取SAR指标:

SAR优缺点

SAR优点

SAR缺点

策略构建

单独的SAR是一套「反转系统」,即价格在止损点之上是多头,价格在止损点之下是空头,也就是说头寸永远停留在市场内,趋势向上就作多,趋势向下就作空,但是如果行情在盘整时就会来回亏损。

事实上在策略构建中,SAR更适合作为出场点:

所以,为了避免过于频繁短线,限制交易次数,同时过滤震荡行情,在进场点上,加入了长期移动平均线(MA)。

入场点

出场点

策略源码

模板引用:☑ 商品期货交易类库

策略源码:

image

参数设置:

image

图片来源:BotVS量化交易平台

回测设置:

image

图片来源:BotVS量化交易平台

回测绩效:

image image

图片来源:BotVS量化交易平台

总结

抛物线转向指标有一项哲学假设:只有继续高于最新抛物线转向指标的走势才值得您花费时间和资金。另外,它还可以作为出场条件,可以与其他条件组成攻守兼备的交易策略。

交易者最难克服的就是:在盈利时落袋为安的心里,一点蝇头小利就想及早卖出。在亏损时固执侥幸的心里,小的亏损积累成大亏损。你如果没有一个相当明确的买卖法则,一定受不了心里的诱惑或恐惧,乱买卖一通。使用正期望的交易规则来约束自己,才是广大散户最捷径的道路。共勉!

作者: Hukybo

由 BotVS 宽客在线 首发授权刊载

上一篇下一篇

猜你喜欢

热点阅读