diff --git a/BKP/Main/Experts/x-saherelm.xau5.ea.mq5 b/BKP/Main/Experts/x-saherelm.xau5.ea.mq5 index 002dbff8..d2f54dba 100644 --- a/BKP/Main/Experts/x-saherelm.xau5.ea.mq5 +++ b/BKP/Main/Experts/x-saherelm.xau5.ea.mq5 @@ -296,9 +296,13 @@ void OnTick() // Handle Processing on XAU5 Signal Provider ... XAU5SignalProviderDoControlState(); } - + // - if (!IsNewCandle() && xAU5WaitUntilNextCandle) + // Check Can Ignore Tick or not .. + bool canIgnoreTick = xAU5IsTestMode + ? !IsNewCandle() + : !IsNewCandle() && xAU5WaitUntilNextCandle; + if (canIgnoreTick) { return; } @@ -379,11 +383,11 @@ bool XAU5CTimerInit() // // Inputs ... xAU5CandleTimerColot, - xAU5CandleTimerCorner - ); + xAU5CandleTimerCorner); // - if (xAU5CTimerHandler == INVALID_HANDLE) { + if (xAU5CTimerHandler == INVALID_HANDLE) + { result = false; } 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 b8edc502..bc385f22 100644 --- a/BKP/Main/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 +++ b/BKP/Main/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 @@ -7173,6 +7173,14 @@ bool XAU5XTSFIHasShortSignal() // || // + (mConditions.isXCHMAMCVale && + !mConditions.isXCHMAMCTrendsUp && + !mConditions.isXCHMAMCTrendsDown && + mConditions.isXTDBullUnderBear && + mConditions.isXTDSignalUnderBear) + // + || + // ((mConditions.isXCHMALCVale && mConditions.isXTDBullishVale && mConditions.isXTDSignalUnderBear) && @@ -9554,6 +9562,23 @@ bool XAU5XCHMACCHasShortSignal() // || // + ((mConditions.isXCHMAMCVale && + !mConditions.isXCHMAMCTrendsUp && + !mConditions.isXCHMAMCTrendsDown) && + ( + // + (mConditions.isXTMBearish && + mConditions.isXAMABearish && + mConditions.isXTDBullUnderBear && + mConditions.isXTDSignalUnderBear && + mConditions.isXTSCurrentOverMediest) + // + ) + // + ) + // + || + // (mConditions.isXTSCurrentMin && mConditions.isXTMStartBearish && mConditions.isXCHLHSCMCLLSame && diff --git a/Experts/x-saherelm.xau5.ea.mq5 b/Experts/x-saherelm.xau5.ea.mq5 index 002dbff8..d2f54dba 100644 --- a/Experts/x-saherelm.xau5.ea.mq5 +++ b/Experts/x-saherelm.xau5.ea.mq5 @@ -296,9 +296,13 @@ void OnTick() // Handle Processing on XAU5 Signal Provider ... XAU5SignalProviderDoControlState(); } - + // - if (!IsNewCandle() && xAU5WaitUntilNextCandle) + // Check Can Ignore Tick or not .. + bool canIgnoreTick = xAU5IsTestMode + ? !IsNewCandle() + : !IsNewCandle() && xAU5WaitUntilNextCandle; + if (canIgnoreTick) { return; } @@ -379,11 +383,11 @@ bool XAU5CTimerInit() // // Inputs ... xAU5CandleTimerColot, - xAU5CandleTimerCorner - ); + xAU5CandleTimerCorner); // - if (xAU5CTimerHandler == INVALID_HANDLE) { + if (xAU5CTimerHandler == INVALID_HANDLE) + { result = false; } diff --git a/Projects/XAU5/Experts/x-saherelm.xau5.ea.mq5 b/Projects/XAU5/Experts/x-saherelm.xau5.ea.mq5 index 002dbff8..d2f54dba 100644 --- a/Projects/XAU5/Experts/x-saherelm.xau5.ea.mq5 +++ b/Projects/XAU5/Experts/x-saherelm.xau5.ea.mq5 @@ -296,9 +296,13 @@ void OnTick() // Handle Processing on XAU5 Signal Provider ... XAU5SignalProviderDoControlState(); } - + // - if (!IsNewCandle() && xAU5WaitUntilNextCandle) + // Check Can Ignore Tick or not .. + bool canIgnoreTick = xAU5IsTestMode + ? !IsNewCandle() + : !IsNewCandle() && xAU5WaitUntilNextCandle; + if (canIgnoreTick) { return; } @@ -379,11 +383,11 @@ bool XAU5CTimerInit() // // Inputs ... xAU5CandleTimerColot, - xAU5CandleTimerCorner - ); + xAU5CandleTimerCorner); // - if (xAU5CTimerHandler == INVALID_HANDLE) { + if (xAU5CTimerHandler == INVALID_HANDLE) + { result = false; } 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 b8edc502..bc385f22 100644 --- a/Projects/XAU5/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 +++ b/Projects/XAU5/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 @@ -7173,6 +7173,14 @@ bool XAU5XTSFIHasShortSignal() // || // + (mConditions.isXCHMAMCVale && + !mConditions.isXCHMAMCTrendsUp && + !mConditions.isXCHMAMCTrendsDown && + mConditions.isXTDBullUnderBear && + mConditions.isXTDSignalUnderBear) + // + || + // ((mConditions.isXCHMALCVale && mConditions.isXTDBullishVale && mConditions.isXTDSignalUnderBear) && @@ -9554,6 +9562,23 @@ bool XAU5XCHMACCHasShortSignal() // || // + ((mConditions.isXCHMAMCVale && + !mConditions.isXCHMAMCTrendsUp && + !mConditions.isXCHMAMCTrendsDown) && + ( + // + (mConditions.isXTMBearish && + mConditions.isXAMABearish && + mConditions.isXTDBullUnderBear && + mConditions.isXTDSignalUnderBear && + mConditions.isXTSCurrentOverMediest) + // + ) + // + ) + // + || + // (mConditions.isXTSCurrentMin && mConditions.isXTMStartBearish && mConditions.isXCHLHSCMCLLSame && diff --git a/Projects/XEU5/Experts/x-saherelm.xeu5.ea.mq5 b/Projects/XEU5/Experts/x-saherelm.xeu5.ea.mq5 index 4da65d3e..5d90b797 100644 --- a/Projects/XEU5/Experts/x-saherelm.xeu5.ea.mq5 +++ b/Projects/XEU5/Experts/x-saherelm.xeu5.ea.mq5 @@ -299,7 +299,11 @@ void OnTick() } // - if (!IsNewCandle() && xEU5WaitUntilNextCandle) + // Check Can Ignore Tick or not .. + bool canIgnoreTick = xEU5IsTestMode + ? !IsNewCandle() + : !IsNewCandle() && xEU5WaitUntilNextCandle; + if (canIgnoreTick) { return; } diff --git a/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 b/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 index b8edc502..bc385f22 100644 --- a/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 +++ b/Providers/x-saherelm.xau5.provider.indicators.lib.mq5 @@ -7173,6 +7173,14 @@ bool XAU5XTSFIHasShortSignal() // || // + (mConditions.isXCHMAMCVale && + !mConditions.isXCHMAMCTrendsUp && + !mConditions.isXCHMAMCTrendsDown && + mConditions.isXTDBullUnderBear && + mConditions.isXTDSignalUnderBear) + // + || + // ((mConditions.isXCHMALCVale && mConditions.isXTDBullishVale && mConditions.isXTDSignalUnderBear) && @@ -9554,6 +9562,23 @@ bool XAU5XCHMACCHasShortSignal() // || // + ((mConditions.isXCHMAMCVale && + !mConditions.isXCHMAMCTrendsUp && + !mConditions.isXCHMAMCTrendsDown) && + ( + // + (mConditions.isXTMBearish && + mConditions.isXAMABearish && + mConditions.isXTDBullUnderBear && + mConditions.isXTDSignalUnderBear && + mConditions.isXTSCurrentOverMediest) + // + ) + // + ) + // + || + // (mConditions.isXTSCurrentMin && mConditions.isXTMStartBearish && mConditions.isXCHLHSCMCLLSame &&