From b5723251fc7dfe8d9707bbcb163ac227b61d849f Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Wed, 27 Mar 2024 03:14:32 +0330 Subject: [PATCH] Resolve XGBUS5 XTD Long Stopouts in MetaQuotes ... --- ...aherelm.xgpus5.provider.indicators.lib.mq5 | 127 +++++++++++------- ...aherelm.xgpus5.provider.indicators.lib.mq5 | 127 +++++++++++------- ...aherelm.xgpus5.provider.indicators.lib.mq5 | 127 +++++++++++------- 3 files changed, 237 insertions(+), 144 deletions(-) diff --git a/BKP/Main/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 b/BKP/Main/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 index b63ca648..1e94cab8 100644 --- a/BKP/Main/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 +++ b/BKP/Main/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 @@ -1660,25 +1660,11 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXCHMAMCFastOverSlow) && ( // - ((mConditions.isXTMBullish && - mConditions.isXAMABullish) && - ( - // - (mConditions.isXTDSignalCrossedOverBear && - ( - // - (mConditions.isXCHMALCPeak && - mConditions.isXTSCurrentMax && - mConditions.isXCHLHSCMCLLSame && - mConditions.isXTSCurrentCrossedOverNearest) - // - ) - // - ) - // - ) - // - ) + (mConditions.isXCHMALCPeak && + mConditions.isXTSCurrentMax && + mConditions.isXCHLHSCMCLLSame && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) // ) // @@ -1752,33 +1738,11 @@ bool XGPUS5XTDHasLongSignal() (mConditions.isXCHMAMCTrendsUp && ( // - (mConditions.isXTSCurrentUnderFarest && - mConditions.isXTSCurrentCrossedUnderNearest) + mConditions.isXTSCurrentUnderFarest // || // - ((mConditions.isXCHMAMCVale && - mConditions.isXCHMALCPeak && - mConditions.isXCHLHMCLCHHSame) && - ( - // - ((mConditions.isXAMAVale && - mConditions.isXTSCurrentCrossedUnderNearest) && - ( - // - mConditions.isXAMABearish - // - || - // - mConditions.isXAMANeutural - // - ) - // - ) - // - ) - // - ) + mConditions.isXTSCurrentCrossedUnderNearest // ) // @@ -1939,6 +1903,16 @@ bool XGPUS5XTDHasLongSignal() // || // + (mConditions.isXTMNeutural && + mConditions.isXAMANeutural) + // + || + // + (mConditions.isXAMAVale && + mConditions.isXTDBearishVale) + // + || + // (mConditions.isXTMStartBullish && mConditions.isXAMAStartBullish) // @@ -2306,12 +2280,18 @@ bool XGPUS5XTDHasLongSignal() // || // - (mConditions.isXTSCurrentUnderFarest && + (mConditions.isXTSCurrentCrossedUnderMediest && ( // - (mConditions.isXTSCurrentCrossedUnderMediest && + (mConditions.isXTSCurrentUnderFarest && mConditions.isXTSCurrentCrossedUnderFarest) // + || + // + (!mConditions.isXCHMASCTrendsUp && + !mConditions.isXCHMASCTrendsDown && + mConditions.isXCHMASCFastOverSlow) + // ) // ) @@ -2330,8 +2310,7 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXAMABullish) && ( // - (mConditions.isXCHMAMCPeak && - mConditions.isXCHMALCVale && + (mConditions.isXCHMALCVale && mConditions.isXTSCurrentMax && mConditions.isXTDSignalCrossedOverBear) // @@ -2369,6 +2348,34 @@ bool XGPUS5XTDHasLongSignal() // ) // + || + // + ((!mConditions.isXCHMASCTrendsUp && + !mConditions.isXCHMASCTrendsDown && + mConditions.isXCHMASCFastOverSlow) && + ( + // + ((mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax) && + ( + // + (mConditions.isXTMNeutural && + mConditions.isXAMANeutural) + // + || + // + (mConditions.isXTMEndBullish && + mConditions.isXAMAEndBullish) + // + ) + // + ) + // + ) + // + ) + // ) // ) @@ -2696,6 +2703,13 @@ bool XGPUS5XTDHasLongSignal() // ) // + || + // + (mConditions.isXCHMAMCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDBearishVale && + mConditions.isXCHMASCUnderMin) + // ) // ) @@ -3863,7 +3877,24 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXCHMAMCFastOverSlow) && ( // - false + (mConditions.isXTSCurrentUnderFarest && + ( + // + ((mConditions.isXTMBullish && + mConditions.isXAMABullish) && + ( + // + (mConditions.isXCHMALCPeak && + mConditions.isXTSCurrentMin && + mConditions.isXAMAStartBullish) + // + ) + // + ) + // + ) + // + ) // ) // diff --git a/Projects/XGPUS5/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 b/Projects/XGPUS5/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 index b63ca648..1e94cab8 100644 --- a/Projects/XGPUS5/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 +++ b/Projects/XGPUS5/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 @@ -1660,25 +1660,11 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXCHMAMCFastOverSlow) && ( // - ((mConditions.isXTMBullish && - mConditions.isXAMABullish) && - ( - // - (mConditions.isXTDSignalCrossedOverBear && - ( - // - (mConditions.isXCHMALCPeak && - mConditions.isXTSCurrentMax && - mConditions.isXCHLHSCMCLLSame && - mConditions.isXTSCurrentCrossedOverNearest) - // - ) - // - ) - // - ) - // - ) + (mConditions.isXCHMALCPeak && + mConditions.isXTSCurrentMax && + mConditions.isXCHLHSCMCLLSame && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) // ) // @@ -1752,33 +1738,11 @@ bool XGPUS5XTDHasLongSignal() (mConditions.isXCHMAMCTrendsUp && ( // - (mConditions.isXTSCurrentUnderFarest && - mConditions.isXTSCurrentCrossedUnderNearest) + mConditions.isXTSCurrentUnderFarest // || // - ((mConditions.isXCHMAMCVale && - mConditions.isXCHMALCPeak && - mConditions.isXCHLHMCLCHHSame) && - ( - // - ((mConditions.isXAMAVale && - mConditions.isXTSCurrentCrossedUnderNearest) && - ( - // - mConditions.isXAMABearish - // - || - // - mConditions.isXAMANeutural - // - ) - // - ) - // - ) - // - ) + mConditions.isXTSCurrentCrossedUnderNearest // ) // @@ -1939,6 +1903,16 @@ bool XGPUS5XTDHasLongSignal() // || // + (mConditions.isXTMNeutural && + mConditions.isXAMANeutural) + // + || + // + (mConditions.isXAMAVale && + mConditions.isXTDBearishVale) + // + || + // (mConditions.isXTMStartBullish && mConditions.isXAMAStartBullish) // @@ -2306,12 +2280,18 @@ bool XGPUS5XTDHasLongSignal() // || // - (mConditions.isXTSCurrentUnderFarest && + (mConditions.isXTSCurrentCrossedUnderMediest && ( // - (mConditions.isXTSCurrentCrossedUnderMediest && + (mConditions.isXTSCurrentUnderFarest && mConditions.isXTSCurrentCrossedUnderFarest) // + || + // + (!mConditions.isXCHMASCTrendsUp && + !mConditions.isXCHMASCTrendsDown && + mConditions.isXCHMASCFastOverSlow) + // ) // ) @@ -2330,8 +2310,7 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXAMABullish) && ( // - (mConditions.isXCHMAMCPeak && - mConditions.isXCHMALCVale && + (mConditions.isXCHMALCVale && mConditions.isXTSCurrentMax && mConditions.isXTDSignalCrossedOverBear) // @@ -2369,6 +2348,34 @@ bool XGPUS5XTDHasLongSignal() // ) // + || + // + ((!mConditions.isXCHMASCTrendsUp && + !mConditions.isXCHMASCTrendsDown && + mConditions.isXCHMASCFastOverSlow) && + ( + // + ((mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax) && + ( + // + (mConditions.isXTMNeutural && + mConditions.isXAMANeutural) + // + || + // + (mConditions.isXTMEndBullish && + mConditions.isXAMAEndBullish) + // + ) + // + ) + // + ) + // + ) + // ) // ) @@ -2696,6 +2703,13 @@ bool XGPUS5XTDHasLongSignal() // ) // + || + // + (mConditions.isXCHMAMCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDBearishVale && + mConditions.isXCHMASCUnderMin) + // ) // ) @@ -3863,7 +3877,24 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXCHMAMCFastOverSlow) && ( // - false + (mConditions.isXTSCurrentUnderFarest && + ( + // + ((mConditions.isXTMBullish && + mConditions.isXAMABullish) && + ( + // + (mConditions.isXCHMALCPeak && + mConditions.isXTSCurrentMin && + mConditions.isXAMAStartBullish) + // + ) + // + ) + // + ) + // + ) // ) // diff --git a/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 b/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 index b63ca648..1e94cab8 100644 --- a/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 +++ b/Providers/x-saherelm.xgpus5.provider.indicators.lib.mq5 @@ -1660,25 +1660,11 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXCHMAMCFastOverSlow) && ( // - ((mConditions.isXTMBullish && - mConditions.isXAMABullish) && - ( - // - (mConditions.isXTDSignalCrossedOverBear && - ( - // - (mConditions.isXCHMALCPeak && - mConditions.isXTSCurrentMax && - mConditions.isXCHLHSCMCLLSame && - mConditions.isXTSCurrentCrossedOverNearest) - // - ) - // - ) - // - ) - // - ) + (mConditions.isXCHMALCPeak && + mConditions.isXTSCurrentMax && + mConditions.isXCHLHSCMCLLSame && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) // ) // @@ -1752,33 +1738,11 @@ bool XGPUS5XTDHasLongSignal() (mConditions.isXCHMAMCTrendsUp && ( // - (mConditions.isXTSCurrentUnderFarest && - mConditions.isXTSCurrentCrossedUnderNearest) + mConditions.isXTSCurrentUnderFarest // || // - ((mConditions.isXCHMAMCVale && - mConditions.isXCHMALCPeak && - mConditions.isXCHLHMCLCHHSame) && - ( - // - ((mConditions.isXAMAVale && - mConditions.isXTSCurrentCrossedUnderNearest) && - ( - // - mConditions.isXAMABearish - // - || - // - mConditions.isXAMANeutural - // - ) - // - ) - // - ) - // - ) + mConditions.isXTSCurrentCrossedUnderNearest // ) // @@ -1939,6 +1903,16 @@ bool XGPUS5XTDHasLongSignal() // || // + (mConditions.isXTMNeutural && + mConditions.isXAMANeutural) + // + || + // + (mConditions.isXAMAVale && + mConditions.isXTDBearishVale) + // + || + // (mConditions.isXTMStartBullish && mConditions.isXAMAStartBullish) // @@ -2306,12 +2280,18 @@ bool XGPUS5XTDHasLongSignal() // || // - (mConditions.isXTSCurrentUnderFarest && + (mConditions.isXTSCurrentCrossedUnderMediest && ( // - (mConditions.isXTSCurrentCrossedUnderMediest && + (mConditions.isXTSCurrentUnderFarest && mConditions.isXTSCurrentCrossedUnderFarest) // + || + // + (!mConditions.isXCHMASCTrendsUp && + !mConditions.isXCHMASCTrendsDown && + mConditions.isXCHMASCFastOverSlow) + // ) // ) @@ -2330,8 +2310,7 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXAMABullish) && ( // - (mConditions.isXCHMAMCPeak && - mConditions.isXCHMALCVale && + (mConditions.isXCHMALCVale && mConditions.isXTSCurrentMax && mConditions.isXTDSignalCrossedOverBear) // @@ -2369,6 +2348,34 @@ bool XGPUS5XTDHasLongSignal() // ) // + || + // + ((!mConditions.isXCHMASCTrendsUp && + !mConditions.isXCHMASCTrendsDown && + mConditions.isXCHMASCFastOverSlow) && + ( + // + ((mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax) && + ( + // + (mConditions.isXTMNeutural && + mConditions.isXAMANeutural) + // + || + // + (mConditions.isXTMEndBullish && + mConditions.isXAMAEndBullish) + // + ) + // + ) + // + ) + // + ) + // ) // ) @@ -2696,6 +2703,13 @@ bool XGPUS5XTDHasLongSignal() // ) // + || + // + (mConditions.isXCHMAMCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDBearishVale && + mConditions.isXCHMASCUnderMin) + // ) // ) @@ -3863,7 +3877,24 @@ bool XGPUS5XTDHasLongSignal() mConditions.isXCHMAMCFastOverSlow) && ( // - false + (mConditions.isXTSCurrentUnderFarest && + ( + // + ((mConditions.isXTMBullish && + mConditions.isXAMABullish) && + ( + // + (mConditions.isXCHMALCPeak && + mConditions.isXTSCurrentMin && + mConditions.isXAMAStartBullish) + // + ) + // + ) + // + ) + // + ) // ) //