这几时的公式写了十八篇了。很多公式在我举的例子上都有在主图上有所显示。这两天问的人多了起来。即如何把这个公式输出结果显示在K线图上。
要把公式的结果体现在K线图上,首先我们得了解一下通达信系统内部的处理架构。任何公式的输出,对于通达信的主图来说,都是一个数值,逻辑判断的输出就是1和0,而其他的输出,则是按你输出的数值。比如我们很多公式要么是按市值大小排序,要么是按45天低点涨幅来排序,象这些输出数值要么是非常大几百几千上万。要么就是一点多或者零点几。而对于通达信主图来说,它的正常显示区间就是在这个区间内股票高低点的范围,比如一只股票30块,主图区间显示120天。这只股票120天高点是45,低点是20.那这只股票在这个主图上正常范围就是20到45.这时你输出一个逻辑判断,或者一个1000多的值。这个图形就立刻被压缩得不能看了。也就失去了输出的意义了。
输出在主图上的有的是直接可以输出一条线,比如白线。这种就比较好理解。但如果是一些信号的话。我们就要用到一些函数了。比如说我们上次提到的小碎步。我们是超过50就入选,那么如果超过50我们就在主图上显示一个手机的标志。通达信有41个标志,有一个函数是专门画标志的。
如何在主图上体现选股公式结果?如何捕捉黑马股?附公式
你们感兴趣的话可以写一个DRAWICON(1,H*1.03,1{1-41});把最后一个1从1换到41,看看每个不一样的图标是什么。然后根据自己喜好,方便记忆来挑各个信号的图标。比如我们小碎步用手机的图标,而空中接力则用B和钱袋子的图标。没有固定格式,习惯就好。
现在学习了这个函数了,我们来写一下小碎步的信号:
DRAWICON(CURRBARSCOUNT<=200 AND SYS_小碎步>=50
AND COUNT(SYS_ZB,BARSLAST(C<REF(C,5))+1)=0,H*1.03,20);
这个函数解释一下的意思就是,如果当天的K线离今天的K线在两百天以内(你也可以不要这一句,那就变成这只股票上市以来只要有小碎步就都画出来,也可以把200改成30,只画30天内出现的小碎步,这个主要是用来让系统少画一点,少算一点,这样用起来快一点),如果小碎步的分值大于等于50,如果五天线上升区间内没有板过,则在最高价*1.03的位置,画一个序号为20的图标(就是小手机了)。这里面扯到两个自己编的函数,一个是sys_小碎步,一个是sys_zb.就不再写了,你们自己去前面的文章里翻。画出来就是下面的样子:
天茂集团走势图
你们也可以举一反三,按这个格式,把各种各样的公式信号都写出来。象上面这个图,里面就是空中接力(B和钱袋子),强势股(向上的红箭头),小荷(30天线上的1234),白线,均线之上(1313),五天线二(14),分水岭(黄的柱子)。我们选股靠的是排名。这些信号是让你看到股票时一目了然。很多股票屏幕干干净净的,就是什么买入信号都没有,自然没有操作的意义了。再举例一下我们的五天线二,输出的是日期,如果今天是输出26天,那股票股价是10块,直接输出,屏幕就乱套了。所以你要加上一个转换判断语句。按上面的格式:
DRAWICON(CURRBARSCOUNT<=200 AND 五天线二>=13,H*1.03,1);自己看看在主图输出是什么。
主图里还可以输出文字,数字。这个在讲小荷时再说。
抢反弹并不是单纯为了短期小利,而是应该更积极一些。通过对较弱市场的研究,发现后市的黑马股可能更有意义。大黑马选股公式总结如下:
RV:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
RG:=(CLOSE-LLV(LOW,5))/(HHV(HIGH,5)-LLV(LOW,5))*100;
J0:=(HIGH+LOW)/2;QJ:=EMA(J0,3);
J1:=IF(CLOSE>QJ,VOL,0);
J2:=IF(CLOSE<QJ,VOL,0);
量能:=IF(CAPITAL<1,MA(VOL,74),MA(SUM(J1-J2,22),3));
趋势:=IF(CAPITAL<1,EMA(量能,360),EMA(量能,21));
VAR3:=(量能-趋势);
VAR44:=SMA(RV,3,1);
VAR55:=SMA(VAR44,3,1);
KK:=EMA(SMA(RG,3,1),2);
DD:=SMA(KK,3,1);
共振点:=(CROSS(VAR44,VAR55) AND CROSS(KK,DD));
TTJ1:=共振点;
VAR200:=(CLOSE-LLV(LOW,20))/(HHV(HIGH,20)-LLV(LOW,20))*100;
VAR300:=SMA(SMA(VAR200,3,1),3,1)/28.57;
VAR400:=EMA(VAR300,5);
操盘:=3*VAR300-2*VAR400;
TTJ2:=CROSS(操盘,VAR300) AND VAR300<2.1 AND C>O;
大黑马:COUNT(TTJ1 OR TTJ2,2)=2;