TradeEventPositionOpened() is never executed.

 

You can reproduce by creating a simple EA (generate) from wizard and define that it will listen for trade events, setting the m_on_trade_process to true.

In OnInit() function, after initialize the expert, place the follow line:

ExtExpert.OnTradeProcess(true);

 After, place a breakpoint in the line 185 on CExpert.mqh 

virtual bool      TradeEventPositionOpened(void)         { return(true); }

You can see that the breakpoint is never reach.

You will also see that the CExpert::CheckTradeState(void) is executed, but TradeEventPositionOpened and similar functions are never executed.

I'm missing something?

Reason: