diff --git a/Experts/x-saherelm.xom1.ea.mq5 b/Experts/x-saherelm.xom1.ea.mq5 index 9c0d1eeb..6ff81e38 100644 --- a/Experts/x-saherelm.xom1.ea.mq5 +++ b/Experts/x-saherelm.xom1.ea.mq5 @@ -45,6 +45,7 @@ input string eaLogSuffix = ""; // Log Suffix // maxAllowedPosition| // ( // restrictionsPeriod, +// restrictionsMultiplier, // maxAllowedTPs, // maxAllowedSLs, // maxAllowedTrades, @@ -53,8 +54,8 @@ input string eaLogSuffix = ""; // Log Suffix // ] // // -// [XAUUSDb|M5|(ST_04:00_08:30),(TL_10:30_12:00),(NY_16:00_20:00)|25.0|5|(Per_Day,0,2,0)] -input string eaSymbolConfiguration = "[XAUUSDb|M5|(ST_04:00_08:30),(TL_10:30_12:00),(NY_16:00_20:00)|25.0|5|(XTRADE_RESTRICATION_DAILY,0,2,0)]"; // Symbol Configurations +// [XAUUSDb|M5|(ST_04:00_08:30),(TL_10:30_12:00),(NY_16:00_20:00)|25.0|5|(XTRADE_RESTRICATION_DAILY,1,0,2,0)] +input string eaSymbolConfiguration = "[XAUUSDb|M5|(ST_04:00_08:30),(TL_10:30_12:00),(NY_16:00_20:00)|25.0|5|(XTRADE_RESTRICATION_DAILY,3,0,2,0)]"; // Symbol Configurations // // Management ... diff --git a/Libraries/x-saherelm.x-trade.lib.mq5 b/Libraries/x-saherelm.x-trade.lib.mq5 index 4751c896..a5a86548 100644 --- a/Libraries/x-saherelm.x-trade.lib.mq5 +++ b/Libraries/x-saherelm.x-trade.lib.mq5 @@ -2866,6 +2866,7 @@ struct XSymbolTradeConfig double maxAllowedSpread; // Max Allowed Spread For Trade XTradeSession sessions[]; // Trading Sessions string closeAllOpenTradesAt; // Close All Open Trades per Day At Specified Time + int restrictionsPeriodMultiplier; // Specified Restrictions Period Multiplier ENUM_XTRADE_RESTRICTION_PERIOD restrictionsPeriod; // Trade Restrictions Period // @@ -3182,10 +3183,11 @@ struct XSymbolTradeConfig // // Try To Extract Required Parts ... bool hasRestrictionsPeriod = count >= 1; - bool hasMaxAllowedTPs = count >= 2; - bool hasMaxAllowedSLs = count >= 3; - bool hasMaxAllowedTrades = count >= 4; - bool hasCloseAllOpenTradesAt = count >= 5; + bool hasRestrictionsPeriodMultiplier = count >= 2; + bool hasMaxAllowedTPs = count >= 3; + bool hasMaxAllowedSLs = count >= 4; + bool hasMaxAllowedTrades = count >= 5; + bool hasCloseAllOpenTradesAt = count >= 6; // // Restrictions Period ... @@ -3194,32 +3196,39 @@ struct XSymbolTradeConfig ? ToXRestrictionPeriod(Trim(iRestrictionsParts[0])) : XTRADE_RESTRICATION_NONE; + // + // Restrictions Period Multiplier ... + restrictionsPeriodMultiplier = + hasRestrictionsPeriodMultiplier + ? (int)(Trim(iRestrictionsParts[1])) + : 1; + // // Max Allowed TPs ... maxAllowedTPs = hasMaxAllowedTPs - ? (int)(Trim(iRestrictionsParts[1])) + ? (int)(Trim(iRestrictionsParts[2])) : 0; // // Max Allowed SLs ... maxAllowedSLs = hasMaxAllowedSLs - ? (int)(Trim(iRestrictionsParts[2])) + ? (int)(Trim(iRestrictionsParts[3])) : 0; // // Max Allowed Trades ... maxAllowedTrades = hasMaxAllowedTrades - ? (int)(Trim(iRestrictionsParts[3])) + ? (int)(Trim(iRestrictionsParts[4])) : 0; // // Close All Open Trades At ... closeAllOpenTradesAt = hasCloseAllOpenTradesAt - ? Trim(iRestrictionsParts[4]) + ? Trim(iRestrictionsParts[5]) : NULL; }