last ...
This commit is contained in:
@@ -619,6 +619,155 @@ typedef void (*TOnX121SMCSignal)(
|
||||
X121SMCStrategyConditions &conditions //
|
||||
);
|
||||
|
||||
//
|
||||
// Time Frames Tools ...
|
||||
|
||||
/**
|
||||
* Calculate Analyse Period ...
|
||||
*
|
||||
* @param value: ENUM_TIMEFRAMES member, Specified Trigger Period ...
|
||||
*
|
||||
* @return ( ENUM_TIMEFRAMES )
|
||||
*/
|
||||
ENUM_TIMEFRAMES GetAnalysePeriod(ENUM_TIMEFRAMES value)
|
||||
{
|
||||
//
|
||||
ENUM_TIMEFRAMES result = NULL;
|
||||
|
||||
//
|
||||
value = NormalizePeriod(value);
|
||||
|
||||
//
|
||||
switch (value)
|
||||
{
|
||||
//
|
||||
case PERIOD_M1:
|
||||
case PERIOD_M2:
|
||||
case PERIOD_M3:
|
||||
case PERIOD_M4:
|
||||
case PERIOD_M5:
|
||||
case PERIOD_M6:
|
||||
case PERIOD_M10:
|
||||
case PERIOD_M12:
|
||||
result = PERIOD_M15;
|
||||
break;
|
||||
|
||||
//
|
||||
case PERIOD_M15:
|
||||
case PERIOD_M20:
|
||||
result = PERIOD_M30;
|
||||
break;
|
||||
|
||||
//
|
||||
case PERIOD_H1:
|
||||
case PERIOD_H2:
|
||||
case PERIOD_H3:
|
||||
result = PERIOD_H4;
|
||||
break;
|
||||
|
||||
//
|
||||
case PERIOD_H4:
|
||||
case PERIOD_H6:
|
||||
case PERIOD_H8:
|
||||
result = PERIOD_H12;
|
||||
break;
|
||||
|
||||
//
|
||||
default:
|
||||
result = NULL;
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
bool HasValidAnalysePeriod(
|
||||
ENUM_TIMEFRAMES value,
|
||||
ENUM_TIMEFRAMES &period //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
period = GetAnalysePeriod(value);
|
||||
result = IsValid(period);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Calculate Vision Period ...
|
||||
*
|
||||
* @param value: ENUM_TIMEFRAMES member, Specified Trigger Period ...
|
||||
*
|
||||
* @return ( ENUM_TIMEFRAMES )
|
||||
*/
|
||||
ENUM_TIMEFRAMES GetVisionPeriod(ENUM_TIMEFRAMES value)
|
||||
{
|
||||
//
|
||||
ENUM_TIMEFRAMES result = NULL;
|
||||
|
||||
//
|
||||
value = NormalizePeriod(value);
|
||||
|
||||
//
|
||||
switch (value)
|
||||
{
|
||||
//
|
||||
case PERIOD_M1:
|
||||
case PERIOD_M2:
|
||||
case PERIOD_M3:
|
||||
case PERIOD_M4:
|
||||
case PERIOD_M5:
|
||||
case PERIOD_M6:
|
||||
case PERIOD_M10:
|
||||
case PERIOD_M12:
|
||||
result = PERIOD_H1;
|
||||
break;
|
||||
|
||||
//
|
||||
case PERIOD_M15:
|
||||
case PERIOD_M20:
|
||||
result = PERIOD_H2;
|
||||
break;
|
||||
|
||||
//
|
||||
case PERIOD_H1:
|
||||
case PERIOD_H2:
|
||||
case PERIOD_H3:
|
||||
result = PERIOD_H6;
|
||||
break;
|
||||
|
||||
//
|
||||
case PERIOD_H4:
|
||||
case PERIOD_H6:
|
||||
case PERIOD_H8:
|
||||
result = PERIOD_D1;
|
||||
break;
|
||||
|
||||
//
|
||||
default:
|
||||
result = NULL;
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
bool HasValidVisionPeriod(
|
||||
ENUM_TIMEFRAMES value,
|
||||
ENUM_TIMEFRAMES &period //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
period = GetVisionPeriod(value);
|
||||
result = IsValid(period);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Extentions ...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user