From 2c49469156322d0ced1d77f04a532f6c638ca816 Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Mon, 3 Nov 2025 17:28:02 +0330 Subject: [PATCH] last ... --- .../x-saherelm.xfima.signaller.class.mq5 | 58 +++++++++++++++---- 1 file changed, 47 insertions(+), 11 deletions(-) diff --git a/XFIMAEA/Classes/x-saherelm.xfima.signaller.class.mq5 b/XFIMAEA/Classes/x-saherelm.xfima.signaller.class.mq5 index 1dea991b..81fed594 100644 --- a/XFIMAEA/Classes/x-saherelm.xfima.signaller.class.mq5 +++ b/XFIMAEA/Classes/x-saherelm.xfima.signaller.class.mq5 @@ -1064,7 +1064,7 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller // Validator Flags ... bool validateByZones = false; bool validateHasLiquidity = false; - bool validateByXFIMARejected = false; + bool validateByXFIMARejected = true; bool validateByXFIMAMACrossed = false; bool validateByCyclesMATresnding = false; bool validateByHasDirectionalZones = false; @@ -1150,15 +1150,33 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller // // Detect Pin Bar ... - bool isPBarIsPinBar = poiDetector.IsPinnedBar( - pBar, - dir, - 3, - 4, - true // - ); + bool isPBarIsPinBar = false && + poiDetector.IsPinnedBar( + pBar, + dir, + 3, + 4, + true // + ); bool isPBarIsPinBarBullish = isPBarIsPinBar && IsXBullish(dir); bool isPBarIsPinBarBearish = isPBarIsPinBar && IsXBearish(dir); + if (isPBarIsPinBar) + { + // + // Bullish ... + isPBarIsPinBarBullish = + isPBarIsPinBarBullish && + pBar.GetHighShadow() < pBar.GetBody(); + + // + // Bearish ... + isPBarIsPinBarBearish = + isPBarIsPinBarBearish && + pBar.GetLowShadow() < pBar.GetBody(); + + // + isPBarIsPinBar = isPBarIsPinBarBullish || isPBarIsPinBarBearish; + } // // Detect Signal Key Bar ... @@ -1171,6 +1189,24 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller ); bool isPBarSignalKeyBarBullish = isPBarSignalKeyBar && IsXBullish(dir); bool isPBarSignalKeyBarBearish = isPBarSignalKeyBar && IsXBearish(dir); + if (isPBarSignalKeyBar) + { + // + // Bullish ... + isPBarSignalKeyBarBullish = + isPBarSignalKeyBarBullish && + p2Bar.GetHighShadow() < p2Bar.GetBody(); + + // + // Bearish ... + isPBarSignalKeyBarBearish = + isPBarSignalKeyBarBearish && + p2Bar.GetLowShadow() < p2Bar.GetBody(); + + // + isPBarSignalKeyBar = isPBarSignalKeyBarBullish || isPBarSignalKeyBarBearish; + } + // bool hasBullishBar = isPBarIsPinBarBullish || @@ -1734,9 +1770,9 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller if (zone.IsValid()) { // - iSConfig.zonesStyle = STYLE_SOLID; - poiDrawer.DrawZone(zone, iSConfig); - iSConfig.zonesStyle = STYLE_DASHDOTDOT; + // iSConfig.zonesStyle = STYLE_SOLID; + // poiDrawer.DrawZone(zone, iSConfig); + // iSConfig.zonesStyle = STYLE_DASHDOTDOT; } //