快生活 - 生活常识大全

分享一个可以实战的量化交易策略


  一个交易系统都有哪些元素?应该如何分辨交易系统的优劣?今天起,我将介绍一些有实战价值的量化交易系统,这些系统都经过了时间的沉淀,是可以盈利的系统,希望能给大家以启迪,帮助大家更好的盈利。
  首先明确几个要点:
  1、所有的技术指标都是价格变化的反映,指标是价格变化的结果,而不是原因,这就意味着再"好看"的指标,也随时有变脸的可能,要对任何指标随时保持警惕,而不是盲目的崇拜和信任。
  2、行情变化的根本在"人",所有的交易系统一定是有局限的:
  1)、时间局限:
  所有的交易系统一定有失效的时间,有些是开始有效,后来无效,最后又有效,比如某些追踪趋势或震荡的系统;有些是开始有效,随着变化效果越来越差,直至失效,比如某些复杂的量化交易策略。不同的只是在于有效和失效时间的长短和周期。
  2)、品种局限:
  客观来说,市场上的不同品种具有不同的走势特征,至少波动性和趋势性不会完全相同,这意味着一个交易系统不一定能适用于所有的品种,比如银行股和小盘股(所谓的小盘股"股性活")、期货里的工业品和农业品。
  或者再进一步,我们可以这样理解:同一个交易系统对不同的交易品种,有着不同的盈利和亏损的周期,这个周期可能很短:几周、几个月,我们能够熬过去;也可能很长:几年、十几年甚至几十年,这期间怎么交易怎么亏,完全不适合交易。这也是不能完全信任系统回测和参数优化的原因之一。所以在量化交易中,品种的选择至关重要。
  3)、执行的局限:
  对于执行交易系统的人来说,如果机械的执行交易系统,随着时间的流逝,有可能系统已经不适合当前的行情而不自知;如果对交易系统进行人为干预,又怎么能确定自己的干预一定符合当前的行情?这是一个两难的选择。
  3、任何技术指标和基于技术指标的交易系统,都不过是高开低收的计算+不同周期的前后平移,原理的相似导致共振很常见。一旦一个品种出现趋势行情,不同的趋势指标或系统会做出相同的反应,只是时间的先后而已。所以,要避免单纯以共振作为开平仓的依据(作为资金管理的一部分是可以的,比如根据信号出现的顺序分批开平仓以控制风险)。
  交易系统名称:基于k线中点突破高点均线的做多交易系统
  适用周期:日线、周线、月线
  原理:常见的突破往往以高低点或收盘价作为计算的依据,但如果把一根k视为一个整体,能够体现整体突破的,不是收盘价,而是整根k线的中值,因为中值的上移意味着价格中枢的上移。
  系统准备:
  1、计算前5日最高价的均线,并且向右平移一个单位,把这根均线命名为:Highma5。
  (假设当前k线为T,计算T-6日到T-1日的最高价均线。)
  2、 计算前5日最低价的均线,并且向右平移一个单位,把这根均线命名为:lowma5。
  (假设当前k线为T,计算T-6日到T-1日的最低价均线。)
  3、计算5日前k线中点的5日均线,命名为:Midprice5。
  (设当前k线为T,计算T-9日到T-5日每根k线的中点,计算出这五天中点的平均值)
  4、定义一根K线R,R要符合以下特征:
  1)、R的中点((HIGH+LOW)÷2)要高于T-1日的最高价。
  2)、R的振幅(HIGH-LOW)要大于T-1日的振幅。
  入手条件:
  如果K线R的收盘价高于Highma5,在下一个k线(T+1)以开盘价买入;。
  平仓条件:
  1)、入手后,5个K线内(T+5)以中轨均线Midprice5止损;
  2)、持超过5个K线后,用下轨均线Lowma5止损。
  系统源码
  { 名称: 基于K线中点突破高点均线的交易系统(做多) }
  AUTOFILTER;
  HMA5:REF(MA(H,5),1);{平移前一日的5日高点均线到当前K线}
  LMA5:=REF(MA(L,5),1);{平移前一日的5日低点均线到当前K线}
  MIDPRICE:=REF(MA((L+H)/2,5),5);{平移5日前的中点5日均线到当前K线}
  MIDR:=(L+H)/2;{当前K线中点}
  R:=H-L;{当前K线振幅}
  BUY((REF(C,1)>=REF(HMA5,1)) AND( MIDR>=REF(MIDR,1))AND (R>REF(R,1)),LOW);
  {假如前一天收盘价高于当前}
  SELL(LOW&lt;=midprice and=""""&gt;&lt;&gt;<!--=midprice-->
  SELL(LOW&lt;=lma and="""" buybars=""""&gt;5,HIGH);<!--=lma-->
  信号显示
网站目录投稿:巧之