两条线交叉 . 函数:CROSS
用法:
CROSS(A,B)表示当A从下方向上穿过B时返回1,否则返回0
例如:
CROSS(MA(CLOSE,5),MA(CLOSE,10))表示5日均线与10日均线交金叉
打开【指标公式编辑器】在编辑区自定义两条均线,比如5、10均线:
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
{然后下面来做交叉定义:}
金叉:CROSS(MA5,MA10);{MA5向上交叉MA10,通常称之为金叉}
死叉:CROSS(MA10,MA5);{MA10向上交叉MA5,通常称之为死叉}
均线交叉
知识点:在通达信公式编写中 { }中的内容可以写在公式中,只是起到备注的作用,不会输出任何数据。
好,写好公式名称,选择主图叠加,测试通过保存,回到K线图中,输入公式名称调出指标:
图中发现,在金叉死叉时候,K线主图的下边框凸起尖角,把K线压缩到上部,非常不好看也不习惯。这是因为当MA5(10)从下方向上穿过MA10(5)时返回1,否则返回0。如果我们想不让他显示返回的1,但又可以在主图上标识出来怎么办呢?这里就要用到两个函数:NODRAW和DRAWICON。
NODRAW就是不画,不画出数值,没有参数。
DRAWICON绘制小图标.
用法:
DRAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标(TYPE为1--46).
现在在刚才的代码下加上绘制小图标的代码:
DRAWICON(金叉,L,1);
DRAWICON(死叉,H,2);
第一句解释为:当满足“金叉”条件时,在“L”最低价的位置,画“1”号图标;
第二句解释为:当满足“死叉”条件时,在“H”最高价的位置,画“2”号图标。
现在整段代码为:
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
{然后下面来做交叉定义:}
金叉:CROSS(MA5,MA10),NODRAW;{MA5向上交叉MA10,通常称之为金叉}
死叉:CROSS(MA10,MA5),NODRAW;{MA10向上交叉MA5,通常称之为死叉}
DRAWICON(金叉,L,1);
DRAWICON(死叉,H,2);
保存,回主图,K线图正常了,且在金叉死叉位置也标注了我们要的图标。如下图:
如果显示多条均线的交叉点,则需要用到OR函数,OR或者的意思,OR的前后要用空格隔开。
下面我自定义多条均线,选择了两条均线的交叉举例:
代码:
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
MA20:MA(CLOSE,20);
MA60:MA(CLOSE,60),COLORRED,LINETHICK2;
金叉:CROSS(MA5,MA10) OR CROSS(MA10,MA60),NODRAW;
死叉:CROSS(MA10,MA5) OR CROSS(MA60,MA10),NODRAW;
DRAWICON(金叉,L,1);
DRAWICON(死叉,H*1.02,2);
保存,回主图,可以看到在MA5与MA10金、死叉MA10与MA60金、死叉的地方都有小图标,我们还可以在图标位置的地方乘以系数来定义图标的高度,比如H*1.02,表示在高于最高价的1.02出画图标。