last works on clearify POI(s) ...

This commit is contained in:
2025-03-17 04:04:05 +03:30
parent 3b31c36541
commit a1f3289bb6
12 changed files with 10754 additions and 2086 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+176 -23
View File
@@ -3348,22 +3348,29 @@ class XCPOIDrawer : public XCBase
int DrawState(
XPOIState &state,
XCBaseObject *&drawnObjects[],
bool drawTicksZone = false,
bool ignoreSwingHighs = false,
//
// Bullish ...
bool ignoreSwingLows = false,
bool ignoreSupportZones = false,
bool ignoreResistanceZones = false,
bool ignoreSupplyZones = false,
bool ignoreDemandZones = false,
bool ignoreSupportZones = false,
bool ignoreBullishSharps = false,
bool ignoreBullishSpikes = false,
bool ignoreBullishMomentums = false,
bool ignoreBullishRejections = false,
bool ignoreBullishOrderBlocks = false,
bool ignoreBearishOrderBlocks = false,
bool ignoreBullishFairValueGaps = false,
bool ignoreBearishFairValueGaps = false,
bool ignoreBullishRejectionBars = false,
bool ignoreBearishRejectionBars = false,
bool ignoreBullishMomentumBars = false,
bool ignoreBearishMomentumBars = false,
bool ignoreBullishConsolidationZones = false,
//
// Bearish ...
bool ignoreSwingHighs = false,
bool ignoreSupplyZones = false,
bool ignoreBearishSharps = false,
bool ignoreBearishSpikes = false,
bool ignoreResistanceZones = false,
bool ignoreBearishMomentums = false,
bool ignoreBearishRejections = false,
bool ignoreBearishOrderBlocks = false,
bool ignoreBearishFairValueGaps = false,
bool ignoreBearishConsolidationZones = false //
)
{
@@ -3380,6 +3387,9 @@ class XCPOIDrawer : public XCBase
//
Clean(drawnObjects);
//
// Swings ...
//
// SwingHighs ...
if (!ignoreSwingHighs)
@@ -3444,6 +3454,9 @@ class XCPOIDrawer : public XCBase
}
}
//
// Support / Resistance ...
//
// SupportZones ...
if (!ignoreSupportZones)
@@ -3508,6 +3521,9 @@ class XCPOIDrawer : public XCBase
}
}
//
// Supply / Demand ...
//
// SupplyZones ...
if (!ignoreSupplyZones)
@@ -3572,6 +3588,9 @@ class XCPOIDrawer : public XCBase
}
}
//
// Order Blocks ...
//
// BullishOrderBlocks ...
if (!ignoreBullishOrderBlocks)
@@ -3636,6 +3655,9 @@ class XCPOIDrawer : public XCBase
}
}
//
// Fair Value Gaps ...
//
// BullishFairValueGaps ...
if (!ignoreBullishFairValueGaps)
@@ -3700,19 +3722,22 @@ class XCPOIDrawer : public XCBase
}
}
//
// Rejections ...
//
// BullishRejectionBars ...
if (!ignoreBullishRejectionBars)
if (!ignoreBullishRejections)
{
//
int count = state.CountBullishRejectionBars();
int count = state.CountBullishRejections();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCRejectionBar *iBar = state.bullishRejectionBars[i];
XCRejectionBar *iBar = state.bullishRejections[i];
XCBullishRejectionBarObject *iObj;
//
@@ -3734,17 +3759,17 @@ class XCPOIDrawer : public XCBase
//
// BearishRejectionBars ...
if (!ignoreBearishRejectionBars)
if (!ignoreBearishRejections)
{
//
int count = state.CountBearishRejectionBars();
int count = state.CountBearishRejections();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCRejectionBar *iBar = state.bearishRejectionBars[i];
XCRejectionBar *iBar = state.bearishRejections[i];
XCBearishRejectionBarObject *iObj;
//
@@ -3764,19 +3789,22 @@ class XCPOIDrawer : public XCBase
}
}
//
// Momentums ...
//
// BullishMomentumBars ...
if (!ignoreBullishMomentumBars)
if (!ignoreBullishMomentums)
{
//
int count = state.CountBullishMomentumBars();
int count = state.CountBullishMomentums();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCMomentumBar *iBar = state.bullishMomentumBars[i];
XCMomentumBar *iBar = state.bullishMomentums[i];
XCBullishMomentumBarObject *iObj;
//
@@ -3798,17 +3826,17 @@ class XCPOIDrawer : public XCBase
//
// BearishMomentumBars ...
if (!ignoreBearishMomentumBars)
if (!ignoreBearishMomentums)
{
//
int count = state.CountBearishMomentumBars();
int count = state.CountBearishMomentums();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCMomentumBar *iBar = state.bearishMomentumBars[i];
XCMomentumBar *iBar = state.bearishMomentums[i];
XCBearishMomentumBarObject *iObj;
//
@@ -3828,6 +3856,9 @@ class XCPOIDrawer : public XCBase
}
}
//
// Consolidation Zones ...
//
// Bullish Consolidation Zones ...
if (!ignoreBullishConsolidationZones)
@@ -3886,6 +3917,128 @@ class XCPOIDrawer : public XCBase
}
}
//
// Spikes ...
//
// Bullish ...
if (!ignoreBullishSpikes)
{
//
int count = state.CountBullishSpikes();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCBoxObject *iObj;
bool isCreated = DrawBox(
state.bullishSpikes[i],
iObj //
);
if (isCreated)
{
//
Add(
(XCBaseObject *)iObj,
drawnObjects //
);
}
}
}
}
//
// Bearish ...
if (!ignoreBearishSpikes)
{
//
int count = state.CountBearishSpikes();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCBoxObject *iObj;
bool isCreated = DrawBox(
state.bearishSpikes[i],
iObj //
);
if (isCreated)
{
//
Add(
(XCBaseObject *)iObj,
drawnObjects //
);
}
}
}
}
//
// Sharps ...
//
// Bullish ...
if (!ignoreBullishSharps)
{
//
int count = state.CountBullishSharps();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCBoxObject *iObj;
bool isCreated = DrawBox(
state.bullishSharps[i],
iObj //
);
if (isCreated)
{
//
Add(
(XCBaseObject *)iObj,
drawnObjects //
);
}
}
}
}
//
// Bearish ...
if (!ignoreBearishSharps)
{
//
int count = state.CountBearishSharps();
if (IsValidSize(count))
{
//
for (int i = 0; i < count; i++)
{
//
XCBoxObject *iObj;
bool isCreated = DrawBox(
state.bearishSharps[i],
iObj //
);
if (isCreated)
{
//
Add(
(XCBaseObject *)iObj,
drawnObjects //
);
}
}
}
}
//
result = ArraySize(drawnObjects);