全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版) 量化投资
4247 0
2019-08-26

移动均线SMA、EMA等指标为常用的均线指标,特别适用于趋势市场中。但这些指标对趋势的判定具有一定的滞后性,当趋势出现反转时这种滞后性容易导致亏损。然而,在技术性投资章节中指出,这种趋势性策略在中国并不一定适用,因为中国投资者更多是投机,而不是投资,因此利用长期趋势策略并不合适。此处为了弥补这种趋势上的缺陷,加入止损策略。

基于此,本节借用John F. Ehlers提出的SuperSmoother指标,这个指标在在很多交易软件如Tradestation中存在。其中John F. Ehlers是电气工程师,获得密苏里大学的电气工程专业的本科和硕士学位,获得华盛顿大学的博士学位,擅长波动和信号理论,从1976年开始从事个人交易。他把信号工程中的理论运用到技术性指标的构建中,从一个信号分析和频域的视角分析技术性指标,并提出大量新的技术性指标,获得了大量投资者的认可。其中SuperSmoother为超滑动平均线,主要弥补移动平均线的滞后性问题,得到的指标在一定程度上可以类似于小波信号指标的结果,而且计算方法从小波分析的方法简单的多。SuperSmoother计算公式如下:

QQ图片20190826212327.png

超平滑均线来自于信号理论数字信号处理(Digital Signal Processing),与移动均线的差异见图6.3。其中红色实线为SuperSmoother均线,蓝色虚线为一般EMA均线,可以看出,其中超平滑均线一方面具有平滑性特征,同时在一定程度上紧随K线,滞后性要远远小于一般的移动均线。 bbbb.png

图6.3     SuperSmoother指标与EMA指标在期货CF1609上的表现这种均线究竟表现如何,下面构建超平滑移动均线策略进行分析。以商品期货为例,具体选择玻璃、棉花和甲醇期货的15分钟K线数据,交易规则与一般均线交叉策略一致,即当收盘价上穿超平滑均线进入,收盘价下穿超平滑均线时退出,并根据风险调整买卖仓位,对应的策略设定见表6.2。

表6.2 超平滑移动均线策略


策略

设定

参数

数据

玻璃、棉花和甲醇期货1609

15分钟线

指标

SuperSmoother

10期

进入

均线交叉类似

-

退出

均线交叉类似

-

成交量

OsDollarATR函数

-


在此基础上,基于SMA策略,并利用上述指标进行止损,对期货市场的15分钟数据构建策略进行分析。
复制代码
运行结果为:

[1] "2016-05-25 01:30:00 CF1609 33 @12435"

[1] "2016-05-30 02:00:00 CF1609 -33 @13060"

[1] "2016-05-30 02:30:00 CF1609 30 @13170"

[1] "2016-05-30 15:15:00 CF1609 -30 @13170"

……

[1] "2016-08-29 03:15:00 MA1609 -446 @1863"

[1] "2016-09-01 03:30:00 MA1609 542 @1845"

[1] "2016-09-08 07:00:00 MA1609 -542 @1872"

[1] "2016-09-13 01:15:00 MA1609 96 @1880"

[1] "2016-09-20 06:15:00 MA1609 -96 @2082"


在此基础上对投资组合、账户和最终资产进行更新,对应的命令分别为:

>updatePortf(portfolio.st)

>dateRange<-time(getPortfolio(portfolio.st)$summary)[-1]

>updateAcct(portfolio.st,dateRange)>updateEndEq(account.st)

分别对三种期货统计图显示,具体命令为:

>chart.Posn(portfolio.st,'MA1609')


cccc.png


6.4     甲醇期货1609交易头寸、累积收益和回撤统计图

在此基础上查看具体绩效统计结果:

>stats<-t(tradeStats(portfolio.st))                   CF1609      FG1609      MA1609    Portfolio          "OHV"       "OHV"       "OHV"      Symbol             "CF1609"    "FG1609"    "MA1609"   Num.Txns           "82"        "74"        "76"       Num.Trades         "41"        "37"        "38"       Net.Trading.PL     " 77080"    "111351"    " 36309"   Avg.Trade.PL       "1880.000"  "3009.486"  " 955.500" Med.Trade.PL       "-1310"     " -767"     " -857"    Largest.Winner     "36795"     "39055"     "30499"    Largest.Loser      "-12305"    " -9698"    " -7313"   Gross.Profits      "166925"    "182073"    "111138"   Gross.Losses       "-89840"    "-70722"    "-74819"   Std.Dev.Trade.PL   "10379.465" "10322.876"" 7778.482"Std.Err.Trade.PL   "1621.000"  "1697.070"  "1261.836" Percent.Positive   "34.14634"  "37.83784"  "31.57895" Percent.Negative   "63.41463"  "62.16216"  "63.15789" Profit.Factor      "1.858025"  "2.574489"  "1.485425" Avg.Win.Trade      "11923.21"  "13005.21"  " 9261.50" Med.Win.Trade      " 6532.5"   "12418.0"   " 7700.0"  Avg.Losing.Trade   "-3455.385" "-3074.870""-3117.458"Med.Losing.Trade   "-3037.5"   "-2409.0"   "-3002.5"  Avg.Daily.PL       "2141.111"  "3275.029"  "1100.273" Med.Daily.PL       "-1207.5"   " -733.0"   "-1714.0"  Std.Dev.Daily.PL   "10599.994" "10607.983"" 8043.178"Std.Err.Daily.PL   "1766.666"  "1819.254"  "1400.138" Ann.Sharpe         "3.206519"  "4.900977"  "2.171566" Max.Drawdown       "-62265"    "-31439"    "-49313"   Profit.To.Max.Draw "1.2379346""3.5418111" "0.7362967"Avg.WinLoss.Ratio  "3.450619"  "4.229517"  "2.970850" Med.WinLoss.Ratio  "2.150617"  "5.154836"  "2.564530" Max.Equity         "104575"    "116763"    " 48896"   Min.Equity         "-1485"     "-4820"     "-6691"    End.Equity         " 77080"    "111351"    " 36309"   可以看出,这种策略效果非常理想,每种期货都出现了较大的盈利。其中棉花期货盈利77080元、玻璃期货盈利111351元,甲醇期货盈利36309元。估计很多人要飘飘然了,这么好的绩效,还呆在这里干什么,赶紧赚钱去!冷静冷静,这只是Paper Trading而已,很多实际因素并没有考虑在内。一定要对比思考,这种交易与实盘交易不同之处在哪里,有哪些因素会对上面的最终收益造成影响。切记,这种思考对实盘交易非常重要。

    如有读者想进一步研究,可移步参考《量化投资基础、方法与策略——R语言实战指南》(电子工业出版社)。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群