您现在的位置:程序化交易>> 股票公式>> 通达信>> 通达信知识>>正文内容

还剩下一段源码没有写出了,再度请贤!万分感谢!! [通达信]

  • 咨询内容:

    本人有幸请来好心人(intdx老师)写出了80% 的源码,还剩下一段没有写出了,再度请贤!万分感谢!!

    a:=llvbars(dif,barslast(cross(dea,dif))+1);
    b:=backset(cross(dif,dea) and dif<0,a+1);
    d:b>ref(b,1);

    以上公式欠缺的是

    想定义最近dif金叉dea维持3天以上不死叉,金叉前的死叉也维持3天以上不金叉。

    望高人进行补充这个条件进去限制结果D的输出!!

     

    例子如600836

    12月28号有一个信号标记

    现在却小的定义是发生在接下来的1月10号的金叉一直维持到3月16号的dif死叉dea,共维持了45个交易日,大于等于3天(满足我却小的条件)

    而1月10号的金叉前面2011年的11月28号是最靠近1月10号金叉的一个死叉,这个死叉到1月10日共30个交易日,同样大于等于3天(满足我却小的条件)

     

    上面2个条件希望用来限制D的输出而新加入的条件!!!

     

    我只差这个条件就能把成品公式组合好,希望贤能者出手帮忙,再次感谢!!!

     

  • 通达信技术部:

    是这个意思吗:

    在0轴下金叉,且该金叉距前一个死叉和距下一个死叉都在3天以上。

     

    s:=barslast(cross(dea,dif));
    j:=cross(dif,dea) and dif<0 and s>=3 and barsnext(cross(dea,dif))>=3 ;

    a:=llvbars(dif,s+1);
    b:=backset(j=1,a+1);
    d:=b>ref(b,1);

     

    注:如果是最后的金叉(后面还无死叉)则也排除在外.

     

  • 通达信客服:

    s:=barslast(cross(dea,dif));
    j:=cross(dif,dea) and dif<0 and s>=3 and

        (barsnext(cross(dea,dif))>=3 or barsnext(cross(dea,dif))=drawnull and currbarscount>=3);

    a:=llvbars(dif,s+1);
    b:=backset(j=1,a+1);
    d:=b>ref(b,1);

     

  • 网友交流:

    3楼,如果是最后的金叉(后面还无死叉)则若过了3天也算了。

     

    另,是>=3或>3,你自己改。

     

  • 网友交流:

    谢谢intdx老大再次出手,人实在是太好了,比其他什么理想啊创幻的人都要好,技术要高!

    看了老师的语段,我重新想了想,要不这样理解:

    最原始的公式如下:

    DIF:=EMA(CLOSE,12)-EMA(CLOSE,26);
    DEA:=EMA(DIF,9);
    A:=LLVBARS(DIF,BARSLAST(CROSS(DEA,DIF))+1);
    B:=BACKSET(CROSS(DIF,DEA) AND DIF<0,A+1);
    D:B>REF(B,1);

    输出的是信号D!我现在想限制D是:在最近10天里面,如果D信号有2个或者2个以上,我就取DIF值最低的一天的D值,然后保留这个D信号,这10天内其余的1个或者1个以上的D值全部给过滤掉,意思是10天内不会有第二个D信号,而这个D信号如果出现了,当天就是10天的DIF的最低值(LLV(DIF,10)),这样好理解多了!!!

    希望intdx老大好人好报!!

 

如果以上指标公式不适用于您常用的行情软件

或者您想改编成选股公式,以便快速选出某种形态个股的话,

可以联系我们相关技术人员 QQ: 262069696  点击在线交流进行 有偿 改编!

 


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

相关文章

    没有相关内容