「100」百篇教程收官篇,关于程序化交易指标的编写
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
「100」百篇教程收官篇,关于程序化交易指标的编写
前言:
大家好!我是股市帅锅。
本篇是100篇免费图文教程的收官之篇,从我们学习第一篇教程开始,我们心里总有个愿望,以后要是能够实现程序化自动交易就好了。
这不仅仅是大家的愿望,也是我自己的愿望,我仍然在这条道路上不断地摸索,希望有一天能够建立比较可行的程序化交易方案。
梦想总要有的,说不定哪天真实现了呢?
学习内容:
在通达信软件中,功能-公式系统-程序交易评测系统,这个系统是用来做什么的?就是用来评测交易体系的胜率的。
交易体系,则包含了买入规则,卖出规则,仓位资金管理,交易方式等,在设置了各个规则之后,就可以对交易体系的胜率进行评测。
虽然通达信的程序交易评测系统有些鸡肋,但基本功能还是具备的,如果大家有兴趣,也可以自己做一些尝试。
在程序化交易系统的建立过程中,买卖点的设定,和普通的指标公式有所区别,也是之前的教程中,我们没有涉及到的,所以在第100篇教程里,做些简介,因为水平有限,我就不演示了,免得演砸。
今天我们就来解释下程序交易指标的编写方法。
编程和测试:
程序交易指标,需要设定买入条件,卖出条件,条件满足时,触发买入交易和触发卖出交易,同时买入和卖出交易交替进行,当然这是最简单的程序交易,复杂的情况,可能有多次的买入,也有可能多次的卖出。
我把系统自带的一个举例程序交易指标MACD交易指标的代码复制过来:
------------
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
平空开多:=CROSS(MACD,0);
平多开空:=CROSS(0,MACD);
BUYSHORT_BUY(平空开多,LOW);
SELL_SELLSHORT(平多开空,HIGH);
AUTOFILTER;
------------
在上面的代码中,可以分为三组,第一组是MACD指标各个赋值,共3句代码,我们都很熟悉。
第二组是设置买卖条件,平空开多,即买入条件,平空的概念存在于可以做空的市场,在之前有卖空单,那么符合这个条件时,先平掉卖空单,再开多单买入。
反向,即平多开空,简单理解,就是买入和卖出条件。
第三组就是交易指令,BUYSHORT_BUY函数意思是先平空仓,再开多仓,反向,简单理解为买入,SELL_SELLSHORT意思是先平多仓,再开空仓,简单理解为卖出。
它们的括号里,跟了两项,第一项是条件,第二项是交易价格。
AUTOFILTER表示买入信号和卖出信号交替成对出现。
程序交易指标是可以叠加在普通主图指标上的,叠加方法如图:
叠加以后,我们看到了以下效果:
在主图上,我们看到上下的黄色箭头,向上的箭头表示买入,向下的箭头表示卖出。
本篇代码就无需提供了,是系统自带的,指标在公式管理器-系统-交易型里面。
思维延伸:
在本例中,演示的条件是最简单的,即MACD指标的金叉和死叉,实际中,买入和卖出的规则设定要复杂的多,但不管多复杂,对于程序交易来说,就是买卖交易的触发条件,所以道理是一样的。
一个交易体系设定后,是否有效,可以通过软件自带的程序交易评测系统来进行评测,以前大家在网上看到的,某个指标,什么情况下,胜率多少,就是这个评测的结果。
但事实上,如果在一个一直上涨的股票里,哪怕今天文中系统自带的最简易的MACD金叉死叉规则,也会有很好的评测结果。
所以评测要有比较广泛的抽样,比较长时间周期里的平均表现,这样的评测结果,才会相对客观。
评测过程就省略了,大家有兴趣,可以自己多折腾尝试。
本篇小结:
终于写完了100篇,自己夸下的海口,就要自己咬着牙兑现。
这100篇教程,偏技能和场景,并没有注重逻辑,给大家提供了学习资料和入口。
文章还要继续更新,但形式上会有改变,重心也会改变,但股市帅锅重知识型内容不会改变,希望大家继续和我,一起探讨,
一起进步。
以后只要有人想学指标公式编写,就会想到帅锅,就算没有想到,最后也会搜索到我写的内容。
这100篇内容已成规模,别人很难模仿,也很难在这个细分领域超越。
不是因为我水平高,而是因为我有耐心和毅力,潜下心来做了这件事。
以后我还是会保持这种心态,坦诚做人,潜心做事,和大家共勉。
第100篇,来100个赞,谢谢大家!。