Prepare XFIMA BackTester for Test ...

This commit is contained in:
2025-10-02 14:59:58 +03:30
parent ed04bb2b1a
commit 18c033d154
6 changed files with 373 additions and 31 deletions
@@ -569,6 +569,45 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
analyserConfig //
);
//
// Draw Market Analysis ...
// has = iStructure.pvAnalysis.IsValid();
// if (has)
// {
// //
// XBoxZone iBox;
// XCBoxObject *iBoxObj;
// //
// has = iStructure.pvAnalysis.HasSupportBox(iBox);
// if (has)
// {
// //
// iBox.to = iBar.time;
// poiDrawer.DrawBox(
// iBox,
// iBoxObj,
// true,
// iBox.type //
// );
// }
// //
// ZeroMemory(iBoxObj);
// has = iStructure.pvAnalysis.HasResistanceBox(iBox);
// if (has)
// {
// //
// iBox.to = iBar.time;
// poiDrawer.DrawBox(
// iBox,
// iBoxObj,
// true,
// iBox.type //
// );
// }
// }
//
// Disable Signallers ...
has = false;
@@ -856,6 +895,74 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
: IsXBearish(patternDir)
? bar.low < zone.lower
: false;
//
// Validate Zone ...
if (result)
{
//
//
}
//
// Draw Requirements ...
// if (result)
// {
// //
// // Support and Resistances ...
// CArrayObj *zoneObjs;
// poiDrawer.DrawBoxes(
// supports,
// zoneObjs //
// );
// poiDrawer.DrawBoxes(
// resistances,
// zoneObjs //
// );
// //
// // Zone ...
// XCBoxObject *iZoneObj;
// bool isDrawn = poiDrawer.DrawBox(
// zone,
// iZoneObj,
// true,
// zone.type //
// );
// if (isDrawn)
// {
// //
// XPOIStyle iStyle;
// iStyle.width = 2;
// iStyle.clr = clrYellow;
// poiDrawer.ApplyBoxStyle(
// iZoneObj,
// iStyle //
// );
// }
// //
// // Pattern ...
// XCBarArrowObject *iPObj;
// poiDrawer.DrawBarArrow(
// bar,
// iPObj,
// zone.IsBullish() ? X_PRICE_LOW : X_PRICE_HIGH,
// 159,
// clrYellow,
// 3, // With ...
// zone.IsBullish() ? ANCHOR_BOTTOM : ANCHOR_TOP,
// patternName //
// );
// // poiDrawer.DrawBoxes(
// // structure.fvgs,
// // zoneObjs,
// // false //
// // );
// Print("SALAM");
// }
if (result)
{
//
@@ -872,7 +979,7 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
int numberOfTargets = 3;
double actingDistance = 20;
double iValue = EMPTY_VALUE;
bool ignoreFirstTarget = true;
bool ignoreFirstTarget = false;
ENUM_X_DIRECTION targetsDir = Opposit(dir);
int count = ExtractByDirection(
targetZones,
@@ -973,27 +1080,6 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
XClean(targetZones);
}
//
// TODO: Remove this ...
if (result)
{
//
CArrayObj *zoneObjs;
poiDrawer.DrawBoxes(
supports,
zoneObjs //
);
poiDrawer.DrawBoxes(
resistances,
zoneObjs //
);
poiDrawer.DrawBoxes(
structure.fvgs,
zoneObjs,
false //
);
}
//
// Cleanup Resources ...
if (!result)