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| // maxAllowedPosition|
// ( // (
// restrictionsPeriod, // restrictionsPeriod,
// restrictionsMultiplier,
// maxAllowedTPs, // maxAllowedTPs,
// maxAllowedSLs, // maxAllowedSLs,
// maxAllowedTrades, // 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)] // [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,0,2,0)]"; // Symbol Configurations 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 ... // Management ...
+17 -8
View File
@@ -2866,6 +2866,7 @@ struct XSymbolTradeConfig
double maxAllowedSpread; // Max Allowed Spread For Trade double maxAllowedSpread; // Max Allowed Spread For Trade
XTradeSession sessions[]; // Trading Sessions XTradeSession sessions[]; // Trading Sessions
string closeAllOpenTradesAt; // Close All Open Trades per Day At Specified Time 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 ENUM_XTRADE_RESTRICTION_PERIOD restrictionsPeriod; // Trade Restrictions Period
// //
@@ -3182,10 +3183,11 @@ struct XSymbolTradeConfig
// //
// Try To Extract Required Parts ... // Try To Extract Required Parts ...
bool hasRestrictionsPeriod = count >= 1; bool hasRestrictionsPeriod = count >= 1;
bool hasMaxAllowedTPs = count >= 2; bool hasRestrictionsPeriodMultiplier = count >= 2;
bool hasMaxAllowedSLs = count >= 3; bool hasMaxAllowedTPs = count >= 3;
bool hasMaxAllowedTrades = count >= 4; bool hasMaxAllowedSLs = count >= 4;
bool hasCloseAllOpenTradesAt = count >= 5; bool hasMaxAllowedTrades = count >= 5;
bool hasCloseAllOpenTradesAt = count >= 6;
// //
// Restrictions Period ... // Restrictions Period ...
@@ -3194,32 +3196,39 @@ struct XSymbolTradeConfig
? ToXRestrictionPeriod(Trim(iRestrictionsParts[0])) ? ToXRestrictionPeriod(Trim(iRestrictionsParts[0]))
: XTRADE_RESTRICATION_NONE; : XTRADE_RESTRICATION_NONE;
//
// Restrictions Period Multiplier ...
restrictionsPeriodMultiplier =
hasRestrictionsPeriodMultiplier
? (int)(Trim(iRestrictionsParts[1]))
: 1;
// //
// Max Allowed TPs ... // Max Allowed TPs ...
maxAllowedTPs = maxAllowedTPs =
hasMaxAllowedTPs hasMaxAllowedTPs
? (int)(Trim(iRestrictionsParts[1])) ? (int)(Trim(iRestrictionsParts[2]))
: 0; : 0;
// //
// Max Allowed SLs ... // Max Allowed SLs ...
maxAllowedSLs = maxAllowedSLs =
hasMaxAllowedSLs hasMaxAllowedSLs
? (int)(Trim(iRestrictionsParts[2])) ? (int)(Trim(iRestrictionsParts[3]))
: 0; : 0;
// //
// Max Allowed Trades ... // Max Allowed Trades ...
maxAllowedTrades = maxAllowedTrades =
hasMaxAllowedTrades hasMaxAllowedTrades
? (int)(Trim(iRestrictionsParts[3])) ? (int)(Trim(iRestrictionsParts[4]))
: 0; : 0;
// //
// Close All Open Trades At ... // Close All Open Trades At ...
closeAllOpenTradesAt = closeAllOpenTradesAt =
hasCloseAllOpenTradesAt hasCloseAllOpenTradesAt
? Trim(iRestrictionsParts[4]) ? Trim(iRestrictionsParts[5])
: NULL; : NULL;
} }