网页教程地址:
http://bbs.chzhshch.net/thread-10992-1-1.html
分笔分段公式其实是一个基础公式,非常接近的解决了缠论中比较难处理的笔段关系。 有了顶、底、笔段数据后,在此基础上,可写出相当多缠论的公式来。
在分笔分段公式基础上写公式有两种写法:
1为直接写普通公式,比较简单,适用与普通缠友.
2为再写一个新的dll,来调用基础chzhshch.dll,这个稍难,要有编程基础,但写起来自由
1.普通公式写法
以飞狐举例。
比如我们要写一个按笔统计成交量之和的公式
思路如下:
第一步:要找到所有笔的顶底(当然也可以用段的)
1.如何找出顶底呢?在分笔分段基础公式中,-1代表底,1代表顶,其余的数据都是0,所以我们找出-1或1就行了。 var1:=\ var2:=\ a1:barslast(var2<>0);
前面两行是调用分笔分段公式进行计算,第3行,就把所有的顶和底都到当前的距离找出来了。还不明白的,可以把上面三行放到附图,自己调试一下看看。
看光标位置,a1的值为12,所以a1到前一个顶或底的位置是12,但具体是顶还是底,我们还需要再观察一下。
再来一行代码 a2:ref(var2,a1);
这行代码的意思是取出前a1个位置,var2的数值,由于a1的值代表到前一个顶或底的位置,所以a2取出的的值,一定是-1或者1;
我们再放到附图观察一下。
仔细看,黄白线像脉冲形,它的值要么是是-1,要么是1
再仔细观察一下上图,好像不太符合使用习惯啊。 比如:
附图白线,它到前顶或前底的距离最小数值是0,但实际中啊有距离0的的啊。 上涨的一笔,对应附后图黄线的值是-1,下跌一笔,对应的数值是1。
所以我们把它要稍微调整一下。
var1:=\var2:=\
a1:=barslast(var2<>0); //这行换成:=号,不要显示出来,不然和后面的图缠在一起了,看不清。
a2:=ref(var2,a1); //这行换成:=号,不要显示出来,不然看不清。 aa1:ref(a1+1,1); aa2:-ref(a2,1);
效果如上图,这下好看了吧。
上涨的一笔,对应aa2的数据是1,下跌对应的-1.而aa1就代表了真实的到前顶或前底的距离。
基本数据有了,下面要进行第二步。
第二步:计算出所有顶底间的成交量之和。
先区分出上涨or下跌的成交量,正的表示上涨,负的表示下跌。
var1:=\var2:=\a1:=barslast(var2<>0); a2:=ref(var2,a1);
aa1:ref(a1+1,1); //到前顶或底的距离 aa2:-ref(a2,1); //上涨or下跌 vol,volstick;
zdvol:if (aa2>0,vol,-vol);//上涨或下跌的成交量