This commit is contained in:
2025-09-24 18:11:00 +03:30
parent d9cb6272d5
commit a1a49449f0
2 changed files with 121 additions and 84 deletions
+80 -44
View File
@@ -387,10 +387,7 @@ int OnInit()
//
// Configure XFIMA POI Detector / Drawer ...
detectorConfig.Default();
detectorConfig.OffDetectors();
detectorConfig.detectSignalKeyBarPattern = true;
marketStructureDrawerConfig.FullDraw();
marketStructureDrawerConfig.swingTrendRayLeft = false;
//
Print(ShortName, ": Initialized Successfully ...");
@@ -456,53 +453,53 @@ void OnTick()
}
//
// fima1Signaller.OnTick();
fima1Signaller.OnTick();
fima2Signaller.OnTick();
//
// Initial Bar for Analysis ...
XOHCL cBar;
bool isInited = cBar.Init(
_Symbol,
_Period,
1 //
);
// //
// // Initial Bar for Analysis ...
// XOHCL cBar;
// bool isInited = cBar.Init(
// _Symbol,
// _Period,
// 1 //
// );
//
// Analyse Market ...
fima2Signaller.poiDetector.AnalyseMarket(
cBar,
marketStructure,
detectorConfig //
);
CArrayObj *iObjects;
int drawnsCount = fima2Signaller.poiDrawer.DrawMarketStructure(
marketStructure,
marketStructureDrawerConfig,
iObjects //
);
if (IsValidSize(drawnsCount))
{
//
AddObjects(
iObjects,
eaDraws //
);
}
// fima2Signaller.poiDetector.AnalyseMarket(
// cBar,
// marketStructure,
// detectorConfig //
// );
// CArrayObj *iObjects;
// int drawnsCount = fima2Signaller.poiDrawer.DrawMarketStructure(
// marketStructure,
// marketStructureDrawerConfig,
// iObjects //
// );
// if (IsValidSize(drawnsCount))
// {
// //
// AddObjects(
// iObjects,
// eaDraws //
// );
// }
//
if (HasDirection(marketStructure.signalKeyBarPatternDir))
{
Print("Detected ...");
}
if (marketStructure.ob.IsValid() && marketStructure.fvg.IsValid())
{
Print("Detected ...");
}
if (marketStructure.support.IsValid() || marketStructure.resistance.IsValid())
{
Print("Detected ...");
}
// //
// if (HasDirection(marketStructure.signalKeyBarPatternDir))
// {
// Print("Detected ...");
// }
// if (marketStructure.ob.IsValid() && marketStructure.fvg.IsValid())
// {
// Print("Detected ...");
// }
// if (marketStructure.support.IsValid() || marketStructure.resistance.IsValid())
// {
// Print("Detected ...");
// }
}
//
@@ -683,6 +680,45 @@ void OnSignalTriggered(XSignal &signal)
eaDraws.Add(iObj);
}
//
// Here We Apply Custom Detecting ...
detectorConfig.OffDetectors();
detectorConfig.detectSupport = true;
detectorConfig.detectResistance= true;
detectorConfig.detectSignalKeyBarPattern = true;
//
// Initial Bar for Analysis ...
// at Signal Time ...
XOHCL signalBar;
bool isInited = signalBar.Init(
signal.symbol,
signal.period,
signal.time //
);
//
// Analyse Market ...
fima1Signaller.poiDetector.AnalyseMarket(
signalBar,
marketStructure,
detectorConfig //
);
CArrayObj *iObjects;
int drawnsCount = fima2Signaller.poiDrawer.DrawMarketStructure(
marketStructure,
marketStructureDrawerConfig,
iObjects //
);
if (IsValidSize(drawnsCount))
{
//
AddObjects(
iObjects,
eaDraws //
);
}
//
// Alert Issued Signal ...
string message = signal.GetMessage();
@@ -351,6 +351,7 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
{
//
// Do Conditions Validating ...
// TODO: Igmore All Validations for Testing Purposes ...
//
// Validate MA Positions ...
@@ -392,26 +393,26 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
// Has Cross ...
isFastCrossedOverSlow
//
&&
//
// Cross Places Based on Fibo ...
MathMax(iFastMa, iSlowMa) < iFiboLower
//
&&
//
(
//
// Checking FVG ...
(hasFVG &&
fvg.IsBullish())
//
||
//
// Checking Crossed Place ...
isCrossedOverHappensOnShadow
//
)
//
// &&
// //
// // Cross Places Based on Fibo ...
// MathMax(iFastMa, iSlowMa) < iFiboLower
// //
// &&
// //
// (
// //
// // Checking FVG ...
// (hasFVG &&
// fvg.IsBullish())
// //
// ||
// //
// // Checking Crossed Place ...
// isCrossedOverHappensOnShadow
// //
// )
// //
;
//
@@ -421,26 +422,26 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
// Has Cross ...
isFastCrossedUnderSlow
//
&&
//
// Cross Places Based on Fibo ...
MathMin(iFastMa, iSlowMa) > iFiboUpper
//
&&
//
(
//
// Checking FVG ...
(hasFVG &&
fvg.IsBearish())
//
||
//
// Checking Crossed Place ...
isCrossedUnderHappensOnShadow
//
)
//
// &&
// //
// // Cross Places Based on Fibo ...
// MathMin(iFastMa, iSlowMa) > iFiboUpper
// //
// &&
// //
// (
// //
// // Checking FVG ...
// (hasFVG &&
// fvg.IsBearish())
// //
// ||
// //
// // Checking Crossed Place ...
// isCrossedUnderHappensOnShadow
// //
// )
// //
;
//