How to execute ea's with every new opening price, NOT with every tick?

 

So I'm on the 'Program in mql4' section of the book. So far, I've only heard that ea's are called or executed every tick. By definition, a tick is a tiny change in price. I don't want such frequent execution; I want the ea to be called only once there's a new candlestick, when there's a new opening price. Is this possible, something I can know I can do going forward? 

I've programmed with Processing for over a year, fyi.  

 
r1001101: So I'm on the 'Program in mql4' section of the book. So far, I've only heard that ea's are called or executed every tick. By definition, a tick is a tiny change in price. I don't want such frequent execution; I want the ea to be called only once there's a new candlestick,
  1. Then why did you post in the MQL5/General section instead of the MQL4 section?
  2. If you had used this you would have found numerous posts.
    Bars is unreliable (a refresh/reconnect can change number of bars on chart,) volume is unreliable (miss ticks,) Price is unreliable (duplicate prices and The == operand. - MQL4 forum.) Always use time. New candle - MQL4 forum
    I disagree with making a new bar function, because it can only be called once per tick. A variable can be tested multiple times.