您现在的位置:程序化交易>> 股票公式>> 大智慧>> 大智慧公式>>正文内容

DDY涨跌 动因修正指标 公式[大智慧公式]

 
 
 
 
这段代码绘制了涨跌动因指标,涨跌动因指标可以反映市场热度变化程度。该指标主要是通过多个指标计算来得出。

具体的操作建议,当涨跌动因指标处于高位的时候,说明市场热度较高,其股票的涨跌幅度也相对较大,此时可以选择逢高卖出;当涨跌动因指标处于低位时,说明市场活跃度不高,股票涨跌幅度也相对较小,此时可以选择逢低买入。
 

{DDY}
INPUT: P1(60,0,100),P2(3,0,100),P3(10,0,100);
REFLINE:0;
TODAY:=DYNAINFO(7)=C and DYNAINFO(10)=AMOUNT and (ORDER(1)=0 and ORDER(2)=0);
RDDY1:=IF(TODAY,"DDEDATA@BIGORDER"(1),bigorder(1));
RDDY2:=IF(TODAY,"DDEDATA@BIGORDER"(2),bigorder(2));
FDDY1:=IF(TODAY,"DDEDATA@ORDER"(1),ORDER(1));
FDDY2:=IF(TODAY,"DDEDATA@ORDER"(2),ORDER(2));
cxh0:=MIN(COUNT(ORDER(2),0),P1);
cxh1:=EMA((2 - BIGORDER(1) - BIGORDER(2)) * V/(ORDER(1) + ORDER(2)),P1);
cxh2:=(2*(2 - BIGORDER(1) - BIGORDER(2)) * V/(ORDER(1) + ORDER(2))+(p1-1)*ref(cxh1,1))/(p1+1);
cxh11:=if(TODAY,cxh2,cxh1);
DDY:if(TODAY,("DDEDATA@ORDER"(2) - "DDEDATA@ORDER"(1))/CAPITAL ,(ORDER(2) - ORDER(1))/CAPITAL) * cxh11 * 100,COLOR3D;
DDY1:EMA((FDDY2 - FDDY1)/CAPITAL * cxh11* 100,cxh0) * cxh0;
DDY2:MA(DDY1,P2);
DDY3:MA(DDY1,P3);
DRAWTEXTABS(0,0,'涨跌动因');
1,DOTLINE;
 

 


DDY中用了ema算法,但是理想数据是单个数据(只有当日数据,没有ema可言)。这就需要把ema解析后改写。
原公式:{lx-ddy}

 


INPUT: P1(60,0,100),P2(5,0,100),P3(10,0,100);
REFLINE:0;
TODAY:=DYNAINFO(7)=CLOSE and DYNAINFO(10)=AMOUNT and (ORDER(1)=0 and ORDER(2)=0);
{判断是否有理想数据}
RDDY1:=IF(TODAY,"DDEDATA@BIGORDER"(1),bigorder(1));
RDDY2:=IF(TODAY,"DDEDATA@BIGORDER"(2),bigorder(2));
FDDY1:=IF(TODAY,"DDEDATA@ORDER"(1),ORDER(1));
FDDY2:=IF(TODAY,"DDEDATA@ORDER"(2),ORDER(2));
VAR0:=MIN(COUNT(FDDY2,0),P1);
VAR1:=EMA((2 - RDDY1 - RDDY2) * VOL/(FDDY1 + FDDY2),p1);
DDY:(FDDY2 - FDDY1)/CAPITAL * VAR1 * 100,COLOR3D;
DDY1:EMA((FDDY2 - FDDY1)/CAPITAL * VAR1 * 100,VAR0) * VAR0;
DDY2:MA(DDY1,P2);
DDY3:MA(DDY1,P3);
DRAWTEXTABS(0,0,'涨跌动因');
1,DOTLINE;注意这句:
VAR1:=EMA((2 - RDDY1 - RDDY2) * VOL/(FDDY1 + FDDY2),p1);变成-----(用法:EMA(X,N),算法:若Y=EMA(X,N)则Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值):
VAR1:=EMA((2 - BIGORDER(1) - BIGORDER(2)) * VOL/(ORDER(1) + ORDER(2)),P1);
VAR2:=(2*(2 - BIGORDER(1) - BIGORDER(2)) * VOL/(ORDER(1) + ORDER(2))+(p1-1)*ref(VAR1,1))/(p1+1);
VAR11:=if(TODAY,VAR2,VAR1);
 修正ema后的公式:
{DDY}
INPUT: P1(60,0,100),P2(3,0,100),P3(10,0,100);
REFLINE:0;
TODAY:=DYNAINFO(7)=CLOSE and DYNAINFO(10)=AMOUNT and (ORDER(1)=0 and ORDER(2)=0);
VAR0:=MIN(COUNT(ORDER(2),0),P1);
VAR1:=EMA((2 - BIGORDER(1) - BIGORDER(2)) * VOL/(ORDER(1) + ORDER(2)),P1);
VAR2:=(2*(2 - BIGORDER(1) - BIGORDER(2)) * VOL/(ORDER(1) + ORDER(2))+(p1-1)*ref(VAR1,1))/(p1+1);
VAR11:=if(TODAY,VAR2,VAR1);
DDY:if(TODAY,("DDEDATA@ORDER"(2) - "DDEDATA@ORDER"(1))/CAPITAL ,(ORDER(2) - ORDER(1))/CAPITAL) * VAR11 * 100,COLOR3D;
DDY1:EMA(DDY,VAR0) * VAR0;
DDY2:MA(DDY1,P2);
DDY3:MA(DDY1,P3);
DRAWTEXTABS(0,0,'涨跌动因');
1,DOTLINE;

 

 

公式导入教程: 【通达信公式源码导入方法教程】 【同花顺公式源码导入方法教程】 【大智慧新一代公式源码导入方法教程

 

 

有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友

可联系技术人员 QQ: 262069696  点击在线交流或微信:cxhjy888 进行 有偿收费 编写!(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)

怎么收费,代编流程等详情请点击查阅!

(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)

 


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

相关文章

    没有相关内容