Refactor all new MQL5 Version Compiling Issues ...
This commit is contained in:
@@ -80,14 +80,14 @@ string GenerateSpecifiedCommonSummary(
|
||||
: "Commons:" + separator) +
|
||||
"---------------" + separator +
|
||||
"Symbol: " + mItem.symbol + separator +
|
||||
"Period: " + ToString(mItem.period) + separator +
|
||||
"Time: " + ToString(mItem.time) + separator +
|
||||
"Period: " + ToXString(mItem.period) + separator +
|
||||
"Time: " + ToXString(mItem.time) + separator +
|
||||
(includeScores
|
||||
? "---------------" + separator +
|
||||
"Scores:" + separator +
|
||||
"---------------" + separator +
|
||||
"Bullish: " + ToString(bullishScore) + separator +
|
||||
"Bearish: " + ToString(bearishScore) + separator +
|
||||
"Bullish: " + ToXString(bullishScore) + separator +
|
||||
"Bearish: " + ToXString(bearishScore) + separator +
|
||||
"---------------" + separator
|
||||
: "") +
|
||||
""
|
||||
|
||||
@@ -1388,7 +1388,7 @@ class XCAlert : public XCBase
|
||||
|
||||
//
|
||||
// Attach Time ...
|
||||
string savedMessage = ToString(TimeCurrent()) + " " + message;
|
||||
string savedMessage = ToXString(TimeCurrent()) + " " + message;
|
||||
|
||||
//
|
||||
bool has = collector.Append(
|
||||
|
||||
@@ -616,7 +616,7 @@ class XCSignalObject : public XCBaseObject
|
||||
for (int i = 0; i < targetsCount; i++)
|
||||
{
|
||||
//
|
||||
string targetName = ToString(X_TARGET) + "_" + ToString(i) + "_" + nameMD5;
|
||||
string targetName = ToString(X_TARGET) + "_" + ToXString(i) + "_" + nameMD5;
|
||||
CChartObjectTrend *mTargetTrend;
|
||||
mTargetTrend = new CChartObjectTrend();
|
||||
result = mTargetTrend.Create(
|
||||
|
||||
@@ -139,11 +139,11 @@ struct XGuard
|
||||
//
|
||||
result =
|
||||
//
|
||||
IsValid(time) &&
|
||||
IsValid(symbol) &&
|
||||
IsValid(period) &&
|
||||
IsValid(action) &&
|
||||
IsValid(provider)
|
||||
IsSpecifiedValid(time) &&
|
||||
IsSpecifiedValid(symbol) &&
|
||||
IsSpecifiedValid(period) &&
|
||||
IsSpecifiedValid(action) &&
|
||||
IsSpecifiedValid(provider)
|
||||
//
|
||||
;
|
||||
|
||||
@@ -175,6 +175,10 @@ bool IsValid(ENUM_X_GUARD_ACTIONS item)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
bool IsSpecifiedValid(ENUM_X_GUARD_ACTIONS item)
|
||||
{
|
||||
return IsValid(item);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add Guard to Collection ...
|
||||
@@ -1004,8 +1008,8 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(position.type) +
|
||||
" Position (" + ToString(position.ticket) + ") Successfully ...";
|
||||
ToXString(position.type) +
|
||||
" Position (" + ToXString(position.ticket) + ") Successfully ...";
|
||||
|
||||
//
|
||||
alert.SendAlert(message);
|
||||
@@ -1069,7 +1073,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1134,7 +1138,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" In Lost Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1199,7 +1203,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" In Profit Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1264,7 +1268,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" Long Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1329,7 +1333,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" In Lost Longs Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1394,7 +1398,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" In Profit Longs Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1476,7 +1480,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" In Lost Shorts Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1541,7 +1545,7 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed " +
|
||||
ToString(count) +
|
||||
ToXString(count) +
|
||||
" In Profit Shorts Positions Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1619,7 +1623,7 @@ class XCGuard : public XCBase
|
||||
);
|
||||
|
||||
//
|
||||
string comment = "Guard Partially Closed: " + ToString(volume) + " ...";
|
||||
string comment = "Guard Partially Closed: " + ToXString(volume) + " ...";
|
||||
|
||||
//
|
||||
has = trader.ClosePartial(
|
||||
@@ -1632,9 +1636,9 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Closed Partially " +
|
||||
ToString(volume) + " of " +
|
||||
ToString(position.type) +
|
||||
" Position (" + ToString(position.ticket) + ") Successfully ...";
|
||||
ToXString(volume) + " of " +
|
||||
ToXString(position.type) +
|
||||
" Position (" + ToXString(position.ticket) + ") Successfully ...";
|
||||
|
||||
//
|
||||
alert.SendAlert(message);
|
||||
@@ -1739,10 +1743,10 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Trail Stop " +
|
||||
ToString(position.type) +
|
||||
" Position (" + ToString(position.ticket) + ")" +
|
||||
" From: " + ToString(before) +
|
||||
"To: " + ToString(after) +
|
||||
ToXString(position.type) +
|
||||
" Position (" + ToXString(position.ticket) + ")" +
|
||||
" From: " + ToXString(before) +
|
||||
"To: " + ToXString(after) +
|
||||
" Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1844,10 +1848,10 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Trail Target " +
|
||||
ToString(position.type) +
|
||||
" Position (" + ToString(position.ticket) + ")" +
|
||||
" From: " + ToString(before) +
|
||||
"To: " + ToString(after) +
|
||||
ToXString(position.type) +
|
||||
" Position (" + ToXString(position.ticket) + ")" +
|
||||
" From: " + ToXString(before) +
|
||||
"To: " + ToXString(after) +
|
||||
" Successfully ...";
|
||||
|
||||
//
|
||||
@@ -1980,9 +1984,9 @@ class XCGuard : public XCBase
|
||||
//
|
||||
string message =
|
||||
"Guard Hedge " +
|
||||
ToString(closedCount) +
|
||||
ToXString(closedCount) +
|
||||
" Positions by: " +
|
||||
ToString(hedgeValue) +
|
||||
ToXString(hedgeValue) +
|
||||
" Successfully ...";
|
||||
|
||||
//
|
||||
|
||||
@@ -111,7 +111,7 @@ class XCBaseHelper : public XCBase
|
||||
GetToken() +
|
||||
"[" +
|
||||
GetSymbol() + "|" +
|
||||
ToString(GetPeriod()) +
|
||||
ToXString(GetPeriod()) +
|
||||
"]"
|
||||
//
|
||||
;
|
||||
|
||||
@@ -625,8 +625,8 @@ class XCPOIDrawer : public XCBase
|
||||
{
|
||||
//
|
||||
name = "XBox_" +
|
||||
ToString(upper) + "_" +
|
||||
ToString(lower) + "_" +
|
||||
ToXString(upper) + "_" +
|
||||
ToXString(lower) + "_" +
|
||||
dateMD5;
|
||||
}
|
||||
|
||||
|
||||
@@ -1108,21 +1108,21 @@ class XCRMPanel : public XCAppDialog
|
||||
volume = NormalizeVolume(volume, _Symbol);
|
||||
|
||||
//
|
||||
string slDesc = "SL: " + ToString(sl) +
|
||||
", Risk: " + ToString(riskPoints) + " pt (" + ToString(riskPercent) + "%)" +
|
||||
", Amount: " + ToString(riskAmount) + currency;
|
||||
string slDesc = "SL: " + ToXString(sl) +
|
||||
", Risk: " + ToXString(riskPoints) + " pt (" + ToXString(riskPercent) + "%)" +
|
||||
", Amount: " + ToXString(riskAmount) + currency;
|
||||
slLine.Tooltip(slDesc);
|
||||
slLine.Description(slDesc);
|
||||
|
||||
//
|
||||
string tpDesc = "TP: " + ToString(tp) + " (" + ToString(rewardAmount) + " " + currency + ")" +
|
||||
", R2R: 1:" + ToString(riskRewardRatio);
|
||||
string tpDesc = "TP: " + ToXString(tp) + " (" + ToXString(rewardAmount) + " " + currency + ")" +
|
||||
", R2R: 1:" + ToXString(riskRewardRatio);
|
||||
tpLine.Tooltip(tpDesc);
|
||||
tpLine.Description(tpDesc);
|
||||
|
||||
//
|
||||
string entryDesc = "Entry: " + ToString(entry) +
|
||||
", Volume: " + ToString(volume);
|
||||
string entryDesc = "Entry: " + ToXString(entry) +
|
||||
", Volume: " + ToXString(volume);
|
||||
entryLine.Tooltip(entryDesc);
|
||||
entryLine.Description(entryDesc);
|
||||
|
||||
|
||||
@@ -239,13 +239,13 @@ struct X121XCatbInputs
|
||||
//
|
||||
result =
|
||||
//
|
||||
IsValid(appliedCycle) &&
|
||||
IsSpecifiedValid(appliedCycle) &&
|
||||
//
|
||||
// CYCLES ...
|
||||
(IsValid(scMethod, scPeriod) &&
|
||||
IsValid(mcMethod, mcPeriod) &&
|
||||
IsValid(lcMethod, lcPeriod) &&
|
||||
IsValid(hcMethod, hcPeriod))
|
||||
(IsSpecifiedValid(scMethod, scPeriod) &&
|
||||
IsSpecifiedValid(mcMethod, mcPeriod) &&
|
||||
IsSpecifiedValid(lcMethod, lcPeriod) &&
|
||||
IsSpecifiedValid(hcMethod, hcPeriod))
|
||||
//
|
||||
;
|
||||
|
||||
@@ -524,46 +524,46 @@ struct X121XCatbConditions
|
||||
// Buffers ...
|
||||
|
||||
//
|
||||
Clean(bars);
|
||||
Clean(kiBuffer);
|
||||
Clean(sarBuffer);
|
||||
Clean(atrBuffer);
|
||||
Clean(rsiBuffer);
|
||||
Clean(adxBuffer);
|
||||
Clean(sHHBuffer);
|
||||
Clean(sLLBuffer);
|
||||
Clean(mHHBuffer);
|
||||
Clean(mLLBuffer);
|
||||
Clean(lHHBuffer);
|
||||
Clean(lLLBuffer);
|
||||
Clean(hHHBuffer);
|
||||
Clean(hLLBuffer);
|
||||
Clean(adxpBuffer);
|
||||
Clean(adxnBuffer);
|
||||
Clean(peakBuffer);
|
||||
Clean(valeBuffer);
|
||||
Clean(deltaBuffer);
|
||||
Clean(trendBuffer);
|
||||
Clean(hkLowBuffer);
|
||||
Clean(hkOpenBuffer);
|
||||
Clean(hkHighBuffer);
|
||||
Clean(hkCloseBuffer);
|
||||
Clean(kiStateBuffer);
|
||||
Clean(sarStateBuffer);
|
||||
Clean(atrUpperBuffer);
|
||||
Clean(atrLowerBuffer);
|
||||
Clean(sBarOpenBuffer);
|
||||
Clean(sBarCloseBuffer);
|
||||
Clean(trendStateBuffer);
|
||||
Clean(hkSBarOpenBuffer);
|
||||
Clean(peakGoldenBuffer);
|
||||
Clean(valeGoldenBuffer);
|
||||
Clean(hkSBarCloseBuffer);
|
||||
Clean(deltaSignalBuffer);
|
||||
Clean(bullishVolumeBuffer);
|
||||
Clean(bearishVolumeBuffer);
|
||||
Clean(bullishVolumeSignalBuffer);
|
||||
Clean(bearishVolumeSignalBuffer);
|
||||
SpecifiedClean(bars);
|
||||
SpecifiedClean(kiBuffer);
|
||||
SpecifiedClean(sarBuffer);
|
||||
SpecifiedClean(atrBuffer);
|
||||
SpecifiedClean(rsiBuffer);
|
||||
SpecifiedClean(adxBuffer);
|
||||
SpecifiedClean(sHHBuffer);
|
||||
SpecifiedClean(sLLBuffer);
|
||||
SpecifiedClean(mHHBuffer);
|
||||
SpecifiedClean(mLLBuffer);
|
||||
SpecifiedClean(lHHBuffer);
|
||||
SpecifiedClean(lLLBuffer);
|
||||
SpecifiedClean(hHHBuffer);
|
||||
SpecifiedClean(hLLBuffer);
|
||||
SpecifiedClean(adxpBuffer);
|
||||
SpecifiedClean(adxnBuffer);
|
||||
SpecifiedClean(peakBuffer);
|
||||
SpecifiedClean(valeBuffer);
|
||||
SpecifiedClean(deltaBuffer);
|
||||
SpecifiedClean(trendBuffer);
|
||||
SpecifiedClean(hkLowBuffer);
|
||||
SpecifiedClean(hkOpenBuffer);
|
||||
SpecifiedClean(hkHighBuffer);
|
||||
SpecifiedClean(hkCloseBuffer);
|
||||
SpecifiedClean(kiStateBuffer);
|
||||
SpecifiedClean(sarStateBuffer);
|
||||
SpecifiedClean(atrUpperBuffer);
|
||||
SpecifiedClean(atrLowerBuffer);
|
||||
SpecifiedClean(sBarOpenBuffer);
|
||||
SpecifiedClean(sBarCloseBuffer);
|
||||
SpecifiedClean(trendStateBuffer);
|
||||
SpecifiedClean(hkSBarOpenBuffer);
|
||||
SpecifiedClean(peakGoldenBuffer);
|
||||
SpecifiedClean(valeGoldenBuffer);
|
||||
SpecifiedClean(hkSBarCloseBuffer);
|
||||
SpecifiedClean(deltaSignalBuffer);
|
||||
SpecifiedClean(bullishVolumeBuffer);
|
||||
SpecifiedClean(bearishVolumeBuffer);
|
||||
SpecifiedClean(bullishVolumeSignalBuffer);
|
||||
SpecifiedClean(bearishVolumeSignalBuffer);
|
||||
|
||||
//
|
||||
ArraySetAsSeries(bars, true);
|
||||
@@ -1175,8 +1175,8 @@ struct X121XCatbConditions
|
||||
//
|
||||
"Scores: " + separator +
|
||||
"---------------" + separator +
|
||||
"Bullish: " + ToString(bullishScore) + separator +
|
||||
"Bearish: " + ToString(bearishScore) + separator +
|
||||
"Bullish: " + ToXString(bullishScore) + separator +
|
||||
"Bearish: " + ToXString(bearishScore) + separator +
|
||||
""
|
||||
//
|
||||
;
|
||||
@@ -1199,115 +1199,115 @@ struct X121XCatbConditions
|
||||
"-----------------------" + separator +
|
||||
"ATR Band: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isATRUp", isATRUp, ignoreFalseConditions, separator) +
|
||||
ToString("isATRDown", isATRDown, ignoreFalseConditions, separator) +
|
||||
ToString("isClosedOverATRUpper", isClosedOverATRUpper, ignoreFalseConditions, separator) +
|
||||
ToString("isClosedUnderATRLower", isClosedUnderATRLower, ignoreFalseConditions, separator) +
|
||||
ToXString("isATRUp", isATRUp, ignoreFalseConditions, separator) +
|
||||
ToXString("isATRDown", isATRDown, ignoreFalseConditions, separator) +
|
||||
ToXString("isClosedOverATRUpper", isClosedOverATRUpper, ignoreFalseConditions, separator) +
|
||||
ToXString("isClosedUnderATRLower", isClosedUnderATRLower, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"KI: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isKIUp", isKIUp, ignoreFalseConditions, separator) +
|
||||
ToString("isKIDown", isKIDown, ignoreFalseConditions, separator) +
|
||||
ToString("isKIBullish", isKIBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isKIBearish", isKIBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isKISameAsLast", isKISameAsLast, ignoreFalseConditions, separator) +
|
||||
ToString("isKISwitchedToBullish", isKISwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isKISwitchedToBearish", isKISwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isKIUp", isKIUp, ignoreFalseConditions, separator) +
|
||||
ToXString("isKIDown", isKIDown, ignoreFalseConditions, separator) +
|
||||
ToXString("isKIBullish", isKIBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isKIBearish", isKIBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isKISameAsLast", isKISameAsLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isKISwitchedToBullish", isKISwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isKISwitchedToBearish", isKISwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"SAR: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isSarBullish", isSarBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isSarBearish", isSarBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isSarSwitchedToBullish", isSarSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isSarSwitchedToBearish", isSarSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSarBullish", isSarBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSarBearish", isSarBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSarSwitchedToBullish", isSarSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSarSwitchedToBearish", isSarSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"ADX: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isADXBiggerLast", isADXBiggerLast, ignoreFalseConditions, separator) +
|
||||
ToString("isADXLesserLast", isADXLesserLast, ignoreFalseConditions, separator) +
|
||||
ToString("isADXOverThreshold", isADXOverThreshold, ignoreFalseConditions, separator) +
|
||||
ToString("isADXUnderThreshold", isADXUnderThreshold, ignoreFalseConditions, separator) +
|
||||
ToString("isDXPBiggerThanDXN", isDXPBiggerThanDXN, ignoreFalseConditions, separator) +
|
||||
ToString("isDXNBiggerThanDXP", isDXNBiggerThanDXP, ignoreFalseConditions, separator) +
|
||||
ToString("isADXBullish", isADXBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isADXBearish", isADXBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isADXSwitchedToBullish", isADXSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isADXSwitchedToBearish", isADXSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXBiggerLast", isADXBiggerLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXLesserLast", isADXLesserLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXOverThreshold", isADXOverThreshold, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXUnderThreshold", isADXUnderThreshold, ignoreFalseConditions, separator) +
|
||||
ToXString("isDXPBiggerThanDXN", isDXPBiggerThanDXN, ignoreFalseConditions, separator) +
|
||||
ToXString("isDXNBiggerThanDXP", isDXNBiggerThanDXP, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXBullish", isADXBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXBearish", isADXBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXSwitchedToBullish", isADXSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isADXSwitchedToBearish", isADXSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"RSI: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isRSIBullish", isRSIBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isRSIBearish", isRSIBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isRSISwitchedToBullish", isRSISwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isRSISwitchedToBearish", isRSISwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isRSIOB", isRSIOB, ignoreFalseConditions, separator) +
|
||||
ToString("isRSIOS", isRSIOS, ignoreFalseConditions, separator) +
|
||||
ToString("isRSICrossedOverOB", isRSICrossedOverOB, ignoreFalseConditions, separator) +
|
||||
ToString("isRSICrossedOverOS", isRSICrossedOverOS, ignoreFalseConditions, separator) +
|
||||
ToString("isRSICrossedUnderOB", isRSICrossedUnderOB, ignoreFalseConditions, separator) +
|
||||
ToString("isRSICrossedUnderOS", isRSICrossedUnderOS, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSIBullish", isRSIBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSIBearish", isRSIBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSISwitchedToBullish", isRSISwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSISwitchedToBearish", isRSISwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSIOB", isRSIOB, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSIOS", isRSIOS, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSICrossedOverOB", isRSICrossedOverOB, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSICrossedOverOS", isRSICrossedOverOS, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSICrossedUnderOB", isRSICrossedUnderOB, ignoreFalseConditions, separator) +
|
||||
ToXString("isRSICrossedUnderOS", isRSICrossedUnderOS, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"DELTA: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isDeltaUp", isDeltaUp, ignoreFalseConditions, separator) +
|
||||
ToString("isDeltaDown", isDeltaDown, ignoreFalseConditions, separator) +
|
||||
ToString("isDeltaBullish", isDeltaBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isDeltaBearish", isDeltaBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isDeltaSwitchedToBullish", isDeltaSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isDeltaSwitchedToBearish", isDeltaSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isDeltaUp", isDeltaUp, ignoreFalseConditions, separator) +
|
||||
ToXString("isDeltaDown", isDeltaDown, ignoreFalseConditions, separator) +
|
||||
ToXString("isDeltaBullish", isDeltaBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isDeltaBearish", isDeltaBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isDeltaSwitchedToBullish", isDeltaSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isDeltaSwitchedToBearish", isDeltaSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"VOLUME: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isVolumeBullish", isVolumeBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isVolumeBearish", isVolumeBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isVolumeSwitchedToBullish", isVolumeSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isVolumeSwitchedToBearish", isVolumeSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isVolumeBullish", isVolumeBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isVolumeBearish", isVolumeBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isVolumeSwitchedToBullish", isVolumeSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isVolumeSwitchedToBearish", isVolumeSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"SIGNAL Bar: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isSBarBullish", isSBarBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isSBarBearish", isSBarBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isSBarSwitchedToBullish", isSBarSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isSBarSwitchedToBearish", isSBarSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSBarBullish", isSBarBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSBarBearish", isSBarBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSBarSwitchedToBullish", isSBarSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isSBarSwitchedToBearish", isSBarSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"XHK Signal Bar: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isHKSBarBullish", isHKSBarBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isHKSBarBearish", isHKSBarBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isHKSBarSwitchedToBullish", isHKSBarSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isHKSBarSwitchedToBearish", isHKSBarSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isHKSBarBullish", isHKSBarBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isHKSBarBearish", isHKSBarBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isHKSBarSwitchedToBullish", isHKSBarSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isHKSBarSwitchedToBearish", isHKSBarSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"Trend: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isTrendUp", isTrendUp, ignoreFalseConditions, separator) +
|
||||
ToString("isTrendDown", isTrendDown, ignoreFalseConditions, separator) +
|
||||
ToString("isTrendBullish", isTrendBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isTrendBearish", isTrendBearish, ignoreFalseConditions, separator) +
|
||||
ToString("isTrendSwitchedToBullish", isTrendSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToString("isTrendSwitchedToBearish", isTrendSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isTrendUp", isTrendUp, ignoreFalseConditions, separator) +
|
||||
ToXString("isTrendDown", isTrendDown, ignoreFalseConditions, separator) +
|
||||
ToXString("isTrendBullish", isTrendBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isTrendBearish", isTrendBearish, ignoreFalseConditions, separator) +
|
||||
ToXString("isTrendSwitchedToBullish", isTrendSwitchedToBullish, ignoreFalseConditions, separator) +
|
||||
ToXString("isTrendSwitchedToBearish", isTrendSwitchedToBearish, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"Peak: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isPeakSameLast", isPeakSameLast, ignoreFalseConditions, separator) +
|
||||
ToString("isPeakOverLast", isPeakOverLast, ignoreFalseConditions, separator) +
|
||||
ToString("isPeakUnderLast", isPeakUnderLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isPeakSameLast", isPeakSameLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isPeakOverLast", isPeakOverLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isPeakUnderLast", isPeakUnderLast, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"Vale: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("isValeSameLast", isValeSameLast, ignoreFalseConditions, separator) +
|
||||
ToString("isValeOverLast", isValeOverLast, ignoreFalseConditions, separator) +
|
||||
ToString("isValeUnderLast", isValeUnderLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isValeSameLast", isValeSameLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isValeOverLast", isValeOverLast, ignoreFalseConditions, separator) +
|
||||
ToXString("isValeUnderLast", isValeUnderLast, ignoreFalseConditions, separator) +
|
||||
""
|
||||
//
|
||||
;
|
||||
@@ -5721,7 +5721,7 @@ bool IsValid(ENUM_XCATB_DIRECTION_SHIFT_TYPES value)
|
||||
}
|
||||
|
||||
//
|
||||
string ToString(ENUM_XCATB_DIRECTION_SHIFT_TYPES value)
|
||||
string ToXString(ENUM_XCATB_DIRECTION_SHIFT_TYPES value)
|
||||
{
|
||||
return EnumToString(value);
|
||||
}
|
||||
@@ -5753,7 +5753,7 @@ ENUM_XCATB_DIRECTION_SHIFT_TYPES GetDirectionShiftType(XBoxZone &box)
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
//
|
||||
if (box.type == ToString(all[i]))
|
||||
if (box.type == ToXString(all[i]))
|
||||
{
|
||||
//
|
||||
result = all[i];
|
||||
|
||||
@@ -85,7 +85,7 @@ int OnInit()
|
||||
// Validate Inputs ...
|
||||
|
||||
//
|
||||
tag = ShortName + _Symbol + ToString(_Period);
|
||||
tag = ShortName + _Symbol + ToXString(_Period);
|
||||
|
||||
//
|
||||
// Set Indicator ShortName ...
|
||||
|
||||
@@ -413,6 +413,10 @@ bool IsValid(ENUM_X_DIRECTION value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
bool IsSpecifiedValid(ENUM_X_DIRECTION value)
|
||||
{
|
||||
return IsValid(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate value Has Specified Direction ...
|
||||
@@ -554,7 +558,10 @@ string ToString(ENUM_X_DIRECTION value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
string ToXString(ENUM_X_DIRECTION value)
|
||||
{
|
||||
return ToString(value);
|
||||
}
|
||||
//
|
||||
// END Direction ...
|
||||
//
|
||||
@@ -928,6 +935,10 @@ bool IsValid(ENUM_X_MARKET_CYCLES value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
bool IsSpecifiedValid(ENUM_X_MARKET_CYCLES value)
|
||||
{
|
||||
return IsValid(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts an String to it's related Market Cycle ...
|
||||
@@ -1007,6 +1018,10 @@ string ToString(ENUM_X_MARKET_CYCLES value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
string ToXString(ENUM_X_MARKET_CYCLES value)
|
||||
{
|
||||
return ToString(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve All Availabled Market Cycles ...
|
||||
|
||||
@@ -99,7 +99,7 @@ class XCXCATBEASignallerInputParser : public XCBase
|
||||
}
|
||||
|
||||
//
|
||||
result = XCATBEA_INPUTS_PREFIX + "_" + symbol + "_" + ToString(period);
|
||||
result = XCATBEA_INPUTS_PREFIX + "_" + symbol + "_" + ToXString(period);
|
||||
result = collector.GetFilePath(result);
|
||||
|
||||
//
|
||||
@@ -2693,46 +2693,46 @@ class XCXCATBEAExpert : public XCBase
|
||||
"-----------------------" + separator +
|
||||
"Validating: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("eaForceHasSwing", eaForceHasSwing, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceOBBarType", eaForceOBBarType, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceFVGBarType", eaForceFVGBarType, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasFLiquidity", eaForceHasFLiquidity, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRLiquidity", eaForceHasRLiquidity, ignoreFalseConditions, separator) +
|
||||
ToString("eaValidateGapSequence", eaValidateGapSequence, ignoreFalseConditions, separator) +
|
||||
ToString("eaValidateBlockEdgeBreakout", eaValidateBlockEdgeBreakout, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasSwing", eaForceHasSwing, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceOBBarType", eaForceOBBarType, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceFVGBarType", eaForceFVGBarType, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasFLiquidity", eaForceHasFLiquidity, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRLiquidity", eaForceHasRLiquidity, ignoreFalseConditions, separator) +
|
||||
ToXString("eaValidateGapSequence", eaValidateGapSequence, ignoreFalseConditions, separator) +
|
||||
ToXString("eaValidateBlockEdgeBreakout", eaValidateBlockEdgeBreakout, ignoreFalseConditions, separator) +
|
||||
//
|
||||
"-----------------------" + separator +
|
||||
"Filtering: " + separator +
|
||||
"-----------------------" + separator +
|
||||
ToString("eaFilterBasedOnKI", eaFilterBasedOnKI, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnPV", eaFilterBasedOnPV, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnSar", eaFilterBasedOnSar, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarSwitched", eaForceSarSwitched, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarOnBothSide", eaForceSarOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarHasBreakout", eaForceSarHasBreakout, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarHasReversalSide", eaForceSarHasReversalSide, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnRSI", eaFilterBasedOnRSI, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRSITrending", eaForceHasRSITrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRSIVPattern", eaForceHasRSIVPattern, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRSICrossing", eaForceHasRSICrossing, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnADX", eaFilterBasedOnADX, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasADXTrending", eaForceHasADXTrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasADXCrossing", eaForceHasADXCrossing, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnATR", eaFilterBasedOnATR, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasATRTrending", eaForceHasATRTrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasATRBreakout", eaForceHasATRBreakout, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnTrend", eaFilterBasedOnTrend, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendDir", eaForceHasTrendDir, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendPlace", eaForceHasTrendPlace, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendChange", eaForceHasTrendChange, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendTrending", eaForceHasTrendTrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendRejection", eaForceHasTrendRejection, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendLineInside", eaForceHasTrendLineInside, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendDirOnBothSide", eaForceHasTrendDirOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnDelta", eaFilterBasedOnDelta, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnVolume", eaFilterBasedOnVolume, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnSignalBar", eaFilterBasedOnSignalBar, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnHKSignalBar", eaFilterBasedOnHKSignalBar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnKI", eaFilterBasedOnKI, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnPV", eaFilterBasedOnPV, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnSar", eaFilterBasedOnSar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarSwitched", eaForceSarSwitched, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarOnBothSide", eaForceSarOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarHasBreakout", eaForceSarHasBreakout, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarHasReversalSide", eaForceSarHasReversalSide, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnRSI", eaFilterBasedOnRSI, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRSITrending", eaForceHasRSITrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRSIVPattern", eaForceHasRSIVPattern, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRSICrossing", eaForceHasRSICrossing, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnADX", eaFilterBasedOnADX, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasADXTrending", eaForceHasADXTrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasADXCrossing", eaForceHasADXCrossing, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnATR", eaFilterBasedOnATR, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasATRTrending", eaForceHasATRTrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasATRBreakout", eaForceHasATRBreakout, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnTrend", eaFilterBasedOnTrend, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendDir", eaForceHasTrendDir, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendPlace", eaForceHasTrendPlace, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendChange", eaForceHasTrendChange, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendTrending", eaForceHasTrendTrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendRejection", eaForceHasTrendRejection, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendLineInside", eaForceHasTrendLineInside, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendDirOnBothSide", eaForceHasTrendDirOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnDelta", eaFilterBasedOnDelta, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnVolume", eaFilterBasedOnVolume, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnSignalBar", eaFilterBasedOnSignalBar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnHKSignalBar", eaFilterBasedOnHKSignalBar, ignoreFalseConditions, separator) +
|
||||
//
|
||||
""
|
||||
//
|
||||
@@ -2769,132 +2769,132 @@ class XCXCATBEAExpert : public XCBase
|
||||
//
|
||||
"//" + separator +
|
||||
"// Common ..." + separator +
|
||||
ToString("eaMagicNumber", eaMagicNumber, separator) +
|
||||
ToString("eaSlippage", eaSlippage, separator) +
|
||||
ToString("eaLogSuffix", eaLogSuffix, separator) +
|
||||
ToXString("eaMagicNumber", eaMagicNumber, separator) +
|
||||
ToXString("eaSlippage", eaSlippage, separator) +
|
||||
ToXString("eaLogSuffix", eaLogSuffix, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Detector ..." + separator +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Validating ..." + separator +
|
||||
ToString("eaForceHasSwing", eaForceHasSwing, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceOBBarType", eaForceOBBarType, ignoreFalseConditions, separator) +
|
||||
ToString("eaMinRequiredOBBar", eaMinRequiredOBBar, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceFVGBarType", eaForceFVGBarType, ignoreFalseConditions, separator) +
|
||||
ToString("eaLiquidityLoopback", eaLiquidityLoopback, ignoreFalseConditions, separator) +
|
||||
ToString("eaMaxAllowedRange", ToString(eaMaxAllowedRange), separator) +
|
||||
ToString("eaMinAllowedRange", ToString(eaMinAllowedRange), separator) +
|
||||
ToString("eaForceHasFLiquidity", eaForceHasFLiquidity, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRLiquidity", eaForceHasRLiquidity, ignoreFalseConditions, separator) +
|
||||
ToString("eaValidateGapSequence", eaValidateGapSequence, ignoreFalseConditions, separator) +
|
||||
ToString("eaMinAllowedBlockLength", eaMinAllowedBlockLength, ignoreFalseConditions, separator) +
|
||||
ToString("eaValidateBlockEdgeBreakout", eaValidateBlockEdgeBreakout, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasSwing", eaForceHasSwing, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceOBBarType", eaForceOBBarType, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMinRequiredOBBar", eaMinRequiredOBBar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceFVGBarType", eaForceFVGBarType, ignoreFalseConditions, separator) +
|
||||
ToXString("eaLiquidityLoopback", eaLiquidityLoopback, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMaxAllowedRange", ToXString(eaMaxAllowedRange), separator) +
|
||||
ToXString("eaMinAllowedRange", ToXString(eaMinAllowedRange), separator) +
|
||||
ToXString("eaForceHasFLiquidity", eaForceHasFLiquidity, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRLiquidity", eaForceHasRLiquidity, ignoreFalseConditions, separator) +
|
||||
ToXString("eaValidateGapSequence", eaValidateGapSequence, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMinAllowedBlockLength", eaMinAllowedBlockLength, ignoreFalseConditions, separator) +
|
||||
ToXString("eaValidateBlockEdgeBreakout", eaValidateBlockEdgeBreakout, ignoreFalseConditions, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Filtering ..." + separator +
|
||||
ToString("eaFilterBasedOnKI", eaFilterBasedOnKI, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnPV", eaFilterBasedOnPV, ignoreFalseConditions, separator) +
|
||||
ToString("eaBosLoopback", eaBosLoopback, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnSar", eaFilterBasedOnSar, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarSwitched", eaForceSarSwitched, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarOnBothSide", eaForceSarOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarHasBreakout", eaForceSarHasBreakout, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceSarHasReversalSide", eaForceSarHasReversalSide, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnRSI", eaFilterBasedOnRSI, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRSITrending", eaForceHasRSITrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRSIVPattern", eaForceHasRSIVPattern, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasRSICrossing", eaForceHasRSICrossing, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnADX", eaFilterBasedOnADX, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasADXTrending", eaForceHasADXTrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasADXCrossing", eaForceHasADXCrossing, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnATR", eaFilterBasedOnATR, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasATRTrending", eaForceHasATRTrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasATRBreakout", eaForceHasATRBreakout, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnTrend", eaFilterBasedOnTrend, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendDir", eaForceHasTrendDir, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendPlace", eaForceHasTrendPlace, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendChange", eaForceHasTrendChange, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendTrending", eaForceHasTrendTrending, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendRejection", eaForceHasTrendRejection, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendLineInside", eaForceHasTrendLineInside, ignoreFalseConditions, separator) +
|
||||
ToString("eaForceHasTrendDirOnBothSide", eaForceHasTrendDirOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnDelta", eaFilterBasedOnDelta, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnVolume", eaFilterBasedOnVolume, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnSignalBar", eaFilterBasedOnSignalBar, ignoreFalseConditions, separator) +
|
||||
ToString("eaFilterBasedOnHKSignalBar", eaFilterBasedOnHKSignalBar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnKI", eaFilterBasedOnKI, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnPV", eaFilterBasedOnPV, ignoreFalseConditions, separator) +
|
||||
ToXString("eaBosLoopback", eaBosLoopback, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnSar", eaFilterBasedOnSar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarSwitched", eaForceSarSwitched, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarOnBothSide", eaForceSarOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarHasBreakout", eaForceSarHasBreakout, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceSarHasReversalSide", eaForceSarHasReversalSide, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnRSI", eaFilterBasedOnRSI, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRSITrending", eaForceHasRSITrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRSIVPattern", eaForceHasRSIVPattern, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasRSICrossing", eaForceHasRSICrossing, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnADX", eaFilterBasedOnADX, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasADXTrending", eaForceHasADXTrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasADXCrossing", eaForceHasADXCrossing, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnATR", eaFilterBasedOnATR, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasATRTrending", eaForceHasATRTrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasATRBreakout", eaForceHasATRBreakout, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnTrend", eaFilterBasedOnTrend, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendDir", eaForceHasTrendDir, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendPlace", eaForceHasTrendPlace, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendChange", eaForceHasTrendChange, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendTrending", eaForceHasTrendTrending, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendRejection", eaForceHasTrendRejection, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendLineInside", eaForceHasTrendLineInside, ignoreFalseConditions, separator) +
|
||||
ToXString("eaForceHasTrendDirOnBothSide", eaForceHasTrendDirOnBothSide, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnDelta", eaFilterBasedOnDelta, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnVolume", eaFilterBasedOnVolume, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnSignalBar", eaFilterBasedOnSignalBar, ignoreFalseConditions, separator) +
|
||||
ToXString("eaFilterBasedOnHKSignalBar", eaFilterBasedOnHKSignalBar, ignoreFalseConditions, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Signal ..." + separator +
|
||||
ToString("eaSignalR2R", eaSignalR2R, ignoreFalseConditions, separator) +
|
||||
ToString("eaSLATRMultiplier", ToString(eaSLATRMultiplier), separator) +
|
||||
ToString("eaAllowSignallingBasedOnConditions", eaAllowSignallingBasedOnConditions, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingBasedOnTriggerBlocks", eaAllowSignallingBasedOnTriggerBlocks, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingBasedOnTriggerBlocksInsideOther", eaAllowSignallingBasedOnTriggerBlocksInsideOther, ignoreFalseConditions, separator) +
|
||||
ToString("eaSecondsTriggersSLUsingFirstTriggerBlock", eaSecondsTriggersSLUsingFirstTriggerBlock, ignoreFalseConditions, separator) +
|
||||
ToString("eaApplyValidateAndFilterOnSelectInsideOthers", eaApplyValidateAndFilterOnSelectInsideOthers, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingConditions1", eaAllowSignallingConditions1, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingConditions2", eaAllowSignallingConditions2, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingConditions3", eaAllowSignallingConditions3, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingConditions4", eaAllowSignallingConditions4, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingConditions5", eaAllowSignallingConditions5, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowSignallingConditions6", eaAllowSignallingConditions6, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSignalR2R", eaSignalR2R, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSLATRMultiplier", ToXString(eaSLATRMultiplier), separator) +
|
||||
ToXString("eaAllowSignallingBasedOnConditions", eaAllowSignallingBasedOnConditions, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingBasedOnTriggerBlocks", eaAllowSignallingBasedOnTriggerBlocks, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingBasedOnTriggerBlocksInsideOther", eaAllowSignallingBasedOnTriggerBlocksInsideOther, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSecondsTriggersSLUsingFirstTriggerBlock", eaSecondsTriggersSLUsingFirstTriggerBlock, ignoreFalseConditions, separator) +
|
||||
ToXString("eaApplyValidateAndFilterOnSelectInsideOthers", eaApplyValidateAndFilterOnSelectInsideOthers, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingConditions1", eaAllowSignallingConditions1, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingConditions2", eaAllowSignallingConditions2, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingConditions3", eaAllowSignallingConditions3, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingConditions4", eaAllowSignallingConditions4, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingConditions5", eaAllowSignallingConditions5, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowSignallingConditions6", eaAllowSignallingConditions6, ignoreFalseConditions, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Volume ..." + separator +
|
||||
ToString("eaVolumeSelect", ToString(eaVolumeSelect), separator) +
|
||||
ToString("eaStaticVoluem", ToString(eaStaticVoluem), separator) +
|
||||
ToString("eaDynamicVolumeStepBalance", ToString(eaDynamicVolumeStepBalance), separator) +
|
||||
ToString("eaDynamicVolumeStepVolume", ToString(eaDynamicVolumeStepVolume), separator) +
|
||||
ToString("eaConstantRiskBalance", ToString(eaConstantRiskBalance), separator) +
|
||||
ToString("eaConstantPercent", ToString(eaConstantPercent), separator) +
|
||||
ToString("eaConstantBalance", ToString(eaConstantBalance), separator) +
|
||||
ToXString("eaVolumeSelect", ToXString(eaVolumeSelect), separator) +
|
||||
ToXString("eaStaticVoluem", ToXString(eaStaticVoluem), separator) +
|
||||
ToXString("eaDynamicVolumeStepBalance", ToXString(eaDynamicVolumeStepBalance), separator) +
|
||||
ToXString("eaDynamicVolumeStepVolume", ToXString(eaDynamicVolumeStepVolume), separator) +
|
||||
ToXString("eaConstantRiskBalance", ToXString(eaConstantRiskBalance), separator) +
|
||||
ToXString("eaConstantPercent", ToXString(eaConstantPercent), separator) +
|
||||
ToXString("eaConstantBalance", ToXString(eaConstantBalance), separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Management ..." + separator +
|
||||
ToString("eaSymbols", eaSymbols, separator) +
|
||||
ToString("eaAllowGuards", eaAllowGuards, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowTrade", eaAllowTrade, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowLongs", eaAllowLongs, ignoreFalseConditions, separator) +
|
||||
ToString("eaAllowShorts", eaAllowShorts, ignoreFalseConditions, separator) +
|
||||
ToString("eaSessions", eaSessions, separator) +
|
||||
ToString("eaRestrictionsPeriod", ToString(eaRestrictionsPeriod), separator) +
|
||||
ToString("eaMaxAllowedTPs", eaMaxAllowedTPs, ignoreFalseConditions, separator) +
|
||||
ToString("eaMaxAllowedSLs", eaMaxAllowedSLs, ignoreFalseConditions, separator) +
|
||||
ToString("eaMaxAllowedTrades", eaMaxAllowedTrades, ignoreFalseConditions, separator) +
|
||||
ToString("eaMaxAllowedPositions", eaMaxAllowedPositions, ignoreFalseConditions, separator) +
|
||||
ToString("eaMaxAllowedSpread", ToString(eaMaxAllowedSpread), separator) +
|
||||
ToString("eaMaxAllowedDrawdownFactor", ToString(eaMaxAllowedDrawdownFactor), separator) +
|
||||
ToString("eaCloseAllOpenTradesAt", eaCloseAllOpenTradesAt, separator) +
|
||||
ToXString("eaSymbols", eaSymbols, separator) +
|
||||
ToXString("eaAllowGuards", eaAllowGuards, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowTrade", eaAllowTrade, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowLongs", eaAllowLongs, ignoreFalseConditions, separator) +
|
||||
ToXString("eaAllowShorts", eaAllowShorts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSessions", eaSessions, separator) +
|
||||
ToXString("eaRestrictionsPeriod", ToXString(eaRestrictionsPeriod), separator) +
|
||||
ToXString("eaMaxAllowedTPs", eaMaxAllowedTPs, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMaxAllowedSLs", eaMaxAllowedSLs, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMaxAllowedTrades", eaMaxAllowedTrades, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMaxAllowedPositions", eaMaxAllowedPositions, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMaxAllowedSpread", ToXString(eaMaxAllowedSpread), separator) +
|
||||
ToXString("eaMaxAllowedDrawdownFactor", ToXString(eaMaxAllowedDrawdownFactor), separator) +
|
||||
ToXString("eaCloseAllOpenTradesAt", eaCloseAllOpenTradesAt, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Alert ..." + separator +
|
||||
ToString("eaEnableAlerts", eaEnableAlerts, ignoreFalseConditions, separator) +
|
||||
ToString("eaSaveAlerts", eaSaveAlerts, ignoreFalseConditions, separator) +
|
||||
ToString("eaLogAlerts", eaLogAlerts, ignoreFalseConditions, separator) +
|
||||
ToString("eaMailAlerts", eaMailAlerts, ignoreFalseConditions, separator) +
|
||||
ToString("eaPushAlerts", eaPushAlerts, ignoreFalseConditions, separator) +
|
||||
ToString("eaTerminalAlerts", eaTerminalAlerts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaEnableAlerts", eaEnableAlerts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSaveAlerts", eaSaveAlerts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaLogAlerts", eaLogAlerts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaMailAlerts", eaMailAlerts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaPushAlerts", eaPushAlerts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaTerminalAlerts", eaTerminalAlerts, ignoreFalseConditions, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Time Report ..." + separator +
|
||||
ToString("eaReportNewMonths", eaReportNewMonths, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportNewWeeks", eaReportNewWeeks, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportNewDays", eaReportNewDays, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportNewHours", eaReportNewHours, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportTrades", eaReportTrades, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportSignals", eaReportSignals, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportProtector", eaReportProtector, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportRestrictions", eaReportRestrictions, ignoreFalseConditions, separator) +
|
||||
ToString("eaReportAfterTradesBalance", eaReportAfterTradesBalance, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportNewMonths", eaReportNewMonths, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportNewWeeks", eaReportNewWeeks, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportNewDays", eaReportNewDays, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportNewHours", eaReportNewHours, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportTrades", eaReportTrades, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportSignals", eaReportSignals, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportProtector", eaReportProtector, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportRestrictions", eaReportRestrictions, ignoreFalseConditions, separator) +
|
||||
ToXString("eaReportAfterTradesBalance", eaReportAfterTradesBalance, ignoreFalseConditions, separator) +
|
||||
"" + separator +
|
||||
"//" + separator +
|
||||
"// Collector ..." + separator +
|
||||
ToString("eaSaveTrades", eaSaveTrades, ignoreFalseConditions, separator) +
|
||||
ToString("eaSaveSignals", eaSaveSignals, ignoreFalseConditions, separator) +
|
||||
ToString("eaSaveWins", eaSaveWins, ignoreFalseConditions, separator) +
|
||||
ToString("eaSaveLosts", eaSaveLosts, ignoreFalseConditions, separator) +
|
||||
ToString("eaSaveRestrictions", eaSaveRestrictions, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSaveTrades", eaSaveTrades, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSaveSignals", eaSaveSignals, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSaveWins", eaSaveWins, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSaveLosts", eaSaveLosts, ignoreFalseConditions, separator) +
|
||||
ToXString("eaSaveRestrictions", eaSaveRestrictions, ignoreFalseConditions, separator) +
|
||||
//
|
||||
""
|
||||
//
|
||||
|
||||
@@ -148,9 +148,9 @@ struct XCATBEASignallerInputs
|
||||
|
||||
//
|
||||
result =
|
||||
IsValid(symbol) &&
|
||||
IsValid(period) &&
|
||||
IsValid(provider) &&
|
||||
IsSpecifiedValid(symbol) &&
|
||||
IsSpecifiedValid(period) &&
|
||||
IsSpecifiedValid(provider) &&
|
||||
catbInputs.IsValid() &&
|
||||
riskToRewardRatio > 0;
|
||||
|
||||
|
||||
@@ -53,6 +53,10 @@ bool IsValid(ENUM_XCATB_PIVOTS value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
bool IsSpecifiedValid(ENUM_XCATB_PIVOTS value)
|
||||
{
|
||||
return IsValid(value);
|
||||
}
|
||||
|
||||
//
|
||||
string ToString(ENUM_XCATB_PIVOTS value)
|
||||
@@ -66,6 +70,10 @@ string ToString(ENUM_XCATB_PIVOTS value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
string ToXString(ENUM_XCATB_PIVOTS value)
|
||||
{
|
||||
return ToString(value);
|
||||
}
|
||||
|
||||
//
|
||||
ENUM_X_DIRECTION GetDirection(ENUM_XCATB_PIVOTS value)
|
||||
@@ -225,7 +233,7 @@ struct XCATBPivot
|
||||
type = XCATB_NONE;
|
||||
|
||||
//
|
||||
Clean(values);
|
||||
SpecifiedClean(values);
|
||||
|
||||
//
|
||||
ZeroMemory(this);
|
||||
@@ -245,11 +253,11 @@ struct XCATBPivot
|
||||
result =
|
||||
from < to &&
|
||||
value != 0 &&
|
||||
IsValid(to) &&
|
||||
IsValid(from) &&
|
||||
IsValid(type) &&
|
||||
IsValid(symbol) &&
|
||||
IsValid(period);
|
||||
IsSpecifiedValid(to) &&
|
||||
IsSpecifiedValid(from) &&
|
||||
IsSpecifiedValid(type) &&
|
||||
IsSpecifiedValid(symbol) &&
|
||||
IsSpecifiedValid(period);
|
||||
|
||||
//
|
||||
return result;
|
||||
@@ -310,7 +318,7 @@ struct XCATBPivot
|
||||
}
|
||||
|
||||
//
|
||||
if (!IsValid(forPeriod))
|
||||
if (!IsSpecifiedValid(forPeriod))
|
||||
{
|
||||
forPeriod = period;
|
||||
}
|
||||
@@ -347,7 +355,7 @@ struct XCATBPivot
|
||||
}
|
||||
|
||||
//
|
||||
if (!IsValid(forPeriod))
|
||||
if (!IsSpecifiedValid(forPeriod))
|
||||
{
|
||||
forPeriod = period;
|
||||
}
|
||||
@@ -384,7 +392,7 @@ struct XCATBPivot
|
||||
}
|
||||
|
||||
//
|
||||
if (!IsValid(forPeriod))
|
||||
if (!IsSpecifiedValid(forPeriod))
|
||||
{
|
||||
forPeriod = period;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,10 @@ string ToString(ENUM_XCATBEA_TRADE_RESTRICTION_PERIOD value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
string ToXString(ENUM_XCATBEA_TRADE_RESTRICTION_PERIOD value)
|
||||
{
|
||||
return ToString(value);
|
||||
}
|
||||
|
||||
//
|
||||
enum ENUM_XCATBEA_TRADE_FINALIZATION
|
||||
@@ -77,6 +81,10 @@ string ToString(ENUM_XCATBEA_TRADE_FINALIZATION value)
|
||||
//
|
||||
return result;
|
||||
}
|
||||
string ToXString(ENUM_XCATBEA_TRADE_FINALIZATION value)
|
||||
{
|
||||
return ToString(value);
|
||||
}
|
||||
|
||||
//
|
||||
// Position Selecting ...
|
||||
@@ -129,12 +137,20 @@ bool IsValid(ENUM_XCATBEA_POSITION_SELECT_TYPES value)
|
||||
{
|
||||
return value != XCATBEA_POSITION_SELECT_NONE;
|
||||
}
|
||||
bool IsSpecifiedValid(ENUM_XCATBEA_POSITION_SELECT_TYPES value)
|
||||
{
|
||||
return IsValid(value);
|
||||
}
|
||||
|
||||
//
|
||||
string ToString(ENUM_XCATBEA_POSITION_SELECT_TYPES value)
|
||||
{
|
||||
return EnumToString(value);
|
||||
}
|
||||
string ToXString(ENUM_XCATBEA_POSITION_SELECT_TYPES value)
|
||||
{
|
||||
return ToString(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Select Specified Position's Related Position(s)
|
||||
@@ -1016,7 +1032,7 @@ struct XCATBEASymbolInfo
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = IsValid(symbol);
|
||||
result = IsSpecifiedValid(symbol);
|
||||
|
||||
//
|
||||
return result;
|
||||
@@ -1057,15 +1073,15 @@ struct XCATBEASymbolInfo
|
||||
"-------------------" + "\n" +
|
||||
"Restrictions: " + "\n" +
|
||||
"-------------------" + "\n" +
|
||||
"Symbol: " + ToString(symbol) + "\n" +
|
||||
"Period: " + ToString(period) + "\n" +
|
||||
"Symbol: " + ToXString(symbol) + "\n" +
|
||||
"Period: " + ToXString(period) + "\n" +
|
||||
"Start: " + ToFormatString(managedStart) + "\n" +
|
||||
"Balance: " + ToString(managedBalance) + "\n" +
|
||||
"Balance: " + ToXString(managedBalance) + "\n" +
|
||||
"-------------------" + "\n" +
|
||||
"Trades: " + ToString(managedTrades) + "\n" +
|
||||
"SL: " + ToString(managedSLs) + "\n" +
|
||||
"TP: " + ToString(managedTPs) + "\n" +
|
||||
"Profit: " + ToString(managedProfits) + "\n" +
|
||||
"Trades: " + ToXString(managedTrades) + "\n" +
|
||||
"SL: " + ToXString(managedSLs) + "\n" +
|
||||
"TP: " + ToXString(managedTPs) + "\n" +
|
||||
"Profit: " + ToXString(managedProfits) + "\n" +
|
||||
"";
|
||||
|
||||
//
|
||||
@@ -1113,8 +1129,8 @@ struct XCATBEATradeSession
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = IsValid(start) &&
|
||||
IsValid(end);
|
||||
result = IsSpecifiedValid(start) &&
|
||||
IsSpecifiedValid(end);
|
||||
if (!result)
|
||||
{
|
||||
return result;
|
||||
@@ -1178,7 +1194,7 @@ struct XCATBEASymbolSession
|
||||
{
|
||||
//
|
||||
symbol = NULL;
|
||||
Clean(sessions);
|
||||
SpecifiedClean(sessions);
|
||||
|
||||
//
|
||||
ZeroMemory(this);
|
||||
@@ -1192,7 +1208,7 @@ struct XCATBEASymbolSession
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = IsValid(symbol);
|
||||
result = IsSpecifiedValid(symbol);
|
||||
|
||||
//
|
||||
return result;
|
||||
@@ -1363,15 +1379,15 @@ struct XCATBEATrade
|
||||
//
|
||||
result =
|
||||
//
|
||||
ToString("Swap", swap) +
|
||||
ToString("Profit", profit) +
|
||||
ToString("Commission", commission) +
|
||||
ToString("Finalize", ToString(finalize)) +
|
||||
ToString("PositionID", positionID) +
|
||||
ToString("----------------") + "\n" +
|
||||
ToString("Signaled At", ToFormatString(signaledAt)) +
|
||||
ToString("Executed At", ToFormatString(executedAt)) +
|
||||
ToString("Finalized At", ToFormatString(finalizedAt))
|
||||
ToXString("Swap", swap) +
|
||||
ToXString("Profit", profit) +
|
||||
ToXString("Commission", commission) +
|
||||
ToXString("Finalize", ToXString(finalize)) +
|
||||
ToXString("PositionID", positionID) +
|
||||
ToXString("----------------") + "\n" +
|
||||
ToXString("Signaled At", ToFormatString(signaledAt)) +
|
||||
ToXString("Executed At", ToFormatString(executedAt)) +
|
||||
ToXString("Finalized At", ToFormatString(finalizedAt))
|
||||
//
|
||||
;
|
||||
|
||||
@@ -1454,9 +1470,9 @@ struct XCATBEATrade
|
||||
{
|
||||
//
|
||||
result +=
|
||||
ToString("----------------") + "\n" +
|
||||
ToString("Summary: ") + "\n" +
|
||||
ToString("----------------") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
ToXString("Summary: ") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
summary + "\n";
|
||||
}
|
||||
|
||||
@@ -1465,9 +1481,9 @@ struct XCATBEATrade
|
||||
{
|
||||
//
|
||||
result +=
|
||||
ToString("----------------") + "\n" +
|
||||
ToString("Signal: ") + "\n" +
|
||||
ToString("----------------") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
ToXString("Signal: ") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
signalSummary + "\n";
|
||||
}
|
||||
|
||||
@@ -1476,9 +1492,9 @@ struct XCATBEATrade
|
||||
{
|
||||
//
|
||||
result +=
|
||||
ToString("----------------") + "\n" +
|
||||
ToString("Conditions: ") + "\n" +
|
||||
ToString("----------------") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
ToXString("Conditions: ") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
conditionsSummary + "\n";
|
||||
}
|
||||
|
||||
@@ -1560,7 +1576,7 @@ struct XCATBEATrade
|
||||
}
|
||||
}
|
||||
}
|
||||
Clean(condParts);
|
||||
SpecifiedClean(condParts);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1570,19 +1586,19 @@ struct XCATBEATrade
|
||||
//
|
||||
result =
|
||||
"(" + "\n" +
|
||||
"\\" + "\\" + " " + ToString("Type", ToString(signal.type)) +
|
||||
"\\" + "\\" + " " + ToString("Profit", profit) +
|
||||
"\\" + "\\" + " " + ToString("Finalize", ToString(finalize)) +
|
||||
"\\" + "\\" + " " + ToString("PositionID", positionID) +
|
||||
"\\" + "\\" + " " + ToString("----------------") + "\n" +
|
||||
"\\" + "\\" + " " + ToString("Signaled At", ToFormatString(signaledAt)) +
|
||||
"\\" + "\\" + " " + ToString("Executed At", ToFormatString(executedAt)) +
|
||||
"\\" + "\\" + " " + ToString("Finalized At", ToFormatString(finalizedAt)) +
|
||||
"\\" + "\\" + " " + ToString("----------------") + "\n" +
|
||||
"\\" + "\\" + " " + ToString("Scores:") + "\n" +
|
||||
"\\" + "\\" + " " + ToString("Bullish", bullishScore) +
|
||||
"\\" + "\\" + " " + ToString("Bearish", bearishScore) +
|
||||
"\\" + "\\" + " " + ToString("----------------") + "\n" +
|
||||
"\\" + "\\" + " " + ToXString("Type", ToXString(signal.type)) +
|
||||
"\\" + "\\" + " " + ToXString("Profit", profit) +
|
||||
"\\" + "\\" + " " + ToXString("Finalize", ToXString(finalize)) +
|
||||
"\\" + "\\" + " " + ToXString("PositionID", positionID) +
|
||||
"\\" + "\\" + " " + ToXString("----------------") + "\n" +
|
||||
"\\" + "\\" + " " + ToXString("Signaled At", ToFormatString(signaledAt)) +
|
||||
"\\" + "\\" + " " + ToXString("Executed At", ToFormatString(executedAt)) +
|
||||
"\\" + "\\" + " " + ToXString("Finalized At", ToFormatString(finalizedAt)) +
|
||||
"\\" + "\\" + " " + ToXString("----------------") + "\n" +
|
||||
"\\" + "\\" + " " + ToXString("Scores:") + "\n" +
|
||||
"\\" + "\\" + " " + ToXString("Bullish", bullishScore) +
|
||||
"\\" + "\\" + " " + ToXString("Bearish", bearishScore) +
|
||||
"\\" + "\\" + " " + ToXString("----------------") + "\n" +
|
||||
conditionsStr +
|
||||
(IsValid(conditionsStr) ? "" : "") +
|
||||
") && ";
|
||||
@@ -2206,12 +2222,12 @@ class XCXCATBEATradeManager : public XCBase
|
||||
|
||||
//
|
||||
string message = prefix +
|
||||
ToString(iPosition.type) +
|
||||
ToXString(iPosition.type) +
|
||||
" Position: " +
|
||||
ToString(iPosition.ticket) +
|
||||
ToXString(iPosition.ticket) +
|
||||
(isRFDone ? " RF" : "") +
|
||||
(isPCDone ? " PC" : "") +
|
||||
" On Traget: " + ToString(jTarget.target) +
|
||||
" On Traget: " + ToXString(jTarget.target) +
|
||||
" Successfully ...";
|
||||
HandleReportProtector(message);
|
||||
}
|
||||
@@ -2655,7 +2671,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
|
||||
//
|
||||
// Handle Balance Reporting ...
|
||||
string prefix = "TP: " + ToString(trades[idx].profit);
|
||||
string prefix = "TP: " + ToXString(trades[idx].profit);
|
||||
HandleReportBalance(prefix);
|
||||
|
||||
//
|
||||
@@ -2709,7 +2725,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
|
||||
//
|
||||
// Handle Balance Reporting ...
|
||||
string prefix = "SL: " + ToString(trades[idx].profit);
|
||||
string prefix = "SL: " + ToXString(trades[idx].profit);
|
||||
HandleReportBalance(prefix);
|
||||
|
||||
//
|
||||
@@ -2803,7 +2819,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
? "Profit"
|
||||
: "Loss") +
|
||||
": " +
|
||||
ToString(trades[idx].profit);
|
||||
ToXString(trades[idx].profit);
|
||||
HandleReportBalance(prefix);
|
||||
|
||||
//
|
||||
@@ -2850,7 +2866,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
{
|
||||
//
|
||||
// Handle Balance Reporting ...
|
||||
string prefix = "Partially Closed: " + ToString(ticket);
|
||||
string prefix = "Partially Closed: " + ToXString(ticket);
|
||||
|
||||
//
|
||||
// Handle Balance Reporting ...
|
||||
@@ -2887,7 +2903,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
if (result)
|
||||
{
|
||||
//
|
||||
string message = prefix + "Force Close (" + ToString(closedsCount) + ") Trades at Specified Time ...";
|
||||
string message = prefix + "Force Close (" + ToXString(closedsCount) + ") Trades at Specified Time ...";
|
||||
HandleReportProtector(message);
|
||||
}
|
||||
|
||||
@@ -3100,7 +3116,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
result = collector
|
||||
.GetFilePath("Conditions" + "\\" +
|
||||
trade.signal.symbol + "\\" +
|
||||
ToString(trade.signal.period) + "_wins");
|
||||
ToXString(trade.signal.period) + "_wins");
|
||||
|
||||
//
|
||||
return result;
|
||||
@@ -3116,7 +3132,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
result = collector
|
||||
.GetFilePath("Conditions" + "\\" +
|
||||
trade.signal.symbol + "\\" +
|
||||
ToString(trade.signal.period) + "_losts");
|
||||
ToXString(trade.signal.period) + "_losts");
|
||||
|
||||
//
|
||||
return result;
|
||||
@@ -3160,7 +3176,7 @@ class XCXCATBEATradeManager : public XCBase
|
||||
(IsValid(prefix)
|
||||
? prefix + " | "
|
||||
: "") +
|
||||
"Account Balance: " + ToString(balance) + currency;
|
||||
"Account Balance: " + ToXString(balance) + currency;
|
||||
alert.SendAlert(message);
|
||||
}
|
||||
|
||||
@@ -3263,14 +3279,14 @@ class XCXCATBEATradeManager : public XCBase
|
||||
// Generate Content ...
|
||||
string content = "";
|
||||
content +=
|
||||
ToString("----------------") + "\n" +
|
||||
ToString("Signal: ") + "\n" +
|
||||
ToString("----------------") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
ToXString("Signal: ") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
signal.ToString() + "\n";
|
||||
content +=
|
||||
ToString("----------------") + "\n" +
|
||||
ToString("Conditions: ") + "\n" +
|
||||
ToString("----------------") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
ToXString("Conditions: ") + "\n" +
|
||||
ToXString("----------------") + "\n" +
|
||||
signal.conditions + "\n";
|
||||
|
||||
//
|
||||
|
||||
@@ -103,7 +103,7 @@ struct XCATBEAStrategyConditions
|
||||
triggerTime = NULL;
|
||||
|
||||
//
|
||||
Clean(targets);
|
||||
SpecifiedClean(targets);
|
||||
|
||||
//
|
||||
pivotZone.Clean();
|
||||
@@ -214,7 +214,7 @@ struct XCATBEAStrategyConditions
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = IsValid(setupTime) &&
|
||||
result = IsSpecifiedValid(setupTime) &&
|
||||
HasDirection(dir);
|
||||
if (!result)
|
||||
{
|
||||
@@ -262,9 +262,9 @@ struct XCATBEAStrategyConditions
|
||||
result =
|
||||
//
|
||||
sl > 0 &&
|
||||
IsValid(symbol) &&
|
||||
IsValid(period) &&
|
||||
IsValid(triggerTime) &&
|
||||
IsSpecifiedValid(symbol) &&
|
||||
IsSpecifiedValid(period) &&
|
||||
IsSpecifiedValid(triggerTime) &&
|
||||
type != X_POSITION_TYPE_ALL &&
|
||||
type != X_POSITION_TYPE_NONE
|
||||
//
|
||||
@@ -1461,7 +1461,7 @@ bool DetectSignalZone(
|
||||
isBullish
|
||||
? clrAqua
|
||||
: clrMagenta;
|
||||
string iName = signalZone.type + "_Conditions_" + ToString(iDir) + "_" + ToString(((int)conditions.time));
|
||||
string iName = signalZone.type + "_Conditions_" + ToXString(iDir) + "_" + ToXString(((int)conditions.time));
|
||||
|
||||
//
|
||||
CChartObjectVLine *iObj = new CChartObjectVLine();
|
||||
|
||||
Reference in New Issue
Block a user