Wow, that's a lot of confusion!

Of course trades happen at exactly the same time in Zorro and in MT4. I think the problem arises from some special MT4 issues, which require some re-thinking when switching from MT4 to another platform.

Most trade platforms count the candles with indices [0], [1], [2], where [0] is the last full candle. For MT4 however, [1] is the last full candle (I suppose), and [0] is an incomplete candle that is just building. So the close of the last full candle is Close[1] in MT4, but Close[0] in other platforms.

Indicators need full candles. So in MT4 the indicators probably ignore candle [0]. At least I hope this, otherwise MT4 would give incoherent results in the simulation. MT4 trade signals are thus generated from candle[1] and MT4 executes the trades at the begin of candle[0], at exactly the same time as Zorro and all other platforms.

I hope I have described this correctly, as I'm no MT4 expert.

- The TICKS flag does not cause Zorro's run function to run every tick, as in MT4. This would make no sense because Zorro supports pending trades. Instead, the TICKS flag causes a possible trade management function, which can be used for complex trade entry and exit conditions, to run every tick in the simulation.

- Testing with multiple currencies and time frames is explained in Workshop 6.

- If you want any feature that you think MQL4 can do and Zorro not, just request it on the future forum. MQL4 is very minimalistic and lacks many language features, so if it really has something that other platforms don't have, it should be easy to implement.