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

海龟交易法则之极简的开仓条件

(2019-07-02 11:06:52)
标签:

海龟交易法则

  在金融市场的二级市场交易中盈利是一场和人性的战争,这个过程中要不断克服贪婪、恐惧的人性弱点,说的容易实际却很难做到,如果你在交易过程中依赖自己的判断,你的内心会受到反复煎熬。QR社区告诉我们,依赖一种或者多种特定的策略来帮助我们制定规则、跟随规则去交易,这种方法可以帮助我们消除掉很多不确定性,有助于我们在交易市场的惊涛骇浪之中更加容易地生存下去。

  接下来是一段来自文华财经的海龟交易法则的代码实例:

  //该示范主要用海龟交易法则,演示“头寸计算,最大仓位控制等资金管理”的编写方法

  //该模型仅仅用来示范演示使用,依此入市,风险自负。

  TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));//真实波幅

  ATR:=MA(TR,26); //求26个周期内真实波幅的简单移动平均

  //TC:=INTPART((MONEYTOT*0.01/(0.5*ATR)));//根据权益的1%计算下单手数

  TC:=INTPART((MONEYTOT*0.01/(0.5*ATR)));//根据权益的1%计算下单手数

  //MTC^^4*TC; //总的持仓头寸:

  MTC:=INTPART((MONEYTOT*0.01/(UNIT*ATR)));//根据权益的1%计算下单手数

  HH:HV(H,20);

  LL:LV(L,20);

  CROSSUP(C,HH)&&ISLASTBK=0&&ISLASTSK=0&&BARPOS>=26,BK(TC);//最新价超过20周期的最高值,首次买入开仓,手数为TC手

  CROSSDOWN(C,LL)&&ISLASTBK=0&&ISLASTSK=0,SK(TC); //最新价跌破20周期的最低值,首次卖出开仓,手数为TC手

  //C>=BKPRICE+0.5*ATR&&BKVOL<="">

  //C<=SKPRICE-0.5*ATR&&SKVOL<="">

  C<=(BKPRICE-2*ATR)&&BKVOL>0,SP(BKVOL);//最新价小于开仓价减去2倍的ATR,止损平仓

  C>=(SKPRICE+2*ATR)&&SKVOL>0,BP(SKVOL); //最新价大于开仓价加上2倍的ATR,止损平仓

  CROSSUP(H,HV(H,10))&&SKVOL>0,BP(SKVOL);//最高价上穿10周期最高价,平仓

  CROSSDOWN(L,LV(L,10))&&BKVOL>0,SP(BKVOL); //最低价下穿10周期的最低价,平仓

  TRADE_AGAIN(10);

  海龟交易法则之极简的开仓条件

  QR量化投资中提到,海龟交易法则是一种十分常见的交易策略,也是一个完整的交易系统,覆盖了交易的各个方面,并且不给交易员留下一点主观想象决策的余地。它具备一个完整的交易系统的所有成分。海龟交易法则的一大特点是其极简的开仓条件。一般开仓条件越复杂,整个策略在进仓时需要考虑的复杂性就会越高,虽然多维度的信号同时满足开仓条件可以增加交易盈利的概率,但是也会带来策略不稳定性的增加。在此,我们就来简要介绍下海龟交易法则极简的开仓条件。

  文华海龟交易法则开仓部分代码:

  CROSSUP(C,HH)&&ISLASTBK=0&&ISLASTSK=0&&BARPOS>=26,BK(TC);//最新价超过20周期的最高值,首次买入开仓,手数为TC手

  CROSSDOWN(C,LL)&&ISLASTBK=0&&ISLASTSK=0,SK(TC); //最新价跌破20周期的最低值,首次卖出开仓,手数为TC手

  一个完整系统的成分:

  一个完整的交易系统包含了成功的交易所需的每项决策:

  1. 市场——卖卖多少

  2. 头寸规模——卖卖多少

  3. 入市——何时买卖

  4. 止损——何时退出亏损的头寸

  5. 离市——何时退出盈利的头寸

  6. 策略——如何买卖

  海龟交易法则的开仓信号只会根据价格是否创新高、创新低而产生,信号的参数只有一个,即创新高、创新低的时间窗口,这一点比大多数均线策略还要简单。有人会问,如何定义“简单”两字呢?宽客相对论认为定义一个开仓条件是否简单还是复杂的标准,是看它需要计算的参数的个数有多少。海龟交易法则中,开仓条件是根据前N天的最高价和最低价来决定,因此只有一个参数N,而大多数的均线策略的开仓条件都需要计算2到3个参数,比如MACD、KDJ、等。

  举个例子,如图,交易员常用的MACD指标在生成买卖开仓信号的过程中,需要三个参数:SHORT, LONG和M,因此需要同时确定三个参数的数字,才可以生成开仓信号。

  文华中MACD指标选股的公式代码:

  DIFF:= EMA(CLOSE, SHORT) - EMA(CLOSE, LONG);

  DEA:= EMA(DIFF, M);

  CROSS(DIFF, DEA), SELECT; //选出DIFF上穿DEA的股票

  再来看KDJ,同样的,也是有三个参数作为开仓信号来计算:

  RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;

  K:=SMA(RSV,M1,1);

  D:=SMA(K,M2,1);

  J:=3*K-2*D;

  CROSS(J,0), SELECT; //选出J值上穿0轴的股票

  而海龟交易法则在计算开仓信号时,只有一个参数。并且由于是根据前N个周期创新高、创新低开仓,因此开仓信号的变更频率也可以根据参数N来控制。如果将N设大一些,则不会出现每天都有开仓信号、信号闪烁导致来回亏钱、并且多付出手续费和滑点成本的问题,这一点显示了其和均线策略对比之后的优点,并且在QR量化社区中也有所提及。

0

阅读 收藏 喜欢 打印举报/Report
  

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

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

新浪公司 版权所有