下载MetaTrader 5

WaitEvent什么时候会被调用?

要添加评论,请登录注册
snowmandxp
35
snowmandxp  

想在OnTrade中处理交易事件,看到OnTrade调用了CheckTradeState函数,在CheckTradeState中调用了各交易事件的处理函数,比如:TradeEventPositionStopTake、TradeEventPositionOpened、TradeEventPositionClosed、TradeEventPositionModified等,但是这些函数是否被调用取决于IS_WAITING_POSITION_STOP_TAKE、IS_WAITING_POSITION_OPENED、IS_WAITING_POSITION_CLOSED,查看这些宏的定义:

#define IS_WAITING_POSITION_OPENED         ((m_waiting_event&TRADE_EVENT_POSITION_OPEN)!=0)

#define IS_WAITING_POSITION_VOLUME_CHANGED ((m_waiting_event&TRADE_EVENT_POSITION_VOLUME_CHANGE)!=0)

#define IS_WAITING_POSITION_MODIFIED       ((m_waiting_event&TRADE_EVENT_POSITION_MODIFY)!=0)

#define IS_WAITING_POSITION_CLOSED         ((m_waiting_event&TRADE_EVENT_POSITION_CLOSE)!=0)

#define IS_WAITING_POSITION_STOP_TAKE      ((m_waiting_event&TRADE_EVENT_POSITION_STOP_TAKE)!=0)

主要是看m_waiting_event的相应标志位有没有设置,而m_waiting_event是通过WaitEvent函数设置,但是没有哪个地方有调用WaitEvent,请问要在哪里调用WaitEvent呢?

要添加评论,请登录注册