Use this - OTTOMH :)
if (Volume[0]>1) return(0); // quit AFTER first tick of new, allowing you to evaluate High[1] etc ONCE below this line
You could execute your code at the very first tick of a new bar ( i.e. right after the previous bar has closed ).
Here's a function that will return TRUE if a new bar has just formed:
// This function returns TRUE at the very first tick a bar i.e. after the previous bar has just closed bool NewBar() { if(PreviousBarTime<Time[0]) { PreviousBarTime = Time[0]; return(true); } return(false); // in case if - else statement is not executed }
you need to declare datetime PreviousBarTime at the beginning of your EA...
then in your code you could just use
if ( NewBar() ) { ...... code you need to be executed after a bar has closed here .... }
thank you
automatedfx@gmail.com
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
I have a routine that performs some counting on each bar of occurrences of a setup. I need to make sure that each bar is only processed once so that each "occurrence" of this setup is only counted once. I can only need to process each bar after the bar itself is closed ... not tick by tick.
Any ideas would be greatly appreciated.