This commit is contained in:
2025-02-10 14:15:06 +03:30
parent 2bbfdd3705
commit ad3a9e691f
3 changed files with 686 additions and 16 deletions
@@ -2403,7 +2403,7 @@ bool DetectX121SMCXSupDemOBSSignalSetup(
if (isPriceInQuarterOne)
{
//
bullishPriority = X121SMC_XSUPDEMOBS_PRIORITY_WEAK;
bullishPriority = X121SMC_XSUPDEMOBS_PRIORITY_NONE;
bearishPriority = X121SMC_XSUPDEMOBS_PRIORITY_REGULAR;
}
@@ -2455,7 +2455,7 @@ bool DetectX121SMCXSupDemOBSSignalSetup(
{
//
bullishPriority = X121SMC_XSUPDEMOBS_PRIORITY_REGULAR;
bearishPriority = X121SMC_XSUPDEMOBS_PRIORITY_WEAK;
bearishPriority = X121SMC_XSUPDEMOBS_PRIORITY_NONE;
}
//
@@ -2985,40 +2985,72 @@ bool DetectX121SMCXSupDemOBSSignalSetup(
if (isLookingForBullish)
{
//
obsCount = ExtractUnActivatedZones(
Copy(
analyseState.bullishOrderBlocks,
obs //
);
hasOBs = IsValidSize(obsCount);
FilterZones(
insideDemandZone,
obs,
true, // Filter Direction ...
true, // Filter From ...
true, // Filter Price ...
true, // Ignore Out of Box ...
true, // Apply Sort ...
true // Ignore Inside ...
);
//
fvgsCount = ExtractUnActivatedZones(
Copy(
analyseState.bullishFairValueGaps,
fvgs //
);
hasFVGs = IsValidSize(fvgsCount);
FilterZones(
insideDemandZone,
fvgs,
true, // Filter Direction ...
true, // Filter From ...
true, // Filter Price ...
true, // Ignore Out of Box ...
true, // Apply Sort ...
true // Ignore Inside ...
);
}
else
{
//
obsCount = ExtractUnActivatedZones(
Copy(
analyseState.bearishOrderBlocks,
obs //
);
hasOBs = IsValidSize(obsCount);
FilterZones(
insideSupplyZone,
obs,
true, // Filter Direction ...
true, // Filter From ...
true, // Filter Price ...
false, // Ignore Out of Box ...
true, // Apply Sort ...
true // Ignore Inside ...
);
//
fvgsCount = ExtractUnActivatedZones(
Copy(
analyseState.bearishFairValueGaps,
fvgs //
);
hasFVGs = IsValidSize(fvgsCount);
FilterZones(
insideSupplyZone,
fvgs,
true, // Filter Direction ...
true, // Filter From ...
true, // Filter Price ...
false, // Ignore Out of Box ...
true, // Apply Sort ...
true // Ignore Inside ...
);
}
//
OrderedSortZones(obs);
OrderedSortZones(fvgs);
//
obsCount = ArraySize(obs);
fvgsCount = ArraySize(fvgs);
@@ -3026,6 +3058,42 @@ bool DetectX121SMCXSupDemOBSSignalSetup(
//
hasOBs = IsValidSize(obsCount);
hasFVGs = IsValidSize(fvgsCount);
//
if (hasOBs)
{
//
for (int i = 0; i < obsCount; i++)
{
//
obs[i].To(cTime);
//
DrawX121SMCXSupDemOBSOrderBlock(
obs[i],
analyseCycleHelper.mPOIDrawer //
);
}
}
//
if (hasFVGs)
{
//
for (int i = 0; i < fvgsCount; i++)
{
//
fvgs[i].To(cTime);
//
DrawX121SMCXSupDemOBSFairValueGap(
fvgs[i],
analyseCycleHelper.mPOIDrawer //
);
}
}
//
if (hasOBs ||
hasFVGs)
{
@@ -3210,8 +3278,9 @@ bool DetectX121SMCXSupDemOBSSignalSetup(
//
result = hasInsideZone ||
hasRejectedZone ||
isPriceRejected;
hasRejectedZone;
// ||
// isPriceRejected;
if (!result)
{
//