add support for leg management in XFIMA1 Signaller ...
This commit is contained in:
@@ -1672,10 +1672,9 @@ class XCMarketPatternDetector : public XCBase
|
||||
*/
|
||||
bool IsLegPattern(
|
||||
XOHCL &bar,
|
||||
XBoxZone &zone,
|
||||
XLeg &leg,
|
||||
int validationLength = 3,
|
||||
int loopback = 10 //,
|
||||
// Forces ...
|
||||
int loopback = 10 //
|
||||
)
|
||||
{
|
||||
//
|
||||
@@ -1683,7 +1682,7 @@ class XCMarketPatternDetector : public XCBase
|
||||
|
||||
//
|
||||
// Prepare ...
|
||||
zone.Clean();
|
||||
leg.Clean();
|
||||
|
||||
//
|
||||
// Normalize ...
|
||||
@@ -1717,6 +1716,7 @@ class XCMarketPatternDetector : public XCBase
|
||||
XOHCL iBar;
|
||||
XOHCL pBar;
|
||||
XOHCL iZBar;
|
||||
XBoxZone zone;
|
||||
XBoxZone iZone;
|
||||
XBoxZone jZone;
|
||||
bool has = false;
|
||||
@@ -2032,6 +2032,31 @@ class XCMarketPatternDetector : public XCBase
|
||||
result = zone.IsValid();
|
||||
}
|
||||
|
||||
//
|
||||
// Prepare XLeg ...
|
||||
if (result)
|
||||
{
|
||||
//
|
||||
leg.dir = zone.dir;
|
||||
leg.time = zone.from;
|
||||
leg.upper = zone.upper;
|
||||
leg.lower = zone.lower;
|
||||
leg.symbol = zone.symbol;
|
||||
leg.period = zone.period;
|
||||
Copy(patterns, leg.patterns);
|
||||
Copy(supports, leg.supports);
|
||||
Copy(bullishBars, leg.bullishBars);
|
||||
Copy(bearishBars, leg.bearishBars);
|
||||
Copy(resistances, leg.resistances);
|
||||
Copy(bullishFVGs, leg.bullishFVGs);
|
||||
Copy(bearishFVGs, leg.bearishFVGs);
|
||||
leg.sequentialBullishBars = sequentialsBullishBarsCount;
|
||||
leg.sequentialBearishBars = sequentialsBearishBarsCount;
|
||||
|
||||
//
|
||||
result = leg.IsValid();
|
||||
}
|
||||
|
||||
//
|
||||
// Cleanup ...
|
||||
if (!result)
|
||||
@@ -2040,6 +2065,7 @@ class XCMarketPatternDetector : public XCBase
|
||||
}
|
||||
iBar.Clean();
|
||||
pBar.Clean();
|
||||
zone.Clean();
|
||||
iZBar.Clean();
|
||||
iZone.Clean();
|
||||
jZone.Clean();
|
||||
|
||||
@@ -2526,6 +2526,29 @@ class XCPOIDrawer : public XCBase
|
||||
patternPivot.Clean();
|
||||
}
|
||||
|
||||
/**
|
||||
* Draw a Collection of Pattern Analysis ...
|
||||
*
|
||||
* @param analysises: XPatternAnalysis, collection reference to Data Source ...
|
||||
* @param config: XPatternAnalysisDrawConfig, reference to Specified Drawing Config ...
|
||||
*/
|
||||
void DrawPatternAnalysises(
|
||||
XPatternAnalysis &analysises[],
|
||||
XPatternAnalysisDrawConfig &config //
|
||||
) {
|
||||
//
|
||||
bool has = HasChild(analysises);
|
||||
if (!has) {
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
int count = ArraySize(analysises);
|
||||
for (int i = 0; i < count; i++) {
|
||||
DrawPatternAnalysis(analysises[i], config);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Draw Specified Pivots Analysis ...
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user