改成逐k线模式,runmode:0,
序列只计算最后k线,逐k线计算每一根k线
版主早上好,我的疑惑是:
我把公式写成这样:
RUNMODE:1;
ma10:=ma(c,10);
ma30:=ma(c,30);
IF(ma10>ma30,1,5);
序列只解析最后k线,如下图
1.最后一根K线时,ma10是小于ma30的,按最后一根K线计算的话,副图公式tt应该一直输出的是5.可实际上不是,是按ma10是大于或小于ma30分别输出1或5的
2.而且上面的公式改成逐K输出没有任何变化,就是说这个公式序列和逐K没任何区别,这如何解释?
3.希望版主详细解释下,谢谢
RUNMODE:1;
ma10:=ma(c,10);
ma30:=ma(c,30);
n:=0;
if ma10>ma30 then n:=1;
n;
这么改,才是和你所说的是一个问题,n:=0这个在序列中全部定义好了,所以只在最后根k线判断n
RUNMODE:1;
ma10:=ma(c,10);
ma30:=ma(c,30);
IF(ma10>ma30,1,5);
我只想了解,为何最后不是一直输出5?
说实话,还是不太明白.
不只是IF函数的问题,在飞弧里,很多条件选股公式都是每根K线做出判断的.而不是最后一根K线来计算的.而飞弧就是序列模式.
如果说序列模式只是计算最后一根K线,那飞弧的所有选股公式岂不是都选不了股了?因为只算最后一根K线啊.中间的K线就没有信号了.
实际情况是飞弧的中间K线都有信号.而飞弧是序列模式(公式可复制到金字塔序列模式里运行),这岂不是矛盾了?
飞弧里这个语句IF(ma10>ma30,1,5);是可以运行的
楼上说的
是不能运行,这我知道.
我就是弄不懂"序列模式只是计算最后一根K线",而序列模式运行的飞弧里,很多条件选股公式都是每根K线做出判断的
这不是矛盾吗?
金字塔的编程手册我细看过,就是不理解才在这里问的.
版主的贴深度理解金字塔公式系统的工作机理 ,我也看了
(1)
RUNMODE:1;
cc:BARPOS,linethick0;
b1:if(BARPOS =datacount,1,0),linethick0;//if(BARPOS =datacount,1,0)该函数是每根K线都会做判断,都会执行的.--该函数返回值跟BARPOS一样,是序列变量
(2)
RUNMODE:1;
cc:BARPOS,linethick0;
n:=0;
IF BARPOS = datacount THEN //只在最后一根K线上执行一次控制语句解析
n:=1;
BB:n;
程序对控制语句