通达信公式编写教程完整版(47页较紧凑可打印) 

放量
1、今日比昨日的成交量放大了1倍: VOL/REF(VOL,1)>2;

2、今日的五日均量比五天前的五日均量放大了3倍: AA:=MA(VOL,5); BB:=REF(AA,5); AA/BB>4;
3、今天的成交量达到了整个流通盘的10%以上: VOL/CAPITAL>10/100;(注意,10%的表达式是10/100,或者0.1)

成交量缩小

1.2 缩量
1、今日比昨日的成交量缩小了1倍: VOL/REF(VOL,1)<0.5;
2、今日的五日均量比五天前的五日均量缩小了一半:

AA:=MA(VOL,5);

BB:=REF(AA,5);

AA/BB<0.5;

3、今天的成交量不足整个流通盘的0.5%:

VOL/CAPITAL<0.5/100;

上涨
1、今日涨幅达到了7%以上:

CLOSE/REF(CLOSE,1)>1.07;

2、十日均价继续上涨:

AA:=MA(CLOSE,10);

BB:=REE(AA,1);

AA>BB;

收阳、收阴:

1、当天收阳:

CLOSE>OPEN;

2、当天收阴:

CLOSE<OPEN;

高开、低开
1、当天股价高开,即开盘高于昨日收盘:

OPEN>REF(CLOSE,1);

2、当天股价低开:

OPEN<REF(CLOSE,1);

跳空亦有向上和向下两种:

当日开盘在昨日最高之上,即为向上跳空:

OPEN>REF(HIGH,1);

反之,开盘小于昨日的最高价,为向下跳空:

OPEN<REF(LOW,1);

放量上攻
AA:=VOL/REF(VOL,1)>2;{成交量是昨日的两倍}

BB:=CLOSE/REF(CLOSE,1)>1.07;{涨幅大于7%}

AA AND BB;

高开高走
AA:=OPEN>REF(CLOSE,1);{开盘价大于昨收}

BB:=CLOSE>OPEN;{当日收阳线}

AA AND BB;

创新高
创新高指当日最高价是最近一段时间的最高价:

HIGH=HHV(HIGH,N);

其中的HIGH为当期最高价,HHV(X,N)是求N周期内X最高值。

因此该公式的含义是当日最高价创N日新高时返回值为1,否则为0。

横盘整理
横盘整理指最近一段时期价格在一定幅度之内摆动:

(HHV(CLOSE,10)-LLV(CLOSE,10))/CLOSE<0.05;

其中的LLV(X,N)是求N周期内X最低值。因此该公式表示10日收盘价振幅振幅在5%以内。

2. 公式组合实例
下面介绍如何对基本公式进行组合,描述一些简单的K线形态。在编写公示前,需要准确对K线形态进行定义。

2.1 向上跳空之后两天内并未回补.

定义:实际上就是昨天发生了跳空缺口,这两天的最低价一直在两天前的最高价之上。

AA:=REF(OPEN,1)>REF(HIGH,2);

BB:=REF(LOW,1)>REF(HIGH,2);

CC:=LOW>REF(HIGH,2);

AA AND BB AND CC;

仔细一想,若BB成立,AA一定成立,AA实际上没有存在的必要。更简单的方法,

下面的一句话可以的上面的四句:

COUNT(LOW>REF(HIGH,2),2)=2;

2.2 5日,10日,30日均线多头排列

定义:均线多头排列,是指从短周期到长周期均线,从上而下的依次排列

AA:=MA(CLOSE,5);

BB:=MA(CLOSE,10);

CC:=MA(CLOSE,30);

T1:=AA>BB AND BB>CC;

以上情况维持一段时间,假设我们这里定为4天以上:

COUNT(T1,4)=4;

COUNT(X,N)

表示统计在N天内满足条件X的有几天。最终的结果就是如下所示:

AA:=MA(CLOSE,5);

BB:=MA(CLOSE,10);

CC:=MA(CLOSE,30);

T1:=AA>BB AND BB>CC;

COUNT(T1,4 )=4;

2.3逃顶K线形态之--黄昏之星

定义:当市场出现一条大阳线后,通常会产生跳空高开的情况,有时便会出现十字星或类似十字星的小阴线(小阳线),当该形态出现在一段上升行情的当中,就很容易形成经典K线形态--黄昏之星。为了结构简单起见,首先将二天的高开低收用中间表达式表达出来,因为我们在后面的编写过程中会分别使用到这些数据。

1、今日K线的:

开-a1, a1:=open; 收-a2, a2:=close; 高-a3, a3:=high;

2、昨天K线的:

开-b1, b1:=ref(open,1);

收-b2, b2:=ref(close,1);

高-b3, b3:=ref(high,1);

低-b4, b4:=ref(low,1);

3、前天K线的:

开-c1, c1:=ref(open,2);

收-c2, c2:=ref(close,2);

高-c3, c3:=ref(high,2);

低-c4, c4:=ref(low,2);

4、我们将会分别描述出三天的K线形态,然后汇总,首先我们观察今日K线的特征,今天是一根低开低走的大阴线,我们给它一些数字上的定义:

a、今日开盘价小于昨日收盘价:

aa:=a1<b2 and b、今日的阴线实体较长,我们用开盘价和收盘价相比,长度大于4%:a1/a2>1.04; 5、昨日K线的特征,是一根十字形态的K线,并且在左右两根K线之上,分别表达为: a、昨日跳开,高于前天的收盘: bb:=b1>c3

b、昨日收盘同样在缺口之上:

and b2>c3

c、线形实体长度很小,也就是昨日开盘和收盘之差比昨日开盘的值小于0.01:

and abs(b1-b2)/b1<0.01

d、K线有上下影线,可以表示为最高价和最低价不等于收盘价也不等于开盘价:

and b3>b1 and b3>b2 and b4<b1 and b4<b2

e、当日的最高价为20天以来的最高价:

and b3=hhv(high,20);

6、前日K线的特征:

股价大幅上扬,幅度较前一日收盘高出4%并且收盘大于开盘:

cc:=c2/ref(close,3)>1.04 and c2>c1;

综合选股条件:

最后我们将三天的K线特征结合起来,合成一个最后的条件就是由图所示内容: aa and bb and cc 最终结果就是(可以直接加进通达信公式编辑器):

a1:=open;

a2:=close;

a3:=high;
b1:=ref(open,1);

b2:=ref(close,1);

b3:=ref(high,1);

b4:=ref(low,1);

c1:=ref(open,2);

c2:=ref(close,2);

c3:=ref(high,2);

c4:=ref(low,2);

aa:=a11.04;

bb:=b1>c3 and b2>c3 and abs(b1-b2)/b1<0.01 and b3>b1 and b3>b2 and b4

cc:=c2/ref(close,3)>1.04 and c2>c1;

aa and bb and cc;

如果我们想把这个选股公式改为指标公式,修改最后一个语句就可以了。将aa and bb and cc; 改为DRAWICON((AA AND BB AND CC),HIGH*1.02,2);

黄昏之星是一个卖出信号,与之相对应的是一个买入信号,称为早晨之星:

指标源码请参考通达信中的相关选股公式。(省)

2.4突破底部横盘整理创新高

定义:股价突破长期盘整区间,之后放量上攻进入主升段。“长期”设定为150天;“横盘”设定股价在150日均线上下15%波动;放量;并且股价创下150天以来的历史新高。

首先用公式描述放量

a、将会使用5日均量来进行比较,成交量比昨日成交量放大两倍;

b、V1是五日均量,REF(V1,1)就是昨日的均量;

V1:=MA(VOL,5);

V2:=VOL/REF(V1,1)>2;

长期横盘

a、PZ1是当天150日均价:

PZ1:=MA(CLOSE,M);

b、PZ2是150日的最高价;

PZ2:=HHV(HIGH,M);

c、PZ3是150日的最低价;

PZ3:=LLV(LOW,M);

d、PZ4是150日的最高价和150日均价的距离的百分比,PZ5刚好相反是最低价和均价的差的百分比; PZ4:=(PZ2-PZ1)/PZ1; PZ5:=(PZ1-PZ3)/PZ1;

e、设为股价在150日均线上下15%波动,也就是PZ4、PZ5都小于0.15; PZ:=REF(PZ4,1)<0.15 AND REF(PZ5,1)<0.15; 3、今天创下历史新高,也就是今天的最高价是150天内的最高价! TP1:HHV(HIGH,M); TP:=HIGH=TP1;

综合三个条件的最后的逻辑判断式就是我们的最后结论: V2 AND PZ AND TP(参数M=150天)

最终结果就是:

(参数M=150天)

V1:=MA(VOL,5);

V2:=VOL/REF(V1,1)>2;

PZ1:=MA(CLOSE,M);

PZ2:=HHV(HIGH,M);

PZ3:=LLV(LOW,M);

PZ4:=(PZ2-PZ1)/PZ1;

PZ5:=(PZ1-PZ3)/PZ1;

PZ:=REF(PZ4,1)<0.15 AND REF(PZ5,1)<0.15;

TP1:HHV(HIGH,M);

TP:=HIGH=TP1;

V2 AND PZ AND TP;

注意:如果源码加入到公式编辑器后显示错误,请多注意标点符号,需要将中文模式下的标点改成英文模式下的标点,例如:“:”改成“:”, “,”改成“,”以及括号等等。

(0)

相关推荐