请教一个问题
我最近编写程序,需要用到一个循环语句,
但是 测试的结果 都是0,也就是等于都不满足条件,无论怎么调试,都不行。
我将我的程序减缩成几条,大家看看到底哪里出了问题,一周都无法解决:
程序代码:
m:=0;
for i=10 to 20 do
begin
if(ref(close,1)<ref(hhv(close,i),1)&&close>ref(hhv(close,i),1)) then
exit;
end;
BK:=hhv(close,i);
SP:=CLOSE<BK;
开多:BUY(BK AND HOLDING=0,1,THISCLOSE); //开多信号
平多:SELL(SP AND HOLDING>0,1,THISCLOSE); //平多信号
测试结果为0
不能出现信号的主要原因是
for i=10 to 20 do
begin
if(ref(close,1)<ref(hhv(close,i),1)&&close>ref(hhv(close,i),1)) then
exit;
end;
BK:=hhv(close,i);
SP:=CLOSE<BK;
你这上面的代码的逻辑问题导致没有信号,由于不知道你具体的想法和思路,我们无法帮你整改的,建议你:
1,仔细学习一下金字塔的单步跟踪调试技巧,遇到循环语句时这种调试最为有效
2,如果你自己无法调试出问题,那么请将你的逻辑思路说出来,我们帮你做出范例