运行机制的疑问

感谢老师们的指导!!!订单流测试基本完成,还有小疑问:

在ONBAR域A函数下单并打印下单信息,然后在订单域触发并操作。

实际测试结果是:下单成功并触发订单域运行,可是没有打印下单信息。

是否存在这种可能:A函数下单之时立即触发订单域,没有来得及打印下单信息就跳至订单域运行。如果是此原因,后期会补充打印吗?还是就被忽略了、不再打印之前的下单信息?

请老师指导!!!

bar运行机制
闪烁的运行机制理解
疑问
运行机制的次序
HideKline()的运行机制???
关于OnTimer的疑问
请教事件域onbaropen运行机制
关于setbaseperiod的几个疑问
Oninit域的运行机制
关于rerun和restart运行机制的问题

你说的打印是print?这不可能的。

事件域的执行,是必须完全执行完成,才会开始执行下一个事件域。不可能这个事件域执行到一半跑去执行另外一个事件域

👍

谢谢老师!!!

打印是print,语句如下:

IF (开空条件成立)

{

     IF (A_SendOrderEx(Enum_Sell,Enum_Entry,Lots,Q_Last,Sid ))

{

Print("开空单");

}

}

事件域的上述运行机制,您在视频中也讲过的,我再仔细找找其他的原因。


如果Print放在条件语句中,有可能是A_SendOrderEx函数返回的结果不是真,导致没有输出。

这个我是知道的(A_SendOrderEx返回BOOL值),但是已有下单记录且触发订单域,我推定返回TRUE。仍然不打印,我才很疑惑???



这是不可能发生的事情。

按照你这个结构,只要没有print,那就意味着if里的sendorder返回的就是false

您 说的有道理。

应该是我水平不够,所以看不到问题所在

他如果非实时行情测试,都会返回False

而且上个帖子跟他说了一大堆

一句没听进去

你对这个结果应该是由误会的。

要么你是把代码发出来复现一下

要么是你自己再检查一下这里面哪里有疏漏的细节

IF (开空条件成立)

{

     IF (A_SendOrderEx(Enum_Sell,Enum_Entry,Lots,Q_Last,Sid ))

{

   JS=JS+1
}

Print("计数"+TEXT(JS));//结果是(计数+1)
}

我修正了测试语句,如上语句则显示正常【输出(JS+1)】,确定IF(A函数)下打印不正常

我之前给你的代码中

是先检测是否交易状态

再发单

这样不需要检测发单是否成功

而且建议你换个账户发单函数


有的逻辑比较通畅

你的写法逻辑非常之拧巴

为啥你就如此决绝坚定自己的写法

😭