电子现货网

打印 上一主题 下一主题

开发程序化交易的一个完整步骤

2014-10-23 19:37:16 3569 46

[复制链接]
跳转到指定楼层
楼主
admin 发表于 2014-10-21 16:00:28 |只看大图 回帖奖励 |倒序浏览 |阅读模式

admin 楼主

2014-10-21 16:00:28

交易策略的研发是一个相当复杂的过程,是以许多相关且独立的步骤所构成,认真落实好每个步骤才能有成功的交易策略,并且在开发过程中,还要善于利用下一个步骤所得到的资讯,来改进调整上一个步骤,如此才能得到一个完善的交易策略。
                开发程序化交易的一个完整步骤- 现货交易论坛_现货交流中心

  以下是开发步骤
  1、交易策略的公式化。
  2、转化具体规则为可定义格式。
  3、进行初步测试。
  4、交易策略的优化。
  5、推进分析。
  6、多周期多市场的测试。
  7、模拟交易。
  8、实盘交易。
  9、评估实际交易绩效。
  10、交易系统的改进和完善。
  步骤1:首先,任何交易策略一开始都只是一个想法,当然想法可以有多种多样,没有做不到,只有想不到。不管你的想法怎样,你都要能够把它们清晰完整地表达出来,最好的方法是拿一张纸,把它们一点一点写下来,然后仔细读看它们是否有逻辑混乱、重复之处,最后得到的就是交易策略的规则,即初步的框架。如果你的规则不够明确,逻辑不连贯,缺乏关键因素,或者有错误,那接下来的步骤就会很辛苦。对新手而言,他们往往不能完整地列出所有的规则,导致后面的步骤无法进行下去。
  步骤2:当你把所需要的规则都列出来后,就要把这些规则转变成你所使用的测试平台的计算机语言,软件平台也有很多种,像国内的有文华、金字塔、TB、MC、易盛等,国外的TS、MT、YT等,如果是计算机专业人员还可以通过基于CTP的平台自己开发,不用的平台都有不同的语言,优缺点各异,像TS的Easylanguage,是从程式语言PASCAL演变过来的,由于天然的易读性被交易员普遍接受,而MT则类似于C语言。在这一步,你所要做的就是选择一款实用、性价比高的平台去把你的规则转变成计算机语言。
  步骤3:当策略中所有的程式码都能准确地编译后,就能看到初步的测试结果,在这一步,你可以看到你的策略是否会给你带来赢利,并且你要做的是观察信号图是否和你的想法一致,如果不一致,则证明策略原码出现了错误,返回步骤2进行修改,如果一致,接下来要做的是检验初步测试报表,了解策略的风险報酬比,交易次数等,这里最好多测试几个品种,不一定要求全部获利,但如果多数出现亏损,那你最好还是放弃这个策略。相反,如果结果看起来不错,那就是一个好的开始。
  步骤4:策略的优化,这一步是最引人入胜的,因为很多的所谓圣杯都是在这里产生。最佳化策略就是要把策略的性能提高,让策略赚取更大的利润且风险控制在一定的水平。我们大多数的策略都会设有参数,而策略的优化就是参数的优化,不同的参数会产生不同的绩效,过度地增加参数进行限制会产生过度配适问题,过度限制过去的行情无异于减少未来行情重现的概率,这一点我们一定要把握适度,不能为了优化而优化,结果只会适得其反。
  步骤5:当进行完优化后,我们要对其进行推进分析,这是开发交易策略中最严谨的步骤。这一步的核心是检验交易策略的稳健性,即是否存在过度配适的问题。那么我们如何来进行推进分析,简单来讲就是要进行一个对比,优化后的策略对以前的数据和之后的数据间的对比,那么我们就要分成样本内和样本外两种,通过测试得到不同的绩效,然后进行比较,衡量两者的报酬率,关于怎么选取数据这个问题就不详细讲了,如果两者之间存在很大差异,就证明策略稳健度不高,可能存在过度配适,这样就要回到步骤4再重新改善。
  步骤6:当策略通过推进分析后,就说明策略具有一定的稳健度,接着进行多周期多市场的测试,进行这一步,并不是要找一个全能的策略,实际上能够在不同的周期、不同的市场都表现得很好的策略真的不常见,而且我认为也不需要在所有的市场都适用,因为每个市场都有自己的特性。进行测试得到的结果如果在大多数的情况下都能获得正期望,那么恭喜你,这个策略具有很好的适应性,因为不同市场不同的走势能让策略得到不同的表现。
  步骤7:经过一系列的步骤,到了模拟交易,有的朋友想跳过这一步,直接实盘,其实这是有很大风险的,因为我们之前测试的都是基于静态数据而来的,我们不知道未来行情策略会表现如何,是否有信号消失、滑点大小等,这些都是不确定因素,所以我们先跑一段时间的模拟盘,看看是否存在什么未预料的情况,当然跑多久,这里建议最好6个月,但是我想要说,即使你能做好所有的准备工作,到真正实盘也还是会有新问题等着你,意外总会发生。
  步骤8:好了,终于要实盘了,对于看信号手动的交易者,这一步就是要坚决执行每个信号,对程序化自动的交易者,只需完全让计算机运作。
  步骤9:为了让交易系统能够成功运行,交易者必须持续监控实际交易绩效,了解其交易绩效是否和如同测试预期。很多交易员很快就放弃一些策略,因为策略出现了亏损,即使亏损频率和最大限度仍在策略报表所提供可容忍的范围内。导致该问题往往是对交易策略缺乏信心,或策略不适合自己,解决方法是对策略进行重新认识,认真做好交易记录,一段时间后对策略绩效进行一个总结。
  步骤10:随着时间的推移,交易策略也有了一个大概的绩效评估,在市场的不同时期,绩效会有不同的表现,这是正常的,我们通过统计评估,可以发现策略的强度和弱点,然后增加策略的强度和减少不足。对于是否手动干预系统,我的看法是这样,系统就是你的好朋友,如果你对他非常了解和熟悉,当他出现某一种情况时,你会知道他是怎么想的,这时手动干预就可以补掉系统的不足,如果你对他不熟悉,那么手动干预只会弄巧成拙。
  至此,开发一个交易策略就完成了。每一个交易员都应该开发属于自己的交易策略,如果你是一名交易员,你一定会从中得到乐趣、信心、成就。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
