Last Works on Validating Order Blocks ...

This commit is contained in:
2025-01-06 21:53:05 +03:30
parent 9d4b2ee578
commit 65b7a2ca7f
13 changed files with 3490 additions and 751 deletions
+97 -20
View File
@@ -61,6 +61,36 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
{
}
//
// Getter(s) / Setter(s) ...
/**
* Get Max Allowed Required POI(s) to Find ...
*
* @return ( int )
*/
int MaxAllowedRequiredPOIs()
{
return mMaxAllowedRequiredPOIs;
}
/**
* Set Max Allowed Required POI(s) to Find ...
*
* @param value: number of Required POIs
*/
void MaxAllowedRequiredPOIs(int value)
{
//
if (value < 10)
{
value = 10;
}
//
mMaxAllowedRequiredPOIs = value;
}
//
// Overrides Actions ...
@@ -488,13 +518,30 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
mAnalyseCycleHelper,
mVerificationCycleHelper,
mConsolidationCycleHelper,
mVisionCycleHelper //
mVisionCycleHelper,
mPOIDrawer //
);
//
setupDir = mXTWPVConditions.dir;
setupTime = mXTWPVConditions.setupTime;
}
//
// if (mXTWPVConditions.HasPriceZone())
// {
// //
// XCBaseObject *objects[];
// mPOIDrawer.DrawPriceZone(
// mXTWPVConditions.priceZone,
// objects //
// );
// //
// Print("");
// }
//
result = isSetuped;
if (!result)
{
@@ -553,16 +600,17 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
conditions.target = mXTWPVConditions.target;
//
conditions.decisionZones = mXTWPVConditions.decisionZone;
conditions.marketStructure = mXTWPVConditions.analyseMarketStructure;
if (isBullish)
{
conditions.priceZones = mXTWPVConditions.valePriceZone;
}
else
{
conditions.priceZones = mXTWPVConditions.peakPriceZone;
}
// TODO: Remove ...
// conditions.decisionZones = mXTWPVConditions.decisionZone;
// conditions.marketStructure = mXTWPVConditions.analyseMarketStructure;
// if (isBullish)
// {
// conditions.priceZones = mXTWPVConditions.valePriceZone;
// }
// else
// {
// conditions.priceZones = mXTWPVConditions.peakPriceZone;
// }
//
mXTWPVConditions.Clean();
@@ -577,6 +625,9 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
//
// Props ...
//
int mMaxAllowedRequiredPOIs; // Max Allowed Required POI(s) to Find ...
/**
* Initial Required Indicators Helper ...
*/
@@ -586,6 +637,12 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
string symbol = GetSymbol();
ENUM_TIMEFRAMES period = GetPeriod();
//
if (mMaxAllowedRequiredPOIs <= 0)
{
mMaxAllowedRequiredPOIs = 50;
}
//
// Short ...
ENUM_X_PERIOD_METHOD scMethod = X_PERIOD_AUTO; // How to Find Period
@@ -613,6 +670,9 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
//
x121Inputs.Default();
//
x121Inputs.showRSI = false;
//
bool isInited = false;
@@ -629,6 +689,11 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
x121Inputs.xpvInputs.hcMethod = hcMethod;
x121Inputs.xpvInputs.hcPeriod = hcPeriod;
//
x121Inputs.xpvInputs.showSar = false;
x121Inputs.xpvInputs.showPeaks = false;
x121Inputs.xpvInputs.showVales = false;
//
// XATR ...
x121Inputs.xatrInputs.showATRUpper = false;
@@ -636,29 +701,36 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
//
// XSTR ...
x121Inputs.xstrInputs.showStr = false;
x121Inputs.xstrInputs.showStrUpper = false;
x121Inputs.xstrInputs.showStrLower = false;
//
// XDON ...
x121Inputs.xdonInputs.showOpen = false;
x121Inputs.xdonInputs.showClose = true;
x121Inputs.xdonInputs.showClose = false;
x121Inputs.xdonInputs.showLow = false;
x121Inputs.xdonInputs.showHigh = false;
//
// XVWAP ...
x121Inputs.xvwapInputs.showVWapFast = true;
x121Inputs.xvwapInputs.showVWapFast = true;
x121Inputs.xvwapInputs.showVWapFast = false;
x121Inputs.xvwapInputs.showVWapFast = false;
x121Inputs.xvwapInputs.showVWapSlow = false;
//
// Initialize Cycle Helpers ...
//
int requiredPOIS = MaxAllowedRequiredPOIs();
//
mTriggerCycleHelper = new XC121SMCCycleHelper();
isInited = mTriggerCycleHelper.Init(
symbol,
PERIOD_M1,
x121Inputs //
x121Inputs,
requiredPOIS //
);
//
@@ -666,7 +738,8 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
isInited = mDecisionCycleHelper.Init(
symbol,
PERIOD_M5,
x121Inputs //
x121Inputs,
requiredPOIS //
);
//
@@ -674,7 +747,8 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
isInited = mAnalyseCycleHelper.Init(
symbol,
PERIOD_M15,
x121Inputs //
x121Inputs,
requiredPOIS //
);
//
@@ -682,7 +756,8 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
isInited = mVerificationCycleHelper.Init(
symbol,
PERIOD_M30,
x121Inputs //
x121Inputs,
requiredPOIS //
);
//
@@ -690,7 +765,8 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
isInited = mConsolidationCycleHelper.Init(
symbol,
PERIOD_H1,
x121Inputs //
x121Inputs,
requiredPOIS //
);
//
@@ -698,7 +774,8 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
isInited = mVisionCycleHelper.Init(
symbol,
PERIOD_H4,
x121Inputs //
x121Inputs,
requiredPOIS //
);
}