diff --git a/BKP/Main/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 b/BKP/Main/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 index e05b9973..c66a6773 100644 --- a/BKP/Main/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 +++ b/BKP/Main/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 @@ -1625,6 +1625,17 @@ bool XAU5XTDHasLongSignal() mConditions.isXAMAStartBullish && mConditions.isXTDSignalCrossedOverBear) // + || + // + (mConditions.isXTMNeutural && + mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXAMANeutural && + mConditions.isXCHMALCTrendsDown && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverFarest && + mConditions.isXTSCurrentCrossedOverNearest) + // ) // ) @@ -1671,6 +1682,24 @@ bool XAU5XTDHasLongSignal() // ) // + || + // + // Check LC Fast Under Slow ... + ((mConditions.isXCHMALCFastUnderSlow || + mConditions.isXCHMALCFastCrossedUnderSlow) && + ( + // + (mConditions.isXTMBullish && + mConditions.isXAMABullish && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXLHHHDecreased && + mConditions.isXTDSignalCrossedOverBear) + // + ) + // + ) + // ) // ) @@ -1765,6 +1794,13 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXCHMAMCVale && + mConditions.isXCHMALCVale && + mConditions.isXTDBearishVale && + mConditions.isXLHLLIncreased) + // + || + // // Check if LC Fast Over Slow .. ((mConditions.isXCHMALCFastOverSlow || mConditions.isXCHMALCFastCrossedOverSlow) && @@ -1921,6 +1957,16 @@ bool XAU5XTDHasLongSignal() mConditions.isXTDBullOverBear && mConditions.isXTDSignalCrossedOverBear) // + || + // + (mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverFarest && + mConditions.isXTSCurrentCrossedOverNearest && + mConditions.isXTSCurrentCrossedOverMediest) + // ) // ) @@ -1938,7 +1984,23 @@ bool XAU5XTDHasLongSignal() !mConditions.isXLHLLSameInLength) && // ( - false) + // + // Check if MC Fast Under Slow ... + ((mConditions.isXCHMAMCFastUnderSlow || + mConditions.isXCHMAMCFastCrossedUnderSlow) && + ( + // + (mConditions.isXAMANeutural && + mConditions.isXCHMAMCTrendsUp && + mConditions.isXCHLHMCLCHHSame && + mConditions.isXTSCurrentUnderFarest && + mConditions.isXTDSignalCrossedOverBear) + // + ) + // + ) + // + ) // ) // @@ -2043,6 +2105,11 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTSCurrentUnderNearest && + mConditions.isXTSCurrentCrossedUnderNearest) + // + || + // (mConditions.isXTMNeutural && mConditions.isXAMANeutural && mConditions.isXTSCurrentMax && @@ -2065,11 +2132,23 @@ bool XAU5XTDHasLongSignal() // || // - (mConditions.isXLHLLIncreased && - mConditions.isXTMStartBullish && - mConditions.isXAMAStartBullish && - mConditions.isXTSCurrentUnderFarest && - mConditions.isXLHPriceCrossedOverSignal) + ((mConditions.isXLHLLIncreased && + mConditions.isXTMStartBullish && + mConditions.isXAMAStartBullish && + mConditions.isXLHPriceCrossedOverSignal) && + ( + // + mConditions.isXTSCurrentCrossedUnderFarest + // + || + // + (mConditions.isXTSCurrentMax && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) + // + ) + // + ) // ) // @@ -2099,6 +2178,14 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTMBullish && + mConditions.isXAMABullish && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTSCurrentCrossedUnderNearest) + // + || + // (mConditions.isXCHMAMCPeak && mConditions.isXTMNeutural && mConditions.isXAMANeutural && @@ -2211,6 +2298,15 @@ bool XAU5XTDHasLongSignal() mConditions.isXTSCurrentCrossedOverNearest && mConditions.isXTSCurrentCrossedOverMediest) // + || + // + (mConditions.isXCHMASCPeak && + mConditions.isXCHMASCOverMax && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTSCurrentOverFarest && + mConditions.isXTSCurrentOverNearest && + mConditions.isXTSCurrentOverMediest) + // ) // ) @@ -2289,6 +2385,16 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTMBullish && + mConditions.isXCHMAMCPeak && + mConditions.isXAMABullish && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTDSignalCrossedOverBear) + // + || + // ((mConditions.isXTMBullish && mConditions.isXAMABullish && mConditions.isXTSCurrentMax) && @@ -2361,6 +2467,15 @@ bool XAU5XTDHasLongSignal() ((mConditions.isXCHMAMCPeak && mConditions.isXCHMALCVale) && ( + // + (mConditions.isXTMNeutural && + mConditions.isXTMEndBullish && + mConditions.isXTSCurrentMin && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTSCurrentUnderFarest && + mConditions.isXTSCurrentCrossedUnderFarest) + // + || // ((mConditions.isXTMNeutural && mConditions.isXTSCurrentMax && @@ -2434,6 +2549,14 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTDSignalCrossedOverBear) + // + || + // ((mConditions.isXTMBullish && mConditions.isXAMABullish && mConditions.isXTSCurrentMax && @@ -2523,22 +2646,32 @@ bool XAU5XTDHasLongSignal() // ((mConditions.isXTMBullish && mConditions.isXAMABullish && - mConditions.isXCHMAMCPeak && mConditions.isXTSCurrentMax) && ( // (mConditions.isXLHHighAttachedHH && ( // - mConditions.isXCHLHSameHHs + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSameHHs) // || // - (mConditions.isXCHLHSCMCHHSame && + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSCMCHHSame && mConditions.isXTDSignalCrossedOverBear && mConditions.isXTSCurrentCrossedOverNearest && mConditions.isXTSCurrentCrossedOverMediest) // + || + // + (mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDBearishVale && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) + // ) // ) @@ -2893,20 +3026,36 @@ bool XAU5XTDHasShortSignal() // || // + (mConditions.isXTMBearish && + mConditions.isXAMABearish && + mConditions.isXCHMASCPeak && + mConditions.isXLHHHDecreased && + mConditions.isXTDBullOverBear && + mConditions.isXTSCurrentOverFarest) + // + || + // ((mConditions.isXCHMALCVale && mConditions.isXTSCurrentMin && mConditions.isXTMStartBearish && mConditions.isXTDBullOverBear && - mConditions.isXCHLHMCLCLLSame && mConditions.isXAMAStartBearish) && ( // - mConditions.isXCHMAMCTrendsDown + (mConditions.isXCHLHMCLCLLSame && + mConditions.isXCHMAMCTrendsDown) + // + || + // + (mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMAMCTrendsDown && + mConditions.isXTDSignalCrossedUnderBear) // || // (mConditions.isXCHMASCPeak && mConditions.isXCHLHMCLCHHSame && + mConditions.isXCHLHMCLCLLSame && mConditions.isXTDSignalCrossedUnderBear && mConditions.isXTSCurrentCrossedUnderFarest && mConditions.isXTSCurrentCrossedUnderMediest) diff --git a/Projects/XAU5/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 b/Projects/XAU5/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 index e05b9973..c66a6773 100644 --- a/Projects/XAU5/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 +++ b/Projects/XAU5/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 @@ -1625,6 +1625,17 @@ bool XAU5XTDHasLongSignal() mConditions.isXAMAStartBullish && mConditions.isXTDSignalCrossedOverBear) // + || + // + (mConditions.isXTMNeutural && + mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXAMANeutural && + mConditions.isXCHMALCTrendsDown && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverFarest && + mConditions.isXTSCurrentCrossedOverNearest) + // ) // ) @@ -1671,6 +1682,24 @@ bool XAU5XTDHasLongSignal() // ) // + || + // + // Check LC Fast Under Slow ... + ((mConditions.isXCHMALCFastUnderSlow || + mConditions.isXCHMALCFastCrossedUnderSlow) && + ( + // + (mConditions.isXTMBullish && + mConditions.isXAMABullish && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXLHHHDecreased && + mConditions.isXTDSignalCrossedOverBear) + // + ) + // + ) + // ) // ) @@ -1765,6 +1794,13 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXCHMAMCVale && + mConditions.isXCHMALCVale && + mConditions.isXTDBearishVale && + mConditions.isXLHLLIncreased) + // + || + // // Check if LC Fast Over Slow .. ((mConditions.isXCHMALCFastOverSlow || mConditions.isXCHMALCFastCrossedOverSlow) && @@ -1921,6 +1957,16 @@ bool XAU5XTDHasLongSignal() mConditions.isXTDBullOverBear && mConditions.isXTDSignalCrossedOverBear) // + || + // + (mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverFarest && + mConditions.isXTSCurrentCrossedOverNearest && + mConditions.isXTSCurrentCrossedOverMediest) + // ) // ) @@ -1938,7 +1984,23 @@ bool XAU5XTDHasLongSignal() !mConditions.isXLHLLSameInLength) && // ( - false) + // + // Check if MC Fast Under Slow ... + ((mConditions.isXCHMAMCFastUnderSlow || + mConditions.isXCHMAMCFastCrossedUnderSlow) && + ( + // + (mConditions.isXAMANeutural && + mConditions.isXCHMAMCTrendsUp && + mConditions.isXCHLHMCLCHHSame && + mConditions.isXTSCurrentUnderFarest && + mConditions.isXTDSignalCrossedOverBear) + // + ) + // + ) + // + ) // ) // @@ -2043,6 +2105,11 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTSCurrentUnderNearest && + mConditions.isXTSCurrentCrossedUnderNearest) + // + || + // (mConditions.isXTMNeutural && mConditions.isXAMANeutural && mConditions.isXTSCurrentMax && @@ -2065,11 +2132,23 @@ bool XAU5XTDHasLongSignal() // || // - (mConditions.isXLHLLIncreased && - mConditions.isXTMStartBullish && - mConditions.isXAMAStartBullish && - mConditions.isXTSCurrentUnderFarest && - mConditions.isXLHPriceCrossedOverSignal) + ((mConditions.isXLHLLIncreased && + mConditions.isXTMStartBullish && + mConditions.isXAMAStartBullish && + mConditions.isXLHPriceCrossedOverSignal) && + ( + // + mConditions.isXTSCurrentCrossedUnderFarest + // + || + // + (mConditions.isXTSCurrentMax && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) + // + ) + // + ) // ) // @@ -2099,6 +2178,14 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTMBullish && + mConditions.isXAMABullish && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTSCurrentCrossedUnderNearest) + // + || + // (mConditions.isXCHMAMCPeak && mConditions.isXTMNeutural && mConditions.isXAMANeutural && @@ -2211,6 +2298,15 @@ bool XAU5XTDHasLongSignal() mConditions.isXTSCurrentCrossedOverNearest && mConditions.isXTSCurrentCrossedOverMediest) // + || + // + (mConditions.isXCHMASCPeak && + mConditions.isXCHMASCOverMax && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTSCurrentOverFarest && + mConditions.isXTSCurrentOverNearest && + mConditions.isXTSCurrentOverMediest) + // ) // ) @@ -2289,6 +2385,16 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTMBullish && + mConditions.isXCHMAMCPeak && + mConditions.isXAMABullish && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTDSignalCrossedOverBear) + // + || + // ((mConditions.isXTMBullish && mConditions.isXAMABullish && mConditions.isXTSCurrentMax) && @@ -2361,6 +2467,15 @@ bool XAU5XTDHasLongSignal() ((mConditions.isXCHMAMCPeak && mConditions.isXCHMALCVale) && ( + // + (mConditions.isXTMNeutural && + mConditions.isXTMEndBullish && + mConditions.isXTSCurrentMin && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTSCurrentUnderFarest && + mConditions.isXTSCurrentCrossedUnderFarest) + // + || // ((mConditions.isXTMNeutural && mConditions.isXTSCurrentMax && @@ -2434,6 +2549,14 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTDSignalCrossedOverBear) + // + || + // ((mConditions.isXTMBullish && mConditions.isXAMABullish && mConditions.isXTSCurrentMax && @@ -2523,22 +2646,32 @@ bool XAU5XTDHasLongSignal() // ((mConditions.isXTMBullish && mConditions.isXAMABullish && - mConditions.isXCHMAMCPeak && mConditions.isXTSCurrentMax) && ( // (mConditions.isXLHHighAttachedHH && ( // - mConditions.isXCHLHSameHHs + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSameHHs) // || // - (mConditions.isXCHLHSCMCHHSame && + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSCMCHHSame && mConditions.isXTDSignalCrossedOverBear && mConditions.isXTSCurrentCrossedOverNearest && mConditions.isXTSCurrentCrossedOverMediest) // + || + // + (mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDBearishVale && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) + // ) // ) @@ -2893,20 +3026,36 @@ bool XAU5XTDHasShortSignal() // || // + (mConditions.isXTMBearish && + mConditions.isXAMABearish && + mConditions.isXCHMASCPeak && + mConditions.isXLHHHDecreased && + mConditions.isXTDBullOverBear && + mConditions.isXTSCurrentOverFarest) + // + || + // ((mConditions.isXCHMALCVale && mConditions.isXTSCurrentMin && mConditions.isXTMStartBearish && mConditions.isXTDBullOverBear && - mConditions.isXCHLHMCLCLLSame && mConditions.isXAMAStartBearish) && ( // - mConditions.isXCHMAMCTrendsDown + (mConditions.isXCHLHMCLCLLSame && + mConditions.isXCHMAMCTrendsDown) + // + || + // + (mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMAMCTrendsDown && + mConditions.isXTDSignalCrossedUnderBear) // || // (mConditions.isXCHMASCPeak && mConditions.isXCHLHMCLCHHSame && + mConditions.isXCHLHMCLCLLSame && mConditions.isXTDSignalCrossedUnderBear && mConditions.isXTSCurrentCrossedUnderFarest && mConditions.isXTSCurrentCrossedUnderMediest) diff --git a/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 b/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 index e05b9973..c66a6773 100644 --- a/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 +++ b/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 @@ -1625,6 +1625,17 @@ bool XAU5XTDHasLongSignal() mConditions.isXAMAStartBullish && mConditions.isXTDSignalCrossedOverBear) // + || + // + (mConditions.isXTMNeutural && + mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXAMANeutural && + mConditions.isXCHMALCTrendsDown && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverFarest && + mConditions.isXTSCurrentCrossedOverNearest) + // ) // ) @@ -1671,6 +1682,24 @@ bool XAU5XTDHasLongSignal() // ) // + || + // + // Check LC Fast Under Slow ... + ((mConditions.isXCHMALCFastUnderSlow || + mConditions.isXCHMALCFastCrossedUnderSlow) && + ( + // + (mConditions.isXTMBullish && + mConditions.isXAMABullish && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXLHHHDecreased && + mConditions.isXTDSignalCrossedOverBear) + // + ) + // + ) + // ) // ) @@ -1765,6 +1794,13 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXCHMAMCVale && + mConditions.isXCHMALCVale && + mConditions.isXTDBearishVale && + mConditions.isXLHLLIncreased) + // + || + // // Check if LC Fast Over Slow .. ((mConditions.isXCHMALCFastOverSlow || mConditions.isXCHMALCFastCrossedOverSlow) && @@ -1921,6 +1957,16 @@ bool XAU5XTDHasLongSignal() mConditions.isXTDBullOverBear && mConditions.isXTDSignalCrossedOverBear) // + || + // + (mConditions.isXCHMAMCPeak && + mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverFarest && + mConditions.isXTSCurrentCrossedOverNearest && + mConditions.isXTSCurrentCrossedOverMediest) + // ) // ) @@ -1938,7 +1984,23 @@ bool XAU5XTDHasLongSignal() !mConditions.isXLHLLSameInLength) && // ( - false) + // + // Check if MC Fast Under Slow ... + ((mConditions.isXCHMAMCFastUnderSlow || + mConditions.isXCHMAMCFastCrossedUnderSlow) && + ( + // + (mConditions.isXAMANeutural && + mConditions.isXCHMAMCTrendsUp && + mConditions.isXCHLHMCLCHHSame && + mConditions.isXTSCurrentUnderFarest && + mConditions.isXTDSignalCrossedOverBear) + // + ) + // + ) + // + ) // ) // @@ -2043,6 +2105,11 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTSCurrentUnderNearest && + mConditions.isXTSCurrentCrossedUnderNearest) + // + || + // (mConditions.isXTMNeutural && mConditions.isXAMANeutural && mConditions.isXTSCurrentMax && @@ -2065,11 +2132,23 @@ bool XAU5XTDHasLongSignal() // || // - (mConditions.isXLHLLIncreased && - mConditions.isXTMStartBullish && - mConditions.isXAMAStartBullish && - mConditions.isXTSCurrentUnderFarest && - mConditions.isXLHPriceCrossedOverSignal) + ((mConditions.isXLHLLIncreased && + mConditions.isXTMStartBullish && + mConditions.isXAMAStartBullish && + mConditions.isXLHPriceCrossedOverSignal) && + ( + // + mConditions.isXTSCurrentCrossedUnderFarest + // + || + // + (mConditions.isXTSCurrentMax && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) + // + ) + // + ) // ) // @@ -2099,6 +2178,14 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTMBullish && + mConditions.isXAMABullish && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTSCurrentCrossedUnderNearest) + // + || + // (mConditions.isXCHMAMCPeak && mConditions.isXTMNeutural && mConditions.isXAMANeutural && @@ -2211,6 +2298,15 @@ bool XAU5XTDHasLongSignal() mConditions.isXTSCurrentCrossedOverNearest && mConditions.isXTSCurrentCrossedOverMediest) // + || + // + (mConditions.isXCHMASCPeak && + mConditions.isXCHMASCOverMax && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTSCurrentOverFarest && + mConditions.isXTSCurrentOverNearest && + mConditions.isXTSCurrentOverMediest) + // ) // ) @@ -2289,6 +2385,16 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXTMBullish && + mConditions.isXCHMAMCPeak && + mConditions.isXAMABullish && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTDSignalCrossedOverBear) + // + || + // ((mConditions.isXTMBullish && mConditions.isXAMABullish && mConditions.isXTSCurrentMax) && @@ -2361,6 +2467,15 @@ bool XAU5XTDHasLongSignal() ((mConditions.isXCHMAMCPeak && mConditions.isXCHMALCVale) && ( + // + (mConditions.isXTMNeutural && + mConditions.isXTMEndBullish && + mConditions.isXTSCurrentMin && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTSCurrentUnderFarest && + mConditions.isXTSCurrentCrossedUnderFarest) + // + || // ((mConditions.isXTMNeutural && mConditions.isXTSCurrentMax && @@ -2434,6 +2549,14 @@ bool XAU5XTDHasLongSignal() // || // + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMASCCrossedOverMax && + mConditions.isXTSCurrentUnderNearest && + mConditions.isXTDSignalCrossedOverBear) + // + || + // ((mConditions.isXTMBullish && mConditions.isXAMABullish && mConditions.isXTSCurrentMax && @@ -2523,22 +2646,32 @@ bool XAU5XTDHasLongSignal() // ((mConditions.isXTMBullish && mConditions.isXAMABullish && - mConditions.isXCHMAMCPeak && mConditions.isXTSCurrentMax) && ( // (mConditions.isXLHHighAttachedHH && ( // - mConditions.isXCHLHSameHHs + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSameHHs) // || // - (mConditions.isXCHLHSCMCHHSame && + (mConditions.isXCHMAMCPeak && + mConditions.isXCHLHSCMCHHSame && mConditions.isXTDSignalCrossedOverBear && mConditions.isXTSCurrentCrossedOverNearest && mConditions.isXTSCurrentCrossedOverMediest) // + || + // + (mConditions.isXCHMALCVale && + mConditions.isXTSCurrentMax && + mConditions.isXTDBearishVale && + mConditions.isXCHLHSCMCHHSame && + mConditions.isXTDSignalCrossedOverBear && + mConditions.isXTSCurrentCrossedOverNearest) + // ) // ) @@ -2893,20 +3026,36 @@ bool XAU5XTDHasShortSignal() // || // + (mConditions.isXTMBearish && + mConditions.isXAMABearish && + mConditions.isXCHMASCPeak && + mConditions.isXLHHHDecreased && + mConditions.isXTDBullOverBear && + mConditions.isXTSCurrentOverFarest) + // + || + // ((mConditions.isXCHMALCVale && mConditions.isXTSCurrentMin && mConditions.isXTMStartBearish && mConditions.isXTDBullOverBear && - mConditions.isXCHLHMCLCLLSame && mConditions.isXAMAStartBearish) && ( // - mConditions.isXCHMAMCTrendsDown + (mConditions.isXCHLHMCLCLLSame && + mConditions.isXCHMAMCTrendsDown) + // + || + // + (mConditions.isXCHLHSCMCHHSame && + mConditions.isXCHMAMCTrendsDown && + mConditions.isXTDSignalCrossedUnderBear) // || // (mConditions.isXCHMASCPeak && mConditions.isXCHLHMCLCHHSame && + mConditions.isXCHLHMCLCLLSame && mConditions.isXTDSignalCrossedUnderBear && mConditions.isXTSCurrentCrossedUnderFarest && mConditions.isXTSCurrentCrossedUnderMediest)