forked from 93744399/FMIC
39 lines
1.4 KiB
MQL5
39 lines
1.4 KiB
MQL5
#property copyright "Copyright \x00A9 2022, Fernando M. I. Carreiro, All rights reserved"
| |||
#property link "https://www.mql5.com/en/users/FMIC"
| |||
#property version "1.001"
| |||
#property strict
| |||
| |||
// Default tick event handler
| |||
void OnTick()
| |||
{
| |||
// Check for new bar (compatible with both MQL4 and MQL5).
| |||
static datetime dtBarCurrent = WRONG_VALUE;
| |||
datetime dtBarPrevious = dtBarCurrent;
| |||
dtBarCurrent = iTime( _Symbol, _Period, 0 );
| |||
bool bNewBarEvent = ( dtBarCurrent != dtBarPrevious );
| |||
| |||
// React to a new bar event and handle it.
| |||
if( bNewBarEvent )
| |||
{
| |||
// Detect if this is the first tick received and handle it.
| |||
/* For example, when it is first attached to a chart and
| |||
the bar is somewhere in the middle of its progress and
| |||
it's not actually the start of a new bar. */
| |||
if( dtBarPrevious == WRONG_VALUE )
| |||
{
| |||
// Do something on first tick or middle of bar ...
| |||
}
| |||
else
| |||
{
| |||
// Do something when a normal bar starts ...
| |||
};
| |||
| |||
// Do something irrespective of the above condition ...
| |||
}
| |||
else
| |||
{
| |||
// Do something else ...
| |||
};
| |||
| |||
// Do other things ...
| |||
};
|