知道通达信这个指标源码,怎样编出这个指标的选股公式?

2024-11-08 03:12:12
推荐回答(3个)
回答1:

通达信变量式表达为“:=”,通达信的输出表达式为“:”,也就是没有等号的变量就是输出。
选股公式时只允许有一个变量输出,输出的条件就是你要选股的条件,其它作图公式不能出现在选股公式中,因此上面的指标需要将所有作图公式,如STICKLINE,DRAWICON等需要删除或注释掉;另外,变量后面如果有COLORRED、COLORFFCC66、LINETHICK3等情况,也是不允许的。
通过上述,可知,要将指标转换成选股公式,则需把不需要的输出变成变量,加个等号就可以了,把作图公式注释掉,如果你觉得作图公式的条件才是选股公式,那么把它拿出来作为唯一的输出。

下面是以“条件”这个作为选股条件为例:

买:=IF("KDJ.J"<0,10,0);
条件:CROSS(9.9,买);
其它的部分没用上,可以不要了。

如果要以XXX这一项作为选股公式,则可以这样:

买:=IF("KDJ.J"<0,10,0);
条件:=CROSS(9.9,买);
VAR1:=(2*CLOSE+HIGH+LOW)/4;
VAR2:=LLV(LOW,5);
VAR3:=HHV(HIGH,5);
VAR4:=EMA((VAR1-VAR2)/(VAR3-VAR2)*100,5);
MA1:=MA(VAR4,2);
{AA:STICKLINE(VAR4>MA1,VAR4,MA1,6,1),COLORRED;}
{BBB:=STICKLINE(VAR4>MA1 AND REF(VAR4,1)<30,VAR4,MA1,6,1);}
{STICKLINE(VAR4<=MA1,VAR4,MA1,6,1),COLORFFCC66;}
{DRAWICON(CROSS(9.9,买),VAR4-12,4);}
{STICKLINE(CROSS(9.9,买),VAR4+5,MA1-4,6,1),COLORYELLOW;}
XXX:VAR4>MA1 AND REF(VAR4,1)<30;
加中括号部分是注释掉的部分,你也可以删掉。
望采纳!

回答2:

买:=IF("KDJ.J"<0,10,0);
条件:CROSS(9.9,买);

回答3:

W1:=C=HHV(C,20); W2:=BARSLAST(W1); W3:=IF(W2>0,REF(C,W2),REF(C,W2)); W4:=CROSS(C,REF(W3,1)); W4 AND COUNT(W4,5)=1;