This commit is contained in:
2025-02-01 19:59:02 +03:30
parent 8c7bdfa9fa
commit 606c636687
31 changed files with 227 additions and 3 deletions
+3
View File
@@ -1388,6 +1388,9 @@ class XCBaseAlert : public XCBase
{ {
// //
delete mAlert; delete mAlert;
//
ZeroMemory(mAlert);
} }
// //
+8
View File
@@ -56,6 +56,9 @@ class XCBaseExpert : public XCBaseAlert
{ {
// //
delete mTrader; delete mTrader;
//
ZeroMemory(mTrader);
} }
// //
@@ -654,6 +657,11 @@ class XCBaseExpert : public XCBaseAlert
delete mTrader; delete mTrader;
delete mCTHelper; delete mCTHelper;
delete mCCHelper; delete mCCHelper;
//
ZeroMemory(mTrader);
ZeroMemory(mCTHelper);
ZeroMemory(mCCHelper);
} }
/** /**
+4
View File
@@ -1056,6 +1056,10 @@ class XCPOIDetector : public XCBaseAlert
// //
delete mDrawer; delete mDrawer;
delete mTicksZone; delete mTicksZone;
//
ZeroMemory(mDrawer);
ZeroMemory(mTicksZone);
} }
// //
+4
View File
@@ -588,6 +588,10 @@ class XCTrade : public XCBase
delete mTrader; delete mTrader;
delete mAccount; delete mAccount;
//
ZeroMemory(mTrader);
ZeroMemory(mAccount);
// //
Clean(mOnModifyEventHandlers); Clean(mOnModifyEventHandlers);
Clean(mStopLossEventHandlers); Clean(mStopLossEventHandlers);
@@ -89,6 +89,9 @@ struct X121SMCStrategyXOBPVSignalConditions
// //
ExtensionClean(); ExtensionClean();
//
ZeroMemory(this);
} }
/** /**
+3
View File
@@ -249,6 +249,9 @@ void OnDeinit(const int reason)
// //
delete eaExpert; delete eaExpert;
//
ZeroMemory(eaExpert);
} }
// //
+15
View File
@@ -68,6 +68,9 @@ struct X121Inputs
xcheInputs.Clean(); xcheInputs.Clean();
xdonInputs.Clean(); xdonInputs.Clean();
xvwapInputs.Clean(); xvwapInputs.Clean();
//
ZeroMemory(this);
} }
/** /**
@@ -1108,6 +1111,9 @@ struct X121Conditions
// //
isStrLowerCrossedOverDonLowLower = false; isStrLowerCrossedOverDonLowLower = false;
isStrLowerCrossedUnderDonLowLower = false; isStrLowerCrossedUnderDonLowLower = false;
//
ZeroMemory(this);
} }
/** /**
@@ -1509,6 +1515,15 @@ class XCX121Helper : public XCBase
delete xcheHelper; delete xcheHelper;
delete xdonHelper; delete xdonHelper;
delete xvwapHelper; delete xvwapHelper;
//
ZeroMemory(xpvHelper);
ZeroMemory(xhkHelper);
ZeroMemory(xatrHelper);
ZeroMemory(xstrHelper);
ZeroMemory(xcheHelper);
ZeroMemory(xdonHelper);
ZeroMemory(xvwapHelper);
} }
// //
+4 -1
View File
@@ -105,6 +105,9 @@ struct X121XATRInputs
// //
showATRUpper = false; // Show Upper Zone showATRUpper = false; // Show Upper Zone
showATRLower = false; // Show Lower Zone showATRLower = false; // Show Lower Zone
//
ZeroMemory(this);
} }
// //
@@ -320,7 +323,7 @@ struct X121XATRConditions
isBreakedDownAtrLower = false; isBreakedDownAtrLower = false;
// //
// XDON ... ZeroMemory(this);
} }
/** /**
+6
View File
@@ -96,6 +96,9 @@ struct X121XCHEInputs
showSE1 = false; showSE1 = false;
showLE2 = false; showLE2 = false;
showSE2 = false; showSE2 = false;
//
ZeroMemory(this);
} }
// //
@@ -285,6 +288,9 @@ struct X121XCHEConditions
// //
isClosedUnderCheMin = false; isClosedUnderCheMin = false;
isClosedUnderCheMax = false; isClosedUnderCheMax = false;
//
ZeroMemory(this);
} }
/** /**
+6
View File
@@ -95,6 +95,9 @@ struct X121XDONInputs
showHigh = false; showHigh = false;
showClose = false; showClose = false;
showLow = false; showLow = false;
//
ZeroMemory(this);
} }
// //
@@ -269,6 +272,9 @@ struct X121XDONConditions
isBreakedDonHighLower = false; isBreakedDonHighLower = false;
isBreakedDonLowLower = false; isBreakedDonLowLower = false;
isBreakedDonCloseLower = false; isBreakedDonCloseLower = false;
//
ZeroMemory(this);
} }
/** /**
+6
View File
@@ -78,6 +78,9 @@ struct X121XHKInputs
startCalculationForLastBars = 1500; startCalculationForLastBars = 1500;
drawRawXHKCandles = false; drawRawXHKCandles = false;
drawSmoothedXHKCandles = false; drawSmoothedXHKCandles = false;
//
ZeroMemory(this);
} }
// //
@@ -272,6 +275,9 @@ struct X121XHKConditions
isRejectedDownSMHK = false; isRejectedDownSMHK = false;
isRejectedDownRawHK = false; isRejectedDownRawHK = false;
isRawHKBreakedDownSMHK = false; isRawHKBreakedDownSMHK = false;
//
ZeroMemory(this);
} }
/** /**
+6
View File
@@ -153,6 +153,9 @@ struct X121XPVInputs
showSar = false; showSar = false;
showPeaks = false; showPeaks = false;
showVales = false; showVales = false;
//
ZeroMemory(this);
} }
// //
@@ -382,6 +385,9 @@ struct X121XPVConditions
isNewValeUnderLast = false; isNewValeUnderLast = false;
isRejectedPrevVale = false; isRejectedPrevVale = false;
isBreakedDownPrevVale = false; isBreakedDownPrevVale = false;
//
ZeroMemory(this);
} }
/** /**
+4 -1
View File
@@ -80,6 +80,9 @@ struct X121XSTRInputs
showStr = false; showStr = false;
showStrUpper = false; showStrUpper = false;
showStrLower = false; showStrLower = false;
//
ZeroMemory(this);
} }
// //
@@ -216,7 +219,7 @@ struct X121XSTRConditions
isStrSwitchedToBearish = false; isStrSwitchedToBearish = false;
// //
// XDON ... ZeroMemory(this);
} }
/** /**
+6
View File
@@ -98,6 +98,9 @@ struct X121XVWAPInputs
showVWapFast = false; showVWapFast = false;
showVWapMedium = false; showVWapMedium = false;
showVWapSlow = false; showVWapSlow = false;
//
ZeroMemory(this);
} }
// //
@@ -307,6 +310,9 @@ struct X121XVWAPConditions
isVWapSwitchedToBullishState = false; isVWapSwitchedToBullishState = false;
isVWapSwitchedToBearishState = false; isVWapSwitchedToBearishState = false;
isVWapSwitchedToNeuturalState = false; isVWapSwitchedToNeuturalState = false;
//
ZeroMemory(this);
} }
/** /**
+3
View File
@@ -76,6 +76,9 @@ struct XCCInputs
// //
showCandles = false; showCandles = false;
//
ZeroMemory(this);
} }
// //
+3
View File
@@ -67,6 +67,9 @@ struct XCTInputs
// //
// Presentation ... // Presentation ...
showCandleTime = false; showCandleTime = false;
//
ZeroMemory(this);
} }
// //
+18
View File
@@ -399,6 +399,9 @@ struct XTick
volume = 0; volume = 0;
time = NULL; time = NULL;
symbol = NULL; symbol = NULL;
//
ZeroMemory(this);
} }
/** /**
@@ -514,6 +517,9 @@ struct XBarRemainsTime
hours = 0; hours = 0;
minutes = 0; minutes = 0;
seconds = 0; seconds = 0;
//
ZeroMemory(this);
} }
// //
@@ -805,6 +811,9 @@ struct XOHCL
time = NULL; time = NULL;
symbol = NULL; symbol = NULL;
period = NULL; period = NULL;
//
ZeroMemory(this);
} }
// //
@@ -1915,6 +1924,9 @@ struct XTimeTracker
xMinute = -1; xMinute = -1;
xDayOfWeek = -1; xDayOfWeek = -1;
xForWeekDay = -1; xForWeekDay = -1;
//
ZeroMemory(this);
} }
// //
@@ -2186,6 +2198,9 @@ struct XBarTracker
// //
symbol = NormalizeSymbol(NULL); symbol = NormalizeSymbol(NULL);
period = NormalizePeriod(NULL); period = NormalizePeriod(NULL);
//
ZeroMemory(this);
} }
// //
@@ -2430,6 +2445,9 @@ struct XMarketCycle
// //
remains.Clean(); remains.Clean();
barTracker.Clean(); barTracker.Clean();
//
ZeroMemory(this);
} }
// //
+6
View File
@@ -136,6 +136,9 @@ struct XDrawSpecifications
labelFont = "Arial"; labelFont = "Arial";
labelFontSize = 20; labelFontSize = 20;
labelAnchor = ANCHOR_LEFT_UPPER; labelAnchor = ANCHOR_LEFT_UPPER;
//
ZeroMemory(this);
} }
// //
@@ -198,6 +201,9 @@ struct XOHCLDrawSpecification
openStyle.Clean(); openStyle.Clean();
highStyle.Clean(); highStyle.Clean();
closeStyle.Clean(); closeStyle.Clean();
//
ZeroMemory(this);
} }
// //
+30
View File
@@ -3618,6 +3618,9 @@ struct XPOIState
Clean(bearishOrderBlocks); Clean(bearishOrderBlocks);
Clean(bullishFairValueGaps); Clean(bullishFairValueGaps);
Clean(bearishFairValueGaps); Clean(bearishFairValueGaps);
//
ZeroMemory(this);
} }
/** /**
@@ -4162,6 +4165,9 @@ struct XPVPivot
// //
state.Clean(); state.Clean();
//
ZeroMemory(this);
} }
/** /**
@@ -4575,6 +4581,9 @@ struct XPVPivotPoint
time = NULL; time = NULL;
repetition = 0; repetition = 0;
type = XPV_NONE; type = XPV_NONE;
//
ZeroMemory(this);
} }
/** /**
@@ -4840,6 +4849,9 @@ struct XConsolidationZone
initTime = NULL; initTime = NULL;
breakerBar.Clean(); breakerBar.Clean();
breakDirection = X_DIRECTION_NONE; breakDirection = X_DIRECTION_NONE;
//
ZeroMemory(this);
} }
/** /**
@@ -5182,6 +5194,9 @@ struct XValueChange
before = 0; before = 0;
time = NULL; time = NULL;
dir = X_DIRECTION_NONE; dir = X_DIRECTION_NONE;
//
ZeroMemory(this);
} }
/** /**
@@ -5297,6 +5312,9 @@ struct XPriceZones
supportZone = NULL; supportZone = NULL;
fairValueGap = NULL; fairValueGap = NULL;
resistanceZone = NULL; resistanceZone = NULL;
//
ZeroMemory(this);
} }
/** /**
@@ -6024,6 +6042,9 @@ struct XMarketStructure
highestPeakBar.Clean(); highestPeakBar.Clean();
peakBelowHighestPeakValeBar.Clean(); peakBelowHighestPeakValeBar.Clean();
highestPeakValeBreakeDownBar.Clean(); highestPeakValeBreakeDownBar.Clean();
//
ZeroMemory(this);
} }
/** /**
@@ -6156,6 +6177,9 @@ struct XStateZones
Clean(bearishOrderBlocks); Clean(bearishOrderBlocks);
Clean(bullishFairValueGaps); Clean(bullishFairValueGaps);
Clean(bearishFairValueGaps); Clean(bearishFairValueGaps);
//
ZeroMemory(this);
} }
/** /**
@@ -6316,6 +6340,9 @@ struct XFVGOrderBlock
// //
orderBlock = NULL; orderBlock = NULL;
fairValueGap = NULL; fairValueGap = NULL;
//
ZeroMemory(this);
} }
/** /**
@@ -6525,6 +6552,9 @@ struct XBoxZone
symbol = NULL; symbol = NULL;
period = NULL; period = NULL;
dir = X_DIRECTION_NONE; dir = X_DIRECTION_NONE;
//
ZeroMemory(this);
} }
/** /**
+33
View File
@@ -472,6 +472,9 @@ struct XPosition
symbol = NULL; symbol = NULL;
comment = NULL; comment = NULL;
provider = NULL; provider = NULL;
//
ZeroMemory(this);
} }
// //
@@ -1507,6 +1510,9 @@ struct XSignal
// //
Clean(supports); Clean(supports);
//
ZeroMemory(this);
} }
// //
@@ -2054,6 +2060,9 @@ struct XOrder
period = NULL; period = NULL;
filling = NULL; filling = NULL;
lifetime = NULL; lifetime = NULL;
//
ZeroMemory(this);
} }
// //
@@ -2411,6 +2420,9 @@ struct XDeal
entry = NULL; entry = NULL;
period = NULL; period = NULL;
reason = NULL; reason = NULL;
//
ZeroMemory(this);
} }
// //
@@ -2617,6 +2629,9 @@ struct XOnTradeHandlerState
newOrders = 0; newOrders = 0;
newPositions = 0; newPositions = 0;
newHistoryOrders = 0; newHistoryOrders = 0;
//
ZeroMemory(this);
} }
// //
@@ -2743,6 +2758,9 @@ struct XGuard
// //
strPayload = NULL; strPayload = NULL;
dblPayLoad = EMPTY_VALUE; dblPayLoad = EMPTY_VALUE;
//
ZeroMemory(this);
} }
// //
@@ -2809,6 +2827,9 @@ struct XPositionPack
// //
Clean(supportOrders); Clean(supportOrders);
Clean(supportPositions); Clean(supportPositions);
//
ZeroMemory(this);
} }
// //
@@ -2956,6 +2977,9 @@ struct XTrail
before = 0; before = 0;
after = 0; after = 0;
level = 0; level = 0;
//
ZeroMemory(this);
} }
// //
@@ -3203,6 +3227,9 @@ struct XSymbolPositions
Clean(longs); Clean(longs);
Clean(shorts); Clean(shorts);
Clean(positions); Clean(positions);
//
ZeroMemory(this);
} }
// //
@@ -3608,6 +3635,9 @@ struct XSymbolLastPosition
time = NULL; time = NULL;
symbol = NULL; symbol = NULL;
provider = NULL; provider = NULL;
//
ZeroMemory(this);
} }
}; };
@@ -3780,6 +3810,9 @@ struct XTradeData
// //
ResetTrail(); ResetTrail();
ResetRecovery(); ResetRecovery();
//
ZeroMemory(this);
} }
// //
@@ -965,6 +965,10 @@ class XCX121SMCBaseStrategy : public XCBaseAlert
*/ */
void DeInit() void DeInit()
{ {
//
ZeroMemory(mPOIDrawer);
ZeroMemory(mBarAnalyser);
// //
delete mPOIDrawer; delete mPOIDrawer;
delete mBarAnalyser; delete mBarAnalyser;
@@ -1620,6 +1620,11 @@ class XC121SMCCycleHelper : public XCBase
*/ */
void DeInit() void DeInit()
{ {
//
ZeroMemory(mX121Helper);
ZeroMemory(mPOIDetector);
ZeroMemory(mBarAnalyser);
// //
delete mX121Helper; delete mX121Helper;
delete mPOIDetector; delete mPOIDetector;
@@ -118,6 +118,9 @@ struct X121SMCTradeData
// //
signal.Clean(); signal.Clean();
//
ZeroMemory(this);
} }
/** /**
@@ -1035,6 +1038,9 @@ struct X121SMCSymbolPositionInfo
// //
enableAt = NULL; enableAt = NULL;
//
ZeroMemory(this);
} }
/** /**
@@ -1386,6 +1386,11 @@ class XC121SMCExpert : public XCBaseExpert
*/ */
void DestroyEA() override void DestroyEA() override
{ {
//
ZeroMemory(mCTHelper);
ZeroMemory(mCCHelper);
ZeroMemory(mTradeHandler);
// //
delete mCTHelper; delete mCTHelper;
delete mCCHelper; delete mCCHelper;
+12
View File
@@ -107,6 +107,9 @@ struct X121SMCCycleConditions
// //
state.Clean(); state.Clean();
x121Conditions.Clean(); x121Conditions.Clean();
//
ZeroMemory(this);
} }
/** /**
@@ -313,6 +316,9 @@ struct X121SMCStrategyConditions
// priceZones.Clean(); // priceZones.Clean();
// decisionZones.Clean(); // decisionZones.Clean();
// marketStructure.Clean(); // marketStructure.Clean();
//
ZeroMemory(this);
} }
/** /**
@@ -584,6 +590,9 @@ struct X121SMCGuard
// //
sl = 0; sl = 0;
tp = 0; tp = 0;
//
ZeroMemory(this);
} }
/** /**
@@ -671,6 +680,9 @@ struct X121SMCCycleState
Clean(bearishOBs); Clean(bearishOBs);
Clean(supplyZones); Clean(supplyZones);
Clean(resistanceZones); Clean(resistanceZones);
//
ZeroMemory(this);
} }
/** /**
@@ -89,6 +89,9 @@ struct X121SMCStrategyXSignalConditions
// //
ExtensionClean(); ExtensionClean();
//
ZeroMemory(this);
} }
/** /**
@@ -93,6 +93,9 @@ struct X121SMCStrategyXHKPVSignalConditions
// //
ExtensionClean(); ExtensionClean();
//
ZeroMemory(this);
} }
/** /**
@@ -93,6 +93,9 @@ struct X121SMCStrategyXIOBPVSignalConditions
// //
ExtensionClean(); ExtensionClean();
//
ZeroMemory(this);
} }
/** /**
@@ -90,6 +90,9 @@ struct X121SMCStrategyXOBPVSignalConditions
// //
ExtensionClean(); ExtensionClean();
//
ZeroMemory(this);
} }
/** /**
@@ -87,6 +87,9 @@ struct X121SMCStrategyXOBSSignalConditions
// //
ExtensionClean(); ExtensionClean();
//
ZeroMemory(this);
} }
/** /**
@@ -117,6 +117,14 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
*/ */
void Destroy() override void Destroy() override
{ {
//
ZeroMemory(mTriggerCycleHelper);
ZeroMemory(mDecisionCycleHelper);
ZeroMemory(mAnalyseCycleHelper);
ZeroMemory(mVerificationCycleHelper);
ZeroMemory(mConsolidationCycleHelper);
ZeroMemory(mVisionCycleHelper);
// //
delete mTriggerCycleHelper; delete mTriggerCycleHelper;
delete mDecisionCycleHelper; delete mDecisionCycleHelper;