The timer also works only for live trading, it does not work for backtesting. Look at the very bottom here: http://docs.mql4.com/runtime/testing The timer event is working by itself and it does not care about ticks, it's like a clock.