通达信主力筹码选股器(主力筹码选股公式)
写代码,编选股器,离不开函数表达式,这里,我先给大家介绍一些跟筹码相关的一系列通达信函数,在写相关指标或选股器之前,必须把它们的含义弄明白。
通达信筹码6大函数
1 函数:WINNER(CLOSE)
说明:获利盘比例
用法:WINNER(CLOSE),表示以当前收市价卖出的获利盘比例,该函数仅对日线分析周期有效
例如:返回 0.1 表示 10%获利盘;
WINNER(10.5)表示 10.5 元价格的获利盘比例。
2 函数: COST (X)
说明:成本分布
用法:COST(X) 表示 X%获利盘的价格是多少
例如:COST(10),表示 10%获利盘的价格是多少,即有 10%的持仓量在该价格以下,其余 90%在该价格以上,为套牢盘 该函数同样仅对日线分析周期有效。
上面这两个函数其实是数学里面说的一对反函数。另外还有下面一些相关的函数。
3 函数:COSTEX(A,B)
说明:区间成本
用法:COSTEX(A,B),表示两日收盘价格间筹码的成本
例如:COSTEX(CLOSE, REF(CLOSE)),表示近两日收盘价格间筹码的成本.
返回 10 表示区间成本为 10 元。
4 函数:PWINNER(N,X)
说明:远期获利盘比例
用法:PWINNER(N,X) 表示 N 天前的那部分成本以当前收市价卖出的获利盘比例
例如:PWINNER(5,CLOSE),表示 5 天前的那部分成本以当前收市价卖出的获利盘比例,例如返回 0.1 表示 10%获利盘.该函数仅对日线分析周期有效。
5 函数:LWINNER(N,X)
说明:近期获利盘比例
用法:LWINNER(N,X) 表示最近 5 天的那部分成本以当前收市价卖出的获利盘比例
例如:LWINNER(5,CLOSE),表示最近 5 天的那部分成本以当前收市价卖出的获利盘比例,例如返回 0.1 表示 10%获利盘.该函数仅对日线分析周期有效。
6 函数:PPART(N)
说明:远期成本分布比例
用法:PPART(N) 表示 N 天前的成本占总成本的比例
例如:PPART(10),表示 10 前的成本占总成本的比例,返回 0.2 表示 20%。
那么,怎么利用上面的函数来设计一个低位单峰密集筹码形态的选股器呢?这个选股器代码是由“低位”代码+“筹码单峰密集”代码组合,关于低位的,我们算法思路有很多,拿我们前面讲过的 300792 壹网壹创来讲,如下图:
这票最近一年365天中的最低价至今的天数就在附近一段时间内,代表股价跌了一年多,创了一个一年中的最低价,最近由于资金的介入,从底部慢慢爬起。通常情况,一个主力做庄是需要20天到60天左右,视股本大小而定。也就是一个月到3个月左右,我们可以设置最低价距今的天数大于20天。可以使用下列代码:
E1:=LLV(L,250);
E2:=BARSLAST(E1);
E:=IF(E1 gt;20,1,0);
上面这个函数就是1年365年中大概率有250个交易日,最低价距今的周期数大于20天的表达式。相应逻辑就是一支股票跌出新低后,主力资金介入,股价止跌,底部抬升,主力吸筹至少花了20天以上时间,吸筹期间主力可以上下震仓,最低点至今周期会越来越远。所以这里我不设上限,也就是不设E1小于多少天,只设个大于多少天。但是这里有个漏洞,对于一些高位横盘整理时间很长(超过一年时间)的高位股票要失效。我们可以设个最高价的算法,比如近60天的最高价的50%涨幅小于近2年的最高价的算法HHV(H,60)*1.5 lt;HHV(H,500)函数表达式来淘汰这些长期高位震荡股票。于是上面算法可以整理成下面词句:
E1:=LLV(L,250);
E2:=BARSLAST(E1);
E:=IF(E1 gt;20,1,0) and HHV(H,60)*1.5 lt;HHV(H,500) ;
写完“低位”的算法,我们再来写“筹码单峰密集”代码,其实你若把一支股票单峰密集筹码形态逆时针旋转90度,你会发现它很像数学里的正态分布函数,如下,如果你想用正态分步函数来表达,需要用通达信软件去调用外部编写的DLL编译函数,这里有点复杂,我们就用通达信自己的函数来设计个“筹码单峰密集”的选股器!
筹码图中,如上图平均成本为55.35元,其实这个价格就是在筹码图中间最高峰附近,这个位置的获利比利一般超过50%以上。我们可以用ROUND(COST(50)*100)/100表达式来近似表达筹码的平均成本,其实你把50数值改成60数值也是可以的,ROUND(COST(60)*100)/100跟ROUND(COST(50)*100)/100两者结果其实差不多,两者都在上面筹码图中间的那座最高峰附近,也就是大部分筹码(超过50%)集中分布的区域,其中Round函数是通达信的四舍五入函数,COST(X)函数表示 X%获利盘的价格,很多人喜欢买在主力拉升前,而单峰密集筹码形态的股票拉升前一般收盘价会在平均成本的上方,大概在20个涨幅点内,这个位置是主力在尝试突破的位置。我们可以用下列函数来表示:
P1:=ROUND(COST(50)*100)/100;
P2:=C lt;P1*1.2 AND C gt;P1;
上面讲过一个主力做庄是需要20天到60天左右,筹码要高度集中,集中在60个周期里面,我们可以设置60周期以外只有很少的筹码,也是就长期的套牢盘相对较少,这样主力拉升相对轻松点,我们可以用下列代码函数PPART(X) 表示,下面PPART(60) 表示 60天前的成本占总成本的比例小于15%,即
Q:=PPART(60)*100 lt;15;
上面讲过COST(X) 表示 X%获利盘的价格是多少,比如COST(15) 表示15%获利盘的价格,即有15%的持仓量在该价格以下,也就是相当于从今天收盘价往下移,移到有10%筹码比例,这部分称为10%的持仓获利盘,我们可以用COST(85)来表达85%的筹码获利的价格线 ,再用COST(15)来表达15%的筹码获利的价格线,那么两者之差就是中间的获利价格区域 。
这个价格区域越窄表示筹码越集中,它包含于筹码单峰密集区域里面,可以想像如果两者之间的差值等于0时,那么筹码分布不就是一条线吗?也就是大家都在同一价格处买入,当然现实中这是不可能的,这只是一个理想情况,假设当它等于0时,它不就等于我们上面提到过的平均成本吗?于是可以用个比例函数来表达,即(COST(85)-COST(15))/P1)*100=0,为了灵活运用选股公式,我们可以用M来代替0,即“筹码单峰密集”代码为(COST(85)-COST(15))/P1)*100=M,M取值范围在0到100之间,我们可以自己设置,M数值设置越小,代表筹码单峰越密集,当然选出的股票个数就越少,通常个人认为设置在20到35之间较为合理,因为正常情况下,一个“筹码单峰密集”股票主力建仓区是会上下浮动15个点左右,浮动价格范围区相对于平均成本也就差不多30个点范围内。于是可以把上面的函数统统整理成下面代码函数:
E1:=LLV(L,250);
E2:=BARSLAST(E1);
E:=IF(E1 gt;20,1,0) AND HHV(H,60)*1.5 lt;HHV(H,500);
P1:=ROUND(COST(50)*100)/100;
P:=C lt;P1*1.2 AND C gt;P1;
Q:=PPART(60)*100 lt;15;
R:=((COST(85)-COST(15))/P1)*100 lt;M;
E AND P AND Q AND R;
上面选股器函数中,你也可以把R函数改写成R:=((COST(90)-COST(10))/P1)*100 lt;M; 相当于把获利区间范围扩大了,里面的M,需要自己去设置调试,如下,个人把它设置成20,用它选下股票来验证下所选出的股票是不是低位单峰密集筹码的股票。
试问这8支股票哪支不属于低位单峰密集筹码形态?自已可以试试!
此文仅为通达信代码编程技术研究,上面选出的各股不构成任何实际买卖操作建议!股市有风险,投资需谨慎!