回复

使用道具 举报

全部回复61

沙发
梦幻金山 发表于 2014-10-21 16:00:29

梦幻金山 沙发

2014-10-21 16:00:29

让人奔走相告曰须阅读的好帖   
回复 支持 反对

使用道具 举报

板凳
874405146 发表于 2014-10-21 16:00:30

874405146 板凳

2014-10-21 16:00:30

跟帖是一种友情,一种欣赏别人的善良。
回复 支持 反对

使用道具 举报

地板
画龙00点睛 发表于 2014-10-21 16:00:31

画龙00点睛 地板

2014-10-21 16:00:31

来释放自己,结交朋友。那一篇篇帖子,那一张张跟帖,
回复 支持 反对

使用道具 举报

5#
sf374946 发表于 2014-10-21 16:00:32

sf374946 5#

2014-10-21 16:00:32

提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

6#
hywan6868 发表于 2014-10-21 16:00:33

hywan6868 6#

2014-10-21 16:00:33

本来世界就应该是这样的吧,每当手指轻轻的敲击着键盘,
回复 支持 反对

使用道具 举报

7#
zhangzhifang 发表于 2014-10-23 19:14:31

zhangzhifang 7#

2014-10-23 19:14:31

让人佩服得五体投地的好帖   
回复 支持 反对

使用道具 举报

8#
qxh522 发表于 2014-10-23 19:01:18

qxh522 8#

2014-10-23 19:01:18

都想摘下生活给我们的这虚伪面具,表达心中最原本最真实的自我呢
回复 支持 反对

使用道具 举报

9#
章鱼 发表于 2014-10-23 19:01:00

章鱼 9#

2014-10-23 19:01:00

这里就象是一个没有拘束的世界,
回复 支持 反对

使用道具 举报

10#
现货人生 发表于 2014-10-23 19:37:16

现货人生 10#

2014-10-23 19:37:16

每个人都可以相互倾听,相互鼓励,相互安慰,嘻笑打闹,无处不透露出脉脉温情。
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册 |

返回列表 本版积分规则

用户组 : 管理员
邮   箱 :848571800@qq.com
手   机 :未填写
Q   Q : 未填写
性别 : 就不告诉你
主页 :未填写
个人介绍 :未填写

主题

帖子

积分144716

 
 
网站咨询
软件咨询
点击这里给我发消息
工作时间
9:00-21:00