This commit is contained in:
2025-09-10 17:37:58 +03:30
parent 15c7b7ddff
commit 4d50472a0c
2 changed files with 20 additions and 10 deletions
+3 -2
View File
@@ -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 ...
+17 -8
View File
@@ -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;
}