公式如下,序列模式EMA4:=EMA(Close,4);
EMA9:=EMA(Close,9);
UpCross:=Cross(EMA4,EMA9);
DownCross:=Cross(EMA9,EMA4);
W:BARSLAST(UpCross OR DownCross OR BARPOS=1),LINETHICK0;
WW:=BARSLAST(REFX(W,1)=0 OR ISLASTBAR OR BARPOS=1);
ST:=SetVal(WW=0,W+1,-W,W+1);
A1:=HHVBars(High,ST);
A2:=If(WW=0,A1,0);
DrawNumber(1,Low,A2,0,ColorWhite);
A3:=REFX(A2,A2);
DrawNumber(1,High,A3,0,ColorYellow);
到A2为止,能正确计算出A2的值,如图所示。
然后我想让A3引用A2周期后的A2值,但A3都为0,为何引用不上呢?
请高手指教。

此主题相关图片如下:aaa.jpg

这张图更清楚点,标明了A3出问题的K线

此主题相关图片如下:ddd.jpg

[此贴子已经被作者于2013-1-8 22:57:16编辑过]
是哦,这么简单的错误!真是脑子进水了。谢谢Jinzhe提醒。
再请教一下,一楼公式中A3赋值语句改成如下代码:
If A2>0 then
A3:=5;
DrawNumber(1,High,A3,0,COLORMAGENTA);
A3依然不能成功赋值,显示为-1,又是为何啊?
//序列模式
EMA4:=EMA(Close,4);
EMA9:=EMA(Close,9);
UpCross:=Cross(EMA4,EMA9);
DownCross:=Cross(EMA9,EMA4);
W:BARSLAST(UpCross OR DownCross OR BARPOS=1),LINETHICK0;
WW:=BARSLAST(REFX(W,1)=0 OR ISLASTBAR OR BARPOS=1);
ST:=SetVal(WW=0,W+1,-W,W+1);
A1:=HHVBars(High,ST);
A2:=If(WW=0,A1,0);
DrawNumber(1,Low,A2,0,ColorWhite);
If A2>0 then
A3:=5;
DrawNumber(1,High,A3,0,COLORMAGENTA);
[此贴子已经被作者于2013-1-9 12:25:41编辑过]