您现在的位置:程序化交易>> 期货公式>> 金字塔等>> 金字塔知识>>正文内容

为什么画不出线? [金字塔]

  • 咨询内容:

    CC:=(H+L)/2;

    DIRECTION:=CC-REF(CC,N1);
    VOLATILITY:=SUM(ABS(CC-REF(CC,1)),N1);
    ER:=ABS(DIRECTION/VOLATILITY);

    FSC:=2/(2+1);
    SSC:=2/(30+1); 
    SC:=ER*(FSC-SSC)+SSC;
    SCSQ:=SC*SC;

    IF BARPOS=1 THEN AMA:=CC;
    REFAMA:=REF(AMA,1);
    IF BARPOS>1 THEN AMA:=REFAMA+SCSQ*(CC-REFAMA);
    AMAVALUE:AMA,COLORWHITE;

     

    请教,上面这段代码,为什么画不出AMAVALUE这条白线?问题在哪里?先谢过了!

     

  • 金字塔客服:

    CC:=(H+L)/2;
    n1:=1;
    VARIABLE:ama=0;
    DIRECTION:=CC-REF(CC,N1);
    VOLATILITY:=SUM(ABS(CC-REF(CC,1)),N1);
    ER:=ABS(DIRECTION/VOLATILITY);

    FSC:=2/(2+1);
    SSC:=2/(30+1); 
    SC:=ER*(FSC-SSC)+SSC;
    SCSQ:=SC*SC;

    IF BARPOS=1 THEN AMA:=CC;

    IF BARPOS>1 THEN AMA:=AMA+SCSQ*(CC-AMA);
    AMAVALUE:AMA,COLORWHITE;

     

     

    做了这样的修改,就OK了,如果想要修改N1的话,按照下面思路做修改

    N1是多少很关键,N1是1,那么就需要定义barpso=1时AMA是多少,N1是2,那么就要定义barpos=1和barpos=2时,AMA是多少,N1是3时,就要定义barpos=1,barpos=2和barpos=3时,AMA是多少,以此类推

     

  • 用户回复: 以下是引用jinzhe在2013/9/30 10:51:32的发言:

    CC:=(H+L)/2;
    n1:=1;
    VARIABLE:ama=0;
    DIRECTION:=CC-REF(CC,N1);
    VOLATILITY:=SUM(ABS(CC-REF(CC,1)),N1);
    ER:=ABS(DIRECTION/VOLATILITY);

    FSC:=2/(2+1);
    SSC:=2/(30+1); 
    SC:=ER*(FSC-SSC)+SSC;
    SCSQ:=SC*SC;

    IF BARPOS=1 THEN AMA:=CC;

    IF BARPOS>1 THEN AMA:=AMA+SCSQ*(CC-AMA);
    AMAVALUE:AMA,COLORWHITE;

     

     

    做了这样的修改,就OK了,如果想要修改N1的话,按照下面思路做修改

    N1是多少很关键,N1是1,那么就需要定义barpso=1时AMA是多少,N1是2,那么就要定义barpos=1和barpos=2时,AMA是多少,N1是3时,就要定义barpos=1,barpos=2和barpos=3时,AMA是多少,以此类推

     

    多谢您的及时回复!也就是说,如果修改为下面这样,应该就可以通用了:

     

    VARIABLE:AMA=0;

    CC:=(H+L)/2;
    DIRECTION:=CC-REF(CC,N1);
    VOLATILITY:=SUM(ABS(CC-REF(CC,1)),N1);
    ER:=ABS(DIRECTION/VOLATILITY);

    FSC:=2/(2+1);
    SSC:=2/(30+1); 
    SC:=ER*(FSC-SSC)+SSC;
    SCSQ:=SC*SC;

    IF BARPOS=N1 THEN AMA:=CC;

    IF BARPOS>N1 THEN AMA:=AMA+SCSQ*(CC-AMA);
    AMAVALUE:AMA,COLORWHITE;

     

  • 网友回复:

    是的,如果原来的思路上最开N1个周期的AMA是这样定义的话,那么这样写就是对的了

     

  • 网友回复: 以下是引用jinzhe在2013/9/30 11:01:30的发言:

    是的,如果原来的思路上最开N1个周期的AMA是这样定义的话,那么这样写就是对的了

     

    谢谢!另外再请教,下面的白线和红线,画出来不一样,原因在哪里?

     

    VARIABLE:AMA=0;
    VARIABLE:AMA2=0;


    DIRECTION:=CC-REF(CC,N1);
    VOLATILITY:=SUM(ABS(CC-REF(CC,1)),N1);
    ER:=ABS(DIRECTION/VOLATILITY);

    FSC:=2/(2+1);       

    SSC:=2/(30+1);       
    SC:=ER*(FSC-SSC)+SSC;
    SCSQ:=SC*SC;    

     

    IF BARPOS=N1 THEN AMA:=CC;
    IF BARPOS=N1 THEN AMA2:=CC;
    REFAMA2:=REF(AMA2,1);
    IF BARPOS>N1 THEN AMA:=AMA+SCSQ*(CC-AMA);
    IF BARPOS>N1 THEN AMA2:=REFAMA2+SCSQ*(CC-REFAMA2);

     

    AMAVALUE:AMA,COLORWHITE;
    AMAVALUE2:AMA2,COLORRED;

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 1145508240  有需要帮忙请点击这里留言!!!进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容