VARIABLE: t_time=235959;
...
IF tj1 THEN BEGIN
t_time:=CURRENTTIME;
END
结果t_time显示的是电脑系统时间,不断在变.
请问: 如何得到满足条件tj1时的精确时间(到秒)? 谢谢!
用t_time:=time0;试试
用t_time:=time0;试试
谢谢!
请问: 如何得到满足条件tj1时的精确时间(到秒)? 而不是不断在变.
VARIABLE: t_time=235959;
...
IF tj1 THEN BEGIN
t_time:=CURRENTTIME;
END
你上述公式就完全可以实现你所要求的功能,但至于为什么时间不断在变,你应该仔细查查为什么tj1一直是大于0的条件为真
VARIABLE: t_SK=235600,t_BP=235600,t_BK=235600,t_SP=235600;
DP:=MINDIFF;
ma1:ma(c,10);
ma2:ma(c,20);
BK:=cross(ma1,ma2);
SK:=cross(ma2,ma1);
IF HOLDING>0 THEN BEGIN
t_SK:=235600;
t_BP:=235600;
END
IF HOLDING<0 THEN BEGIN
t_BK:=235600;
t_SP:=235600;
END
IF BK and HOLDING<0 THEN BEGIN
tSELLSHORT(BK,0,lmt,DYNAINFO(19)+DP);
SELLSHORT(BK,0,thisclose);
t_BP:=CURRENTTIME;
END
IF BK and HOLDING=0 THEN BEGIN
tBUY(BK,1,lmt,DYNAINFO(19)+DP);
BUY(BK,1,thisclose);
t_BK:=CURRENTTIME;
END
IF SK and HOLDING>0 THEN BEGIN
tSELL(SK,0,lmt,DYNAINFO(18)-DP);
SELL(SK,0,thisclose);
t_SP:=CURRENTTIME;
END
IF SK and HOLDING=0 THEN BEGIN
tBUYSHORT(SK,1,lmt,DYNAINFO(18)-DP);
BUYSHORT(SK,1,thisclose);
t_SK:=CURRENTTIME;
END
tSK:t_SK;
tBP:t_BP;
tBK:t_BK;
tSP:t_SP;
多:BK;
空:SK;
请在恒指\ES\外汇等正在交易的品种中看, 至少总有一项随计算机时间而变化, 而多\空条件为0, 是不是该函数的一个BUG
你上述公式过于复杂,我们无法帮你做出判断,希望你能简化你的公式,达到能描述问题原因即可
简化的公式
VARIABLE: t_SK=235600,t_BK=235600;
DP:=MINDIFF;
ma1:ma(c,10);
ma2:ma(c,20);
BK:=cross(ma1,ma2);
SK:=cross(ma2,ma1);
IF HOLDING>0 THEN BEGIN
t_SK:=235600;
END
IF HOLDING<0 THEN BEGIN
t_BK:=235600;
END
IF BK THEN BEGIN
tSELLSHORT(HOLDING<0,0,lmt,DYNAINFO(19)+DP);
SELLSHORT(HOLDING<0,0,thisclose);
tBUY(HOLDING=0,1,lmt,DYNAINFO(19)+DP);
BUY(HOLDING=0,1,thisclose);
t_BK:=CURRENTTIME;
END
IF SK THEN BEGIN
tSELL(HOLDING>0,0,lmt,DYNAINFO(18)-DP);
SELL(HOLDING>0,0,thisclose);
tBUYSHORT(HOLDING=0,1,lmt,DYNAINFO(18)-DP);
BUYSHORT(HOLDING=0,1,thisclose);
t_SK:=CURRENTTIME;
END
tSK:t_SK;
tBK:t_BK;
多:BK;
空:SK;
请在恒指\ES\外汇等正在交易的品种中看, tSK和tBK至少总有一项随计算机时间而变化, 而此时多\空条件为0.
请帮忙解决, 谢谢!
多谢答复!
请问: 如何得到满足条件tj1时的精确时间(到秒)? 即如何记录满足条件tj1时的精确时间
您能给出好办法吗 谢谢!