From 606c63668791992c98f4719e26e580548fb9ff40 Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Sat, 1 Feb 2025 19:59:02 +0330 Subject: [PATCH] last ... --- Classes/x-saherelm.x-alert.class.mq5 | 3 ++ Classes/x-saherelm.x-expert.class.mq5 | 8 +++++ Classes/x-saherelm.x-poi.class.mq5 | 4 +++ Classes/x-saherelm.x-trade.class.mq5 | 4 +++ .../1/x-121.smc.xobpv.signal.orig.old.lib.mq5 | 3 ++ Experts/x-saherelm.x-121.smc.ea.mq5 | 3 ++ Helpers/x-saherelm.x121.helper.mq5 | 15 +++++++++ Helpers/x-saherelm.x121.xatr.helper.mq5 | 5 ++- Helpers/x-saherelm.x121.xche.helper.mq5 | 6 ++++ Helpers/x-saherelm.x121.xdon.helper.mq5 | 6 ++++ Helpers/x-saherelm.x121.xhk.helper.mq5 | 6 ++++ Helpers/x-saherelm.x121.xpv.helper.mq5 | 6 ++++ Helpers/x-saherelm.x121.xstr.helper.mq5 | 5 ++- Helpers/x-saherelm.x121.xvwap.helper.mq5 | 6 ++++ Helpers/x-saherelm.xcc.helper.mq5 | 3 ++ Helpers/x-saherelm.xct.helper.mq5 | 3 ++ Libraries/x-saherelm.common.lib.mq5 | 18 ++++++++++ Libraries/x-saherelm.draw.lib.mq5 | 6 ++++ Libraries/x-saherelm.x-poi.lib.mq5 | 30 +++++++++++++++++ Libraries/x-saherelm.x-trade.lib.mq5 | 33 +++++++++++++++++++ .../Classes/x-121.smc.base.strategy.class.mq5 | 6 +++- .../x-121.smc.market.cycle.helper.class.mq5 | 5 +++ .../x-121.smc.x-tradehandler.class.mq5 | 6 ++++ X121SMCEA/Experts/x-121.smc.expert.class.mq5 | 5 +++ X121SMCEA/Libraries/x-121.smc.lib.mq5 | 12 +++++++ X121SMCEA/Signals/x-121.smc.x.signal.lib.mq5 | 3 ++ .../Signals/x-121.smc.xhkpv.signal.lib.mq5 | 3 ++ .../Signals/x-121.smc.xiobpv.signal.lib.mq5 | 3 ++ .../Signals/x-121.smc.xobpv.signal.lib.mq5 | 3 ++ .../Signals/x-121.smc.xobs.signal.lib.mq5 | 3 ++ .../Strategy/x-121.smc.strategy.class.mq5 | 8 +++++ 31 files changed, 227 insertions(+), 3 deletions(-) diff --git a/Classes/x-saherelm.x-alert.class.mq5 b/Classes/x-saherelm.x-alert.class.mq5 index 2c7ef5e0..c92a6d59 100644 --- a/Classes/x-saherelm.x-alert.class.mq5 +++ b/Classes/x-saherelm.x-alert.class.mq5 @@ -1388,6 +1388,9 @@ class XCBaseAlert : public XCBase { // delete mAlert; + + // + ZeroMemory(mAlert); } // diff --git a/Classes/x-saherelm.x-expert.class.mq5 b/Classes/x-saherelm.x-expert.class.mq5 index 7c05c612..b0dfce65 100644 --- a/Classes/x-saherelm.x-expert.class.mq5 +++ b/Classes/x-saherelm.x-expert.class.mq5 @@ -56,6 +56,9 @@ class XCBaseExpert : public XCBaseAlert { // delete mTrader; + + // + ZeroMemory(mTrader); } // @@ -654,6 +657,11 @@ class XCBaseExpert : public XCBaseAlert delete mTrader; delete mCTHelper; delete mCCHelper; + + // + ZeroMemory(mTrader); + ZeroMemory(mCTHelper); + ZeroMemory(mCCHelper); } /** diff --git a/Classes/x-saherelm.x-poi.class.mq5 b/Classes/x-saherelm.x-poi.class.mq5 index df3fe2c1..92745a0b 100644 --- a/Classes/x-saherelm.x-poi.class.mq5 +++ b/Classes/x-saherelm.x-poi.class.mq5 @@ -1056,6 +1056,10 @@ class XCPOIDetector : public XCBaseAlert // delete mDrawer; delete mTicksZone; + + // + ZeroMemory(mDrawer); + ZeroMemory(mTicksZone); } // diff --git a/Classes/x-saherelm.x-trade.class.mq5 b/Classes/x-saherelm.x-trade.class.mq5 index 1cdf0caf..7bdd19f7 100644 --- a/Classes/x-saherelm.x-trade.class.mq5 +++ b/Classes/x-saherelm.x-trade.class.mq5 @@ -588,6 +588,10 @@ class XCTrade : public XCBase delete mTrader; delete mAccount; + // + ZeroMemory(mTrader); + ZeroMemory(mAccount); + // Clean(mOnModifyEventHandlers); Clean(mStopLossEventHandlers); diff --git a/Documents/BKP/1/x-121.smc.xobpv.signal.orig.old.lib.mq5 b/Documents/BKP/1/x-121.smc.xobpv.signal.orig.old.lib.mq5 index f8bd6a24..f73cb030 100644 --- a/Documents/BKP/1/x-121.smc.xobpv.signal.orig.old.lib.mq5 +++ b/Documents/BKP/1/x-121.smc.xobpv.signal.orig.old.lib.mq5 @@ -89,6 +89,9 @@ struct X121SMCStrategyXOBPVSignalConditions // ExtensionClean(); + + // + ZeroMemory(this); } /** diff --git a/Experts/x-saherelm.x-121.smc.ea.mq5 b/Experts/x-saherelm.x-121.smc.ea.mq5 index 7d86c2ba..33ac63f1 100644 --- a/Experts/x-saherelm.x-121.smc.ea.mq5 +++ b/Experts/x-saherelm.x-121.smc.ea.mq5 @@ -249,6 +249,9 @@ void OnDeinit(const int reason) // delete eaExpert; + + // + ZeroMemory(eaExpert); } // diff --git a/Helpers/x-saherelm.x121.helper.mq5 b/Helpers/x-saherelm.x121.helper.mq5 index aae791b3..20c42064 100644 --- a/Helpers/x-saherelm.x121.helper.mq5 +++ b/Helpers/x-saherelm.x121.helper.mq5 @@ -68,6 +68,9 @@ struct X121Inputs xcheInputs.Clean(); xdonInputs.Clean(); xvwapInputs.Clean(); + + // + ZeroMemory(this); } /** @@ -1108,6 +1111,9 @@ struct X121Conditions // isStrLowerCrossedOverDonLowLower = false; isStrLowerCrossedUnderDonLowLower = false; + + // + ZeroMemory(this); } /** @@ -1509,6 +1515,15 @@ class XCX121Helper : public XCBase delete xcheHelper; delete xdonHelper; delete xvwapHelper; + + // + ZeroMemory(xpvHelper); + ZeroMemory(xhkHelper); + ZeroMemory(xatrHelper); + ZeroMemory(xstrHelper); + ZeroMemory(xcheHelper); + ZeroMemory(xdonHelper); + ZeroMemory(xvwapHelper); } // diff --git a/Helpers/x-saherelm.x121.xatr.helper.mq5 b/Helpers/x-saherelm.x121.xatr.helper.mq5 index a76d071e..d2b9433d 100644 --- a/Helpers/x-saherelm.x121.xatr.helper.mq5 +++ b/Helpers/x-saherelm.x121.xatr.helper.mq5 @@ -105,6 +105,9 @@ struct X121XATRInputs // showATRUpper = false; // Show Upper Zone showATRLower = false; // Show Lower Zone + + // + ZeroMemory(this); } // @@ -320,7 +323,7 @@ struct X121XATRConditions isBreakedDownAtrLower = false; // - // XDON ... + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.x121.xche.helper.mq5 b/Helpers/x-saherelm.x121.xche.helper.mq5 index e2f25ae8..16506c5c 100644 --- a/Helpers/x-saherelm.x121.xche.helper.mq5 +++ b/Helpers/x-saherelm.x121.xche.helper.mq5 @@ -96,6 +96,9 @@ struct X121XCHEInputs showSE1 = false; showLE2 = false; showSE2 = false; + + // + ZeroMemory(this); } // @@ -285,6 +288,9 @@ struct X121XCHEConditions // isClosedUnderCheMin = false; isClosedUnderCheMax = false; + + // + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.x121.xdon.helper.mq5 b/Helpers/x-saherelm.x121.xdon.helper.mq5 index e14f0916..7669cab5 100644 --- a/Helpers/x-saherelm.x121.xdon.helper.mq5 +++ b/Helpers/x-saherelm.x121.xdon.helper.mq5 @@ -95,6 +95,9 @@ struct X121XDONInputs showHigh = false; showClose = false; showLow = false; + + // + ZeroMemory(this); } // @@ -269,6 +272,9 @@ struct X121XDONConditions isBreakedDonHighLower = false; isBreakedDonLowLower = false; isBreakedDonCloseLower = false; + + // + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.x121.xhk.helper.mq5 b/Helpers/x-saherelm.x121.xhk.helper.mq5 index 6ba2114d..07018eb3 100644 --- a/Helpers/x-saherelm.x121.xhk.helper.mq5 +++ b/Helpers/x-saherelm.x121.xhk.helper.mq5 @@ -78,6 +78,9 @@ struct X121XHKInputs startCalculationForLastBars = 1500; drawRawXHKCandles = false; drawSmoothedXHKCandles = false; + + // + ZeroMemory(this); } // @@ -272,6 +275,9 @@ struct X121XHKConditions isRejectedDownSMHK = false; isRejectedDownRawHK = false; isRawHKBreakedDownSMHK = false; + + // + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.x121.xpv.helper.mq5 b/Helpers/x-saherelm.x121.xpv.helper.mq5 index a89b3718..ce2ea1d4 100644 --- a/Helpers/x-saherelm.x121.xpv.helper.mq5 +++ b/Helpers/x-saherelm.x121.xpv.helper.mq5 @@ -153,6 +153,9 @@ struct X121XPVInputs showSar = false; showPeaks = false; showVales = false; + + // + ZeroMemory(this); } // @@ -382,6 +385,9 @@ struct X121XPVConditions isNewValeUnderLast = false; isRejectedPrevVale = false; isBreakedDownPrevVale = false; + + // + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.x121.xstr.helper.mq5 b/Helpers/x-saherelm.x121.xstr.helper.mq5 index 37abaa8b..7b3ffa97 100644 --- a/Helpers/x-saherelm.x121.xstr.helper.mq5 +++ b/Helpers/x-saherelm.x121.xstr.helper.mq5 @@ -80,6 +80,9 @@ struct X121XSTRInputs showStr = false; showStrUpper = false; showStrLower = false; + + // + ZeroMemory(this); } // @@ -216,7 +219,7 @@ struct X121XSTRConditions isStrSwitchedToBearish = false; // - // XDON ... + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.x121.xvwap.helper.mq5 b/Helpers/x-saherelm.x121.xvwap.helper.mq5 index 77d7e3aa..15acd31b 100644 --- a/Helpers/x-saherelm.x121.xvwap.helper.mq5 +++ b/Helpers/x-saherelm.x121.xvwap.helper.mq5 @@ -98,6 +98,9 @@ struct X121XVWAPInputs showVWapFast = false; showVWapMedium = false; showVWapSlow = false; + + // + ZeroMemory(this); } // @@ -307,6 +310,9 @@ struct X121XVWAPConditions isVWapSwitchedToBullishState = false; isVWapSwitchedToBearishState = false; isVWapSwitchedToNeuturalState = false; + + // + ZeroMemory(this); } /** diff --git a/Helpers/x-saherelm.xcc.helper.mq5 b/Helpers/x-saherelm.xcc.helper.mq5 index 7f7032e0..a63b8067 100644 --- a/Helpers/x-saherelm.xcc.helper.mq5 +++ b/Helpers/x-saherelm.xcc.helper.mq5 @@ -76,6 +76,9 @@ struct XCCInputs // showCandles = false; + + // + ZeroMemory(this); } // diff --git a/Helpers/x-saherelm.xct.helper.mq5 b/Helpers/x-saherelm.xct.helper.mq5 index cf4d7f41..11ba984c 100644 --- a/Helpers/x-saherelm.xct.helper.mq5 +++ b/Helpers/x-saherelm.xct.helper.mq5 @@ -67,6 +67,9 @@ struct XCTInputs // // Presentation ... showCandleTime = false; + + // + ZeroMemory(this); } // diff --git a/Libraries/x-saherelm.common.lib.mq5 b/Libraries/x-saherelm.common.lib.mq5 index 4eacd81e..dbd5b2cc 100644 --- a/Libraries/x-saherelm.common.lib.mq5 +++ b/Libraries/x-saherelm.common.lib.mq5 @@ -399,6 +399,9 @@ struct XTick volume = 0; time = NULL; symbol = NULL; + + // + ZeroMemory(this); } /** @@ -514,6 +517,9 @@ struct XBarRemainsTime hours = 0; minutes = 0; seconds = 0; + + // + ZeroMemory(this); } // @@ -805,6 +811,9 @@ struct XOHCL time = NULL; symbol = NULL; period = NULL; + + // + ZeroMemory(this); } // @@ -1915,6 +1924,9 @@ struct XTimeTracker xMinute = -1; xDayOfWeek = -1; xForWeekDay = -1; + + // + ZeroMemory(this); } // @@ -2186,6 +2198,9 @@ struct XBarTracker // symbol = NormalizeSymbol(NULL); period = NormalizePeriod(NULL); + + // + ZeroMemory(this); } // @@ -2430,6 +2445,9 @@ struct XMarketCycle // remains.Clean(); barTracker.Clean(); + + // + ZeroMemory(this); } // diff --git a/Libraries/x-saherelm.draw.lib.mq5 b/Libraries/x-saherelm.draw.lib.mq5 index aeb124ee..ab7f39b1 100644 --- a/Libraries/x-saherelm.draw.lib.mq5 +++ b/Libraries/x-saherelm.draw.lib.mq5 @@ -136,6 +136,9 @@ struct XDrawSpecifications labelFont = "Arial"; labelFontSize = 20; labelAnchor = ANCHOR_LEFT_UPPER; + + // + ZeroMemory(this); } // @@ -198,6 +201,9 @@ struct XOHCLDrawSpecification openStyle.Clean(); highStyle.Clean(); closeStyle.Clean(); + + // + ZeroMemory(this); } // diff --git a/Libraries/x-saherelm.x-poi.lib.mq5 b/Libraries/x-saherelm.x-poi.lib.mq5 index a9f457d2..d511a3c2 100644 --- a/Libraries/x-saherelm.x-poi.lib.mq5 +++ b/Libraries/x-saherelm.x-poi.lib.mq5 @@ -3618,6 +3618,9 @@ struct XPOIState Clean(bearishOrderBlocks); Clean(bullishFairValueGaps); Clean(bearishFairValueGaps); + + // + ZeroMemory(this); } /** @@ -4162,6 +4165,9 @@ struct XPVPivot // state.Clean(); + + // + ZeroMemory(this); } /** @@ -4575,6 +4581,9 @@ struct XPVPivotPoint time = NULL; repetition = 0; type = XPV_NONE; + + // + ZeroMemory(this); } /** @@ -4840,6 +4849,9 @@ struct XConsolidationZone initTime = NULL; breakerBar.Clean(); breakDirection = X_DIRECTION_NONE; + + // + ZeroMemory(this); } /** @@ -5182,6 +5194,9 @@ struct XValueChange before = 0; time = NULL; dir = X_DIRECTION_NONE; + + // + ZeroMemory(this); } /** @@ -5297,6 +5312,9 @@ struct XPriceZones supportZone = NULL; fairValueGap = NULL; resistanceZone = NULL; + + // + ZeroMemory(this); } /** @@ -6024,6 +6042,9 @@ struct XMarketStructure highestPeakBar.Clean(); peakBelowHighestPeakValeBar.Clean(); highestPeakValeBreakeDownBar.Clean(); + + // + ZeroMemory(this); } /** @@ -6156,6 +6177,9 @@ struct XStateZones Clean(bearishOrderBlocks); Clean(bullishFairValueGaps); Clean(bearishFairValueGaps); + + // + ZeroMemory(this); } /** @@ -6316,6 +6340,9 @@ struct XFVGOrderBlock // orderBlock = NULL; fairValueGap = NULL; + + // + ZeroMemory(this); } /** @@ -6525,6 +6552,9 @@ struct XBoxZone symbol = NULL; period = NULL; dir = X_DIRECTION_NONE; + + // + ZeroMemory(this); } /** diff --git a/Libraries/x-saherelm.x-trade.lib.mq5 b/Libraries/x-saherelm.x-trade.lib.mq5 index e3bd0fe0..e6a4e015 100644 --- a/Libraries/x-saherelm.x-trade.lib.mq5 +++ b/Libraries/x-saherelm.x-trade.lib.mq5 @@ -472,6 +472,9 @@ struct XPosition symbol = NULL; comment = NULL; provider = NULL; + + // + ZeroMemory(this); } // @@ -1507,6 +1510,9 @@ struct XSignal // Clean(supports); + + // + ZeroMemory(this); } // @@ -2054,6 +2060,9 @@ struct XOrder period = NULL; filling = NULL; lifetime = NULL; + + // + ZeroMemory(this); } // @@ -2411,6 +2420,9 @@ struct XDeal entry = NULL; period = NULL; reason = NULL; + + // + ZeroMemory(this); } // @@ -2617,6 +2629,9 @@ struct XOnTradeHandlerState newOrders = 0; newPositions = 0; newHistoryOrders = 0; + + // + ZeroMemory(this); } // @@ -2743,6 +2758,9 @@ struct XGuard // strPayload = NULL; dblPayLoad = EMPTY_VALUE; + + // + ZeroMemory(this); } // @@ -2809,6 +2827,9 @@ struct XPositionPack // Clean(supportOrders); Clean(supportPositions); + + // + ZeroMemory(this); } // @@ -2956,6 +2977,9 @@ struct XTrail before = 0; after = 0; level = 0; + + // + ZeroMemory(this); } // @@ -3203,6 +3227,9 @@ struct XSymbolPositions Clean(longs); Clean(shorts); Clean(positions); + + // + ZeroMemory(this); } // @@ -3608,6 +3635,9 @@ struct XSymbolLastPosition time = NULL; symbol = NULL; provider = NULL; + + // + ZeroMemory(this); } }; @@ -3780,6 +3810,9 @@ struct XTradeData // ResetTrail(); ResetRecovery(); + + // + ZeroMemory(this); } // diff --git a/X121SMCEA/Classes/x-121.smc.base.strategy.class.mq5 b/X121SMCEA/Classes/x-121.smc.base.strategy.class.mq5 index 78a1bfcf..abcd0036 100644 --- a/X121SMCEA/Classes/x-121.smc.base.strategy.class.mq5 +++ b/X121SMCEA/Classes/x-121.smc.base.strategy.class.mq5 @@ -596,7 +596,7 @@ class XCX121SMCBaseStrategy : public XCBaseAlert // XBarTracker mBarTracker; // Strategy Bar Tracker ... XBarTracker mGuardBarTracker; // Strategy Guard Bar Tracker ... - XCBarAnalyser *mBarAnalyser; // Bar Analyser Instance + XCBarAnalyser *mBarAnalyser; // Bar Analyser Instance // // Actions ... @@ -965,6 +965,10 @@ class XCX121SMCBaseStrategy : public XCBaseAlert */ void DeInit() { + // + ZeroMemory(mPOIDrawer); + ZeroMemory(mBarAnalyser); + // delete mPOIDrawer; delete mBarAnalyser; diff --git a/X121SMCEA/Classes/x-121.smc.market.cycle.helper.class.mq5 b/X121SMCEA/Classes/x-121.smc.market.cycle.helper.class.mq5 index b81c645c..55934472 100644 --- a/X121SMCEA/Classes/x-121.smc.market.cycle.helper.class.mq5 +++ b/X121SMCEA/Classes/x-121.smc.market.cycle.helper.class.mq5 @@ -1620,6 +1620,11 @@ class XC121SMCCycleHelper : public XCBase */ void DeInit() { + // + ZeroMemory(mX121Helper); + ZeroMemory(mPOIDetector); + ZeroMemory(mBarAnalyser); + // delete mX121Helper; delete mPOIDetector; diff --git a/X121SMCEA/Classes/x-121.smc.x-tradehandler.class.mq5 b/X121SMCEA/Classes/x-121.smc.x-tradehandler.class.mq5 index 9810c433..13d0344d 100644 --- a/X121SMCEA/Classes/x-121.smc.x-tradehandler.class.mq5 +++ b/X121SMCEA/Classes/x-121.smc.x-tradehandler.class.mq5 @@ -118,6 +118,9 @@ struct X121SMCTradeData // signal.Clean(); + + // + ZeroMemory(this); } /** @@ -1035,6 +1038,9 @@ struct X121SMCSymbolPositionInfo // enableAt = NULL; + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Experts/x-121.smc.expert.class.mq5 b/X121SMCEA/Experts/x-121.smc.expert.class.mq5 index fa8954c6..7a609e9f 100644 --- a/X121SMCEA/Experts/x-121.smc.expert.class.mq5 +++ b/X121SMCEA/Experts/x-121.smc.expert.class.mq5 @@ -1386,6 +1386,11 @@ class XC121SMCExpert : public XCBaseExpert */ void DestroyEA() override { + // + ZeroMemory(mCTHelper); + ZeroMemory(mCCHelper); + ZeroMemory(mTradeHandler); + // delete mCTHelper; delete mCCHelper; diff --git a/X121SMCEA/Libraries/x-121.smc.lib.mq5 b/X121SMCEA/Libraries/x-121.smc.lib.mq5 index b27fe0a4..72234335 100644 --- a/X121SMCEA/Libraries/x-121.smc.lib.mq5 +++ b/X121SMCEA/Libraries/x-121.smc.lib.mq5 @@ -107,6 +107,9 @@ struct X121SMCCycleConditions // state.Clean(); x121Conditions.Clean(); + + // + ZeroMemory(this); } /** @@ -313,6 +316,9 @@ struct X121SMCStrategyConditions // priceZones.Clean(); // decisionZones.Clean(); // marketStructure.Clean(); + + // + ZeroMemory(this); } /** @@ -584,6 +590,9 @@ struct X121SMCGuard // sl = 0; tp = 0; + + // + ZeroMemory(this); } /** @@ -671,6 +680,9 @@ struct X121SMCCycleState Clean(bearishOBs); Clean(supplyZones); Clean(resistanceZones); + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Signals/x-121.smc.x.signal.lib.mq5 b/X121SMCEA/Signals/x-121.smc.x.signal.lib.mq5 index ee4db31a..c5bdd020 100644 --- a/X121SMCEA/Signals/x-121.smc.x.signal.lib.mq5 +++ b/X121SMCEA/Signals/x-121.smc.x.signal.lib.mq5 @@ -89,6 +89,9 @@ struct X121SMCStrategyXSignalConditions // ExtensionClean(); + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Signals/x-121.smc.xhkpv.signal.lib.mq5 b/X121SMCEA/Signals/x-121.smc.xhkpv.signal.lib.mq5 index 9c7a3114..a1263eeb 100644 --- a/X121SMCEA/Signals/x-121.smc.xhkpv.signal.lib.mq5 +++ b/X121SMCEA/Signals/x-121.smc.xhkpv.signal.lib.mq5 @@ -93,6 +93,9 @@ struct X121SMCStrategyXHKPVSignalConditions // ExtensionClean(); + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Signals/x-121.smc.xiobpv.signal.lib.mq5 b/X121SMCEA/Signals/x-121.smc.xiobpv.signal.lib.mq5 index f8fad7a2..6ff54b16 100644 --- a/X121SMCEA/Signals/x-121.smc.xiobpv.signal.lib.mq5 +++ b/X121SMCEA/Signals/x-121.smc.xiobpv.signal.lib.mq5 @@ -93,6 +93,9 @@ struct X121SMCStrategyXIOBPVSignalConditions // ExtensionClean(); + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Signals/x-121.smc.xobpv.signal.lib.mq5 b/X121SMCEA/Signals/x-121.smc.xobpv.signal.lib.mq5 index e34126e3..6166c926 100644 --- a/X121SMCEA/Signals/x-121.smc.xobpv.signal.lib.mq5 +++ b/X121SMCEA/Signals/x-121.smc.xobpv.signal.lib.mq5 @@ -90,6 +90,9 @@ struct X121SMCStrategyXOBPVSignalConditions // ExtensionClean(); + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Signals/x-121.smc.xobs.signal.lib.mq5 b/X121SMCEA/Signals/x-121.smc.xobs.signal.lib.mq5 index c554378d..c35b7a16 100644 --- a/X121SMCEA/Signals/x-121.smc.xobs.signal.lib.mq5 +++ b/X121SMCEA/Signals/x-121.smc.xobs.signal.lib.mq5 @@ -87,6 +87,9 @@ struct X121SMCStrategyXOBSSignalConditions // ExtensionClean(); + + // + ZeroMemory(this); } /** diff --git a/X121SMCEA/Strategy/x-121.smc.strategy.class.mq5 b/X121SMCEA/Strategy/x-121.smc.strategy.class.mq5 index 5f6a1c93..aebd7f37 100644 --- a/X121SMCEA/Strategy/x-121.smc.strategy.class.mq5 +++ b/X121SMCEA/Strategy/x-121.smc.strategy.class.mq5 @@ -117,6 +117,14 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy */ void Destroy() override { + // + ZeroMemory(mTriggerCycleHelper); + ZeroMemory(mDecisionCycleHelper); + ZeroMemory(mAnalyseCycleHelper); + ZeroMemory(mVerificationCycleHelper); + ZeroMemory(mConsolidationCycleHelper); + ZeroMemory(mVisionCycleHelper); + // delete mTriggerCycleHelper; delete mDecisionCycleHelper;