加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[转载]【程序化交易】期货的发展方向-研究报告(一)

(2011-10-09 22:20:17)
标签:

转载

分类: 交易系统

                              系统交易原则                 作者:QQ-365839702 欢迎交流 

1.       交易原则:确认使用某系统后,完全遵守系统信号交易,不加入任何人工干扰。

2.       研发原则:明确追求利润类型,了解理念和亏损,以长期获利的安全系统作为基础。

3.       系统参数:系统参数不得超过2个,优化参数最好为1个.

4.       参数选择:成功百分比=盈利参数/优化总参数,低于50%的系统不可以使用。

5.       趋势与反趋势:已趋势性系统为主,反趋势系统仓位不得超过总仓位的20%。

6.       风险管理:低仓位,多品种*系统*参数的投资组合,放大盈利概率,平滑最大损失。

    

 

举例:橡胶交易系统KATR

橡胶-30分钟周期交易系统KATR(参数aver可选择范围20-100)

总资金200万,固定只使用50万开仓(相当于25%仓位)不计复利,2006-2011五年的收益情况:

 

参数选择25  (200万本金 / 25%仓位 / 五年不计复利的净利润为800万)

 http://s15/middle/56d2cba8ha65d660a857e&690

参数选择40

http://s14/middle/56d2cba8ha65d667522bd&690

参数选择60

http://s3/middle/56d2cba8ha65d66753432&690

参数选择90

http://s8/middle/56d2cba8ha65d66845e57&690

       可见以上四个参数25,40,60,90,中60表现最好,其他参数均在不同时期存在较大回撤。

       在实践中,如何保证我们的系统不出现较大回撤呢?参数60,在未来的行情中能够保持稳定吗?

       假设我们将以上四个参数都纳入系统中,会表现如何?四合一系统的收益曲线:

http://s14/middle/56d2cba8ha65d6665ee8d&690

       这里仅举简单的同系统内部参数组合。实践证明,系统组合的实际适应能力和稳定收益能力大大强于单系统运行。多品种,多系统,多参数,三类不同组合可以演化出庞大的投资策略组合。

 

 

一.程序化的优势

 

1.       排除情绪化干扰

 

期货市场是一个负和博弈,国内三大期货交易所每年收取的手续费超过200亿元。也就是说全国所以期货交易者每年的利润总和是负两百亿元。如果希望在期货市场上赚钱,就必须先知道哪些人在亏钱。巴菲特曾经说过:“如果你在打牌,打了二十分钟之后你还不知道谁是傻瓜,那么你就是傻瓜。”

 

谁在亏钱,并且负担这些手续费的费用呢?个人的理解,最大的亏损方有两个。

 

一,情绪化操作者。

二,风险控制不善者。

 

简单的说,在市场中的涨涨跌跌都是逆人性的,因为按照这个模式发展,市场能不断使得新加入的受情绪操纵的交易者亏损退场,留下资金。只有这样市场才会不断有新的资金流入,不断膨胀。

 

风险控制不善的结果比情绪化还要严重,研究了程序化交易之后,我们可以简单的证明即使拥有一个相当好的交易系统,风险控制不善也会导致交易者损失所有资金。

 

例如系统在20%仓位运行时,平均年利润为50%,最大亏损为30%。这已经是一个成绩不错的系统,然而,当我们使用80%的仓位运行此系统时,年最大利润会上升到200%这样一个诱人的成绩,然而最大亏损却会达到120%,超过我们的所有资金。

 

这些简单的道理也许所有人都懂得,只不过面对铤而走险获取200%的利润时,贪心会唆使贪婪的人抛弃理性。

 

系统化交易最大的优点之一,就是可以排除人性的弱点。每当交易者在系统交易中觉得系统需要人为干预的时候,恰恰就是交易者人性弱点暴露的时候,此时做出的决策,长期来看总是会影响系统表现。

 

2.       利用历史数据和计算机编程快速模拟经验积累的过程

 

在某种意义上来说,人脑可以是一套最完美的程序化交易系统。但这需要经过长时间经验的积累,历经各种尝试与失败,最终完成在市场中的“优化”,这种代价的巨大的。

 

程序化交易可以让“经验积累”这一过程变得更快更准确,并可明确复制于未来使用。

      

       历史会重演,所有的成功交易者无论使用基本面,技术面,或者纯粹程序化都离不开这个前提条件。从这个层面上讲,基本面分析者,技术分析者,程序化交易者的根本交易原则都来源于对于历史的解析。相对来说,程序化交易者只是将这种解析转化为数字化的程序,在未来的每一个时点都可以明确的表达出唯一的操作,不存在任何的模棱两可。

 

 

3.程序化强大的投资组合处理能力

 

在股票当中,投资组合可以规避掉大部分的非系统性风险,也就是各股的风险,然而基本无法规避系统性风险。再多股票组成的投资组合也只能获得与购买指数同样的效果。原因在于股票市场中各股于指数的相关度过高,并且人们已经形成参考指数来选择是否购买各股的习惯。

 

然而在期货市场中则不同,各品种的分化程度相对较高,即使在商品市场整体呈现牛市或者熊市时期,不同类型的商品的趋势特征也不相同,这给多系统多品种交易带来了巨大的帮助。并且期货市场是T+0市场,并且可做多做空,短期套利或者投机系统与中长期趋势追踪系统的结合使用更可以让程序化投资组合的收益曲线更加平滑。

 

程序化在单一品种上的表现,或许不及一些经验丰富的交易专家,但程序化的多品种,多系统,多参数交易能力,超短线套利能力,快速决策并发送指令的能力都是人无法达到的。)

 

 

 

二.系统的研发流程

 

  1. 观察图表,确认所追求利润的类型(趋势或震荡,大趋势或小趋势,日内或隔夜)
  2. 结合价格或指标,拟定开仓点,平仓点,并且编程测试并调整。(如仍无法获利,返回第一步重新观察)
  3. 如果以上较简单系统可以获利,则可以观察信号,添加其他附加条件。
  4. 添加条件以改变绝大多数比交易为主要目的,使越多的交易好转,条件越具适应性。
  5. Walkforward测试,评估系统在样本外的适应性。
  6. 多投资组合组成的投资策略整体性能测试,了解盈利亏损的特点。

三.系统的参数的设定

      

       系统的参数个数越少越好,因为2个或两个以上的参数的大面积优化,优化次数过多。过多次的尝试得出的最优结果,除非整体成功率较高,否则很可能得到过度拟合的结果。

 

       为避免大面积优化多次尝试产生的过度拟合结果,可以使用公式表达法,寻找规律后,将其他次要参数用主要参数通过公式计算来表达。

 

       例如:参数A与参数B,通过经验或优化结论得到一般在A = 2 * B时,系统工作状态较好,如果其中主要参数为B,那么A参数可以用2*B来表达。

 

       复杂的例如,为了对B参数进行适合行情的自动调整,调整后为变量D,A参数为调整系数。有D = B – C/A ; (C为变量)则可将变量C的赋值与B联系起来,而A采用固定参数不参与优化。

 

 

四.参数优化结果的选取

 

       多参数系统一般适合通过单一参数表达其他参数的方法,转化为单参数系统。或者只优化一个主要参数,其他参数通过观察或从理论上来确定。

 

单参数优化的取舍  --  利润—参数图的意义

 

1.       一般的优化结果都是通过净利润排列,取前N名列出。

2.       双击参数列的第一行,使之按参数从小到大排列。

3.       单击净利润列第一行,选中整列,点击生成图表功能。

4.       如果利润-参数图较平滑,且参数间波动不大,曲线有一定趋势性,则参数成功率高可用。

5.       举例比较:

    http://s9/middle/56d2cba8ha639c90bee18&690

          (参数可选用)图表来自Trade blazer交易软件 开户咨询:QQ-365839702(参数不可选用)

 

五.利用历史数据测试系统的适应性

 

系统适应性的衡量标准:系统在样本内的表现与样本外的表现的差距。

 

  1. 历史重演法

 

模拟系统形成以及实际使用的过程,将历史数据分为两段,一段为“样本数据”用来优化参数选择参数,一段为当做“未来行情”,将在“样本数据”中优化好的参数放在“未来行情”中测试,观察这两个时期的收益差距是否过大。一般来说“未来行情”中测试的数据比系统在“样本数据”中的净利润低30%左右是正常的,最大回撤高于样本中的最大回撤也是正常的。但是一旦这种改变使得系统在样本数据外盈利能力完全改变,那么这个系统也是值得怀疑的。

 

图例:( IS-In Sample  OOS- Out of Sample)

 http://s13/middle/56d2cba8ha639d074607c&690

Net Profit 样本内外差距过大,样本外甚至亏损,系统不具有适应性,无法使用。

 

 

2.  影响适应性的因素

 

总的来说,参数越少,结构越简单,净利润-参数曲线越平滑的系统,适应性越强。相反,参数过多,结构复杂,净利润-参数曲线波动呈非线性的系统,基本不具有适应未来行情的能力。

 

 

 

六.投资组合与资金风险管理----实现长期稳定的收益

仅简单举例单一系统单一品种的不同参数投资组合效果

例如:RB-2009-3---2011-4

系统A分别使用20,40,60三个参数的收益曲线

http://s5/middle/56d2cba8ha639d4068014&690

http://s8/middle/56d2cba8ha639d47e7107&690

可见图中除了参数40的收益较稳定以外,其他参数收益波动过大,或者平台期过长。然而加入目前的最优参数40,在下一阶段的行情是否会不适应呢?

 

简单选取一个最优的参数危险性太大,尤其在净利润—参数曲线不是非常平滑的系统中。优化的经验告诉我们,对于每一个不同的时期都有最优的参数,这些最优参数无法预测,但是却总在一个较大的适用参数群的范围内,因为一个品种的波动特性虽然总在变化,但不会完全改变它的根本性质。针对RB系统A的适应参数群大约在15-70左右。

 

因此,为了防止未来行情中最优参数从参数40附近转移到其他区域,我们可以平均分配仓位在20,40,60三个参数中。获得较为安全的投资组合。

 

系统内部多参数组合的好处:

 

1.       平滑不同参数的亏损(一个参数在亏损期时,其他参数可能在收益期)

 

2.       预防未来行情中最优参数转移

 

3.       如果资金量较大,分散操作可以减少滑价成本

 

以下是同样时期,使用20,40,60三个参数组合投资的收益图,这个组合在在历史行情中收益必然低于最优参数,然而在未来行情中的适应性和稳定性都大大超过最优参数40。

 http://s1/middle/56d2cba8ha639d8869480&690

七.其他程序化交易感想

 

1.重视最简单最机械历史最悠久的系统。

2.历史悠久的系统有个统一的特点,都是趋势跟踪系统。

3.多尝试新的策略是有益的,虽然失败的占99%,失败同样可以积累经验。

4.不去追求完美的系统,不去追求使用在各个品种的系统,因为不存在。

5.主要精力用在主要品种的多系统多参数分散策略,和参数选择上。

                                                                       

    本人任职于上市公司期货交易员,个人投资使用TB程序化交易做国内期货,兼职做居间经纪人赚些无风险收益。如果您目前手续费较高,可考虑开户,提供程序化入门指导,对于资金较大客户可提供本人目前使用的投资组合源代码供研究参考。手续费可以给最低,交易所加5毛。不开户单纯就程序化进行交流也欢迎。

                                                      作者 QQ:365839702 注明交流或开户

 

0

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有