last ...
This commit is contained in:
@@ -284,19 +284,19 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
{
|
||||
//
|
||||
// Configure ...
|
||||
drawLeg = true;
|
||||
drawZones = true;
|
||||
drawIZones = true;
|
||||
drawTrends = true;
|
||||
drawSCTrend = true;
|
||||
drawMCTrend = true;
|
||||
drawLCTrend = true;
|
||||
drawHCTrend = true;
|
||||
drawSupport = true;
|
||||
drawISupport = true;
|
||||
drawOrderFlow = true;
|
||||
drawResistance = true;
|
||||
drawIResistance = true;
|
||||
drawLeg = false;
|
||||
drawZones = false;
|
||||
drawIZones = false;
|
||||
drawTrends = false;
|
||||
drawSCTrend = false;
|
||||
drawMCTrend = false;
|
||||
drawLCTrend = false;
|
||||
drawHCTrend = false;
|
||||
drawSupport = false;
|
||||
drawISupport = false;
|
||||
drawOrderFlow = false;
|
||||
drawResistance = false;
|
||||
drawIResistance = false;
|
||||
|
||||
//
|
||||
manageLegs = true;
|
||||
@@ -1570,8 +1570,18 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
bool useSignaller4 = false;
|
||||
|
||||
//
|
||||
// Validator Flags ...
|
||||
XBoxZone tmpZone;
|
||||
string provider = NULL;
|
||||
ENUM_X_DIRECTION tmpDir;
|
||||
|
||||
//
|
||||
bool signaller1HasSignal = false;
|
||||
bool signaller2HasSignal = false;
|
||||
bool signaller3HasSignal = false;
|
||||
bool signaller4HasSignal = false;
|
||||
|
||||
//
|
||||
// Validator Flags ...
|
||||
bool validateByOrderFlow = false;
|
||||
|
||||
//
|
||||
@@ -1615,16 +1625,6 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
//
|
||||
// Signal Detection Flags ...
|
||||
|
||||
//
|
||||
XBoxZone tmpZone;
|
||||
ENUM_X_DIRECTION tmpDir;
|
||||
|
||||
//
|
||||
bool signaller1HasSignal = false;
|
||||
bool signaller2HasSignal = false;
|
||||
bool signaller3HasSignal = false;
|
||||
bool signaller4HasSignal = false;
|
||||
|
||||
//
|
||||
// Signaller 1 ...
|
||||
if (useSignaller1)
|
||||
@@ -2048,16 +2048,20 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
|
||||
//
|
||||
XOHCL pBar;
|
||||
XOHCL p2Bar;
|
||||
bool isBullish = false;
|
||||
bool isBearish = false;
|
||||
|
||||
//
|
||||
// Read PBar ...
|
||||
result = bar.GetPreviousBar(pBar);
|
||||
result = result &&
|
||||
pBar.GetPreviousBar(p2Bar);
|
||||
if (!result)
|
||||
{
|
||||
//
|
||||
pBar.Clean();
|
||||
p2Bar.Clean();
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -2105,10 +2109,10 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
|
||||
//
|
||||
// Reading pBar Patterns ...
|
||||
XPatternAnalysis pBarAnalysis;
|
||||
XPatternAnalysis pBarPatterns;
|
||||
poiDetector.AnalyseBarPatterns(
|
||||
pBar,
|
||||
pBarAnalysis,
|
||||
pBarPatterns,
|
||||
structureConfig.barsAnalysisConfig //
|
||||
);
|
||||
|
||||
@@ -2119,11 +2123,11 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
bar.open > pBar.low) &&
|
||||
(
|
||||
//
|
||||
pBarAnalysis.IsPinned(X_DIRECTION_BULLISH) ||
|
||||
pBarAnalysis.IsEngulfed(X_DIRECTION_BULLISH) ||
|
||||
pBarAnalysis.IsMomentum(X_DIRECTION_BULLISH) ||
|
||||
pBarAnalysis.IsPiercing(X_DIRECTION_BULLISH) ||
|
||||
pBarAnalysis.IsSignalKey(X_DIRECTION_BULLISH)
|
||||
pBarPatterns.IsPinned(X_DIRECTION_BULLISH) ||
|
||||
pBarPatterns.IsEngulfed(X_DIRECTION_BULLISH) ||
|
||||
pBarPatterns.IsMomentum(X_DIRECTION_BULLISH) ||
|
||||
pBarPatterns.IsPiercing(X_DIRECTION_BULLISH) ||
|
||||
pBarPatterns.IsSignalKey(X_DIRECTION_BULLISH)
|
||||
//
|
||||
);
|
||||
bool isPBarHasBearishPatterns =
|
||||
@@ -2131,11 +2135,11 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
bar.open < pBar.high) &&
|
||||
(
|
||||
//
|
||||
pBarAnalysis.IsPinned(X_DIRECTION_BEARISH) ||
|
||||
pBarAnalysis.IsEngulfed(X_DIRECTION_BEARISH) ||
|
||||
pBarAnalysis.IsMomentum(X_DIRECTION_BEARISH) ||
|
||||
pBarAnalysis.IsPiercing(X_DIRECTION_BEARISH) ||
|
||||
pBarAnalysis.IsSignalKey(X_DIRECTION_BEARISH)
|
||||
pBarPatterns.IsPinned(X_DIRECTION_BEARISH) ||
|
||||
pBarPatterns.IsEngulfed(X_DIRECTION_BEARISH) ||
|
||||
pBarPatterns.IsMomentum(X_DIRECTION_BEARISH) ||
|
||||
pBarPatterns.IsPiercing(X_DIRECTION_BEARISH) ||
|
||||
pBarPatterns.IsSignalKey(X_DIRECTION_BEARISH)
|
||||
//
|
||||
);
|
||||
|
||||
@@ -2195,6 +2199,13 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
affectedZonesBearish //
|
||||
);
|
||||
|
||||
//
|
||||
// Detecting Boundary Trend ...
|
||||
XTrend boundaryTrend;
|
||||
bool hasBoundaryTrend = fimaParser.HasBoundaryTrend(boundaryTrend, pBar.Index());
|
||||
bool hasBoundaryBullishTrend = hasBoundaryTrend && boundaryTrend.IsBullish();
|
||||
bool hasBoundaryBearishTrend = hasBoundaryTrend && boundaryTrend.IsBearish();
|
||||
|
||||
//
|
||||
// Do ...
|
||||
|
||||
@@ -2255,6 +2266,37 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
|
||||
//
|
||||
result = zone.IsValid();
|
||||
|
||||
//
|
||||
// Zone Validations ...
|
||||
if (result)
|
||||
{
|
||||
//
|
||||
if (boundaryTrend.IsValid())
|
||||
{
|
||||
poiDrawer.DrawTrendLine(boundaryTrend, structureDrawConfig.drawConfig);
|
||||
}
|
||||
|
||||
//
|
||||
poiDrawer.DrawZone(zone, structureDrawConfig.drawConfig);
|
||||
poiDrawer.DrawPatternAnalysis(pBarPatterns, structureDrawConfig.barAnalysisDrawConfig);
|
||||
|
||||
//
|
||||
DebugBreak();
|
||||
}
|
||||
|
||||
//
|
||||
result = zone.IsValid();
|
||||
|
||||
//
|
||||
// Reset Flags ...
|
||||
if (!result)
|
||||
{
|
||||
//
|
||||
zone.Clean();
|
||||
isBullish = false;
|
||||
isBearish = false;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2273,8 +2315,10 @@ class XCXFIMAStrategy1Signaller : public XCXFIMABaseSignaller
|
||||
dir = X_DIRECTION_NONE;
|
||||
}
|
||||
pBar.Clean();
|
||||
p2Bar.Clean();
|
||||
XClean(zones);
|
||||
pBarAnalysis.Clean();
|
||||
pBarPatterns.Clean();
|
||||
boundaryTrend.Clean();
|
||||
XClean(affectedZones);
|
||||
XClean(affectedZonesBullish);
|
||||
XClean(affectedZonesBearish);
|
||||
|
||||
Reference in New Issue
Block a user