This commit is contained in:
2025-09-30 03:53:35 +03:30
parent ab38b28fab
commit 32b218afbc
7 changed files with 674 additions and 254 deletions
@@ -1163,6 +1163,42 @@ class XCXFIMAStrategy2Signaller : public XCXFIMABaseSignaller
//
// Calling Without Candlestick Patterns Strategies ...
//
// Testing Bar Zones ...
XBoxZone barZones[];
int barCounts = fima2Signaller.fimaHelper.ExtractBarZones(
barZones,
1, // Bar Index ...
50, // Number of Zones ...
3, // Break Validation Length ...
true, // Validate Fake Breakes ...
5, // Shadow Multiplier ...
1, // Strength ...
14 // Validation Length ...
);
if (IsValidSize(barCounts))
{
//
XCBoxObject *iObj;
for (int i = 0; i < barCounts; i++)
{
//
iObj = NULL;
bool isCreated = fima2Signaller.poiDrawer.DrawBox(
barZones[i],
iObj,
true, // Ignore At ...
barZones[i].type // Name ...
);
//
ZeroMemory(iObj);
}
// //
// Print("Bar Zones Detected ...");
}
//
// Testing HK Zones ...
XBoxZone hkZones[];
@@ -1172,29 +1208,51 @@ class XCXFIMAStrategy2Signaller : public XCXFIMABaseSignaller
50, // Number of Zones ...
5, // Shadow Multiplier ...
1, // Strength ...
21 // Validation Length ...
14 // Validation Length ...
);
if (IsValidSize(hkCounts))
{
//
XCBoxObject *iObj;
for (int i = 0; i < hkCounts; i++)
{
//
iObj = NULL;
bool isCreated = fima2Signaller.poiDrawer.DrawBox(
hkZones[i],
iObj,
true, // Ignore At ...
hkZones[i].type // Name ...
);
// //
// XCBoxObject *iObj;
// for (int i = 0; i < hkCounts; i++)
// {
// //
// iObj = NULL;
// bool isCreated = fima2Signaller.poiDrawer.DrawBox(
// hkZones[i],
// iObj,
// true, // Ignore At ...
// hkZones[i].type // Name ...
// );
//
ZeroMemory(iObj);
}
// //
// ZeroMemory(iObj);
// }
// //
// Print("HK Zones Detected ...");
}
//
// Testing XFIMA MA Pivots ...
XPivot maPivots[];
int maPivotsCount = fimaHelper.ExtractMAPivots(
maPivots,
1, // Bar Index ...
50, // Number of Pivots ...
0 // Validation Length ...
);
if (IsValidSize(maPivotsCount))
{
//
CArrayObj *iPivotsObj;
maPivotsCount = poiDrawer.DrawPivots(
maPivots,
iPivotsObj //
);
//
Print("HK Zones Detected ...");
Print("MA Pivots Detected ...");
}
//
@@ -1312,7 +1370,7 @@ class XCXFIMAStrategy2Signaller : public XCXFIMABaseSignaller
//
// Do all Draws Here ...
bool canDraw = true;
bool canDraw = false;
if (canDraw && has)
{
//
@@ -938,25 +938,6 @@ class XCXFIMAPOIDetector : public XCMarketPatternDetector
}
}
//
// Analyse Based on MA ...
if (config.analyseFIMAMAPivots)
{
//
XPivotAnalysis analysis;
has = AnalyseMAPivots(
analysis, // Result ...
forBar.Index(), // Bar Index ...
config.numberOfRequiredPivotsForAnalysis, // Required Number of Pivots ...
config.maxAllowedLoopbackLengthForAnalysis, // Max Allowed Loopback ...
config.pvPivotsValidationLength // Validation Length ...
);
if (has)
{
structure.maAnalysis = analysis;
}
}
//
// Analyse Based on SAR ...
if (config.analyseFIMASARPivots)
@@ -1246,33 +1246,6 @@ class XCXFIMAPOIDrawer : public XCPOIDrawer
}
}
//
// XFIMA MA Analysis ...
if (config.drawFIMAMAPivotsAnalysis)
{
//
// Validate ...
has = structure.maAnalysis.IsValid();
if (has)
{
//
XCPivotAnalysisObject *iObj;
has = DrawPivotAnalysis(
structure.pvAnalysis,
iObj,
config.drawFIMAMAPivotsAnalysisTrends,
config.drawFIMAMAPivotsAnalysisZones,
config.drawFIMAMAPivotsAnalysisPivots,
bearArrowCode,
bullArrowCode //
);
if (has)
{
objects.Add(iObj);
}
}
}
//
// XFIMA Sar Analysis ...
if (config.drawFIMASARPivotsAnalysis)
@@ -66,7 +66,6 @@ struct XFIMAPatternDetectorConfig
//
bool analyseFIMAPVPivots;
bool analyseFIMAMAPivots;
bool analyseFIMASARPivots;
bool analyseFIMAZigZagPivots;
@@ -123,7 +122,6 @@ struct XFIMAPatternDetectorConfig
//
// Analyser ...
int pvPivotsValidationLength;
int maPivotsValidationLength;
int numberOfRequiredPivotsForAnalysis;
int maxAllowedLoopbackLengthForAnalysis;
@@ -158,7 +156,6 @@ struct XFIMAPatternDetectorConfig
detectEngulfed = false;
detectTrueGaped = false;
analyseFIMAPVPivots = false;
analyseFIMAMAPivots = false;
analyseFIMASARPivots = false;
analyseFIMAZigZagPivots = false;
@@ -185,7 +182,6 @@ struct XFIMAPatternDetectorConfig
signalKeyBarMinimumPinBarRangeMultiplier = 0;
signalKeyBarForceDirection = false;
pvPivotsValidationLength = 0;
maPivotsValidationLength = 0;
numberOfRequiredPivotsForAnalysis = 0;
maxAllowedLoopbackLengthForAnalysis = 0;
@@ -227,7 +223,6 @@ struct XFIMAPatternDetectorConfig
//
// Analysers ...
analyseFIMAPVPivots = false;
analyseFIMAMAPivots = false;
analyseFIMASARPivots = false;
analyseFIMAZigZagPivots = false;
@@ -279,7 +274,6 @@ struct XFIMAPatternDetectorConfig
//
// Length ...
pvPivotsValidationLength = 10;
maPivotsValidationLength = 0;
numberOfRequiredPivotsForAnalysis = 50;
maxAllowedLoopbackLengthForAnalysis = 1500;
}
@@ -318,7 +312,6 @@ struct XFIMAPatternDetectorConfig
//
// Analysers ...
analyseFIMAPVPivots = true;
analyseFIMAMAPivots = true;
analyseFIMASARPivots = true;
analyseFIMAZigZagPivots = true;
}
@@ -357,7 +350,6 @@ struct XFIMAPatternDetectorConfig
//
// Analysers ...
analyseFIMAPVPivots = false;
analyseFIMAMAPivots = false;
analyseFIMASARPivots = false;
analyseFIMAZigZagPivots = false;
}
@@ -413,7 +405,6 @@ struct XFIMAMarketStructure
//
// Analysis ...
XPivotAnalysis pvAnalysis;
XPivotAnalysis maAnalysis;
XPivotAnalysis sarAnalysis;
XPivotAnalysis zigzagAnalysis;
@@ -467,7 +458,6 @@ struct XFIMAMarketStructure
//
pvAnalysis.Clean();
maAnalysis.Clean();
sarAnalysis.Clean();
zigzagAnalysis.Clean();
@@ -567,13 +557,6 @@ struct XFIMAMarketStructureDrawerConfig
bool drawFIMAPVPivotsAnalysisTrends;
bool drawFIMAPVPivotsAnalysisPivots;
//
// XMA ...
bool drawFIMAMAPivotsAnalysis;
bool drawFIMAMAPivotsAnalysisZones;
bool drawFIMAMAPivotsAnalysisTrends;
bool drawFIMAMAPivotsAnalysisPivots;
//
// XSAR ...
bool drawFIMASARPivotsAnalysis;
@@ -633,12 +616,6 @@ struct XFIMAMarketStructureDrawerConfig
drawFIMAPVPivotsAnalysisTrends = false;
drawFIMAPVPivotsAnalysisPivots = false;
//
drawFIMAMAPivotsAnalysis = false;
drawFIMAMAPivotsAnalysisZones = false;
drawFIMAMAPivotsAnalysisTrends = false;
drawFIMAMAPivotsAnalysisPivots = false;
//
drawFIMASARPivotsAnalysis = false;
drawFIMASARPivotsAnalysisZones = false;
@@ -689,12 +666,6 @@ struct XFIMAMarketStructureDrawerConfig
drawFIMAPVPivotsAnalysisTrends = true;
drawFIMAPVPivotsAnalysisPivots = true;
//
drawFIMAMAPivotsAnalysis = true;
drawFIMAMAPivotsAnalysisZones = true;
drawFIMAMAPivotsAnalysisTrends = true;
drawFIMAMAPivotsAnalysisPivots = true;
//
drawFIMASARPivotsAnalysis = true;
drawFIMASARPivotsAnalysisZones = true;
@@ -746,12 +717,6 @@ struct XFIMAMarketStructureDrawerConfig
drawFIMAPVPivotsAnalysisTrends = true;
drawFIMAPVPivotsAnalysisPivots = true;
//
drawFIMAMAPivotsAnalysis = true;
drawFIMAMAPivotsAnalysisZones = true;
drawFIMAMAPivotsAnalysisTrends = true;
drawFIMAMAPivotsAnalysisPivots = true;
//
drawFIMASARPivotsAnalysis = true;
drawFIMASARPivotsAnalysisZones = true;