last ...
This commit is contained in:
@@ -666,17 +666,98 @@ bool DetectXCAEAConditions(
|
||||
// Conditions ...
|
||||
|
||||
//
|
||||
// PEAK ...
|
||||
double zPeak = conditions.peakBuffer[zIDX];
|
||||
double cPeak = conditions.peakBuffer[cIDX];
|
||||
double pPeak = conditions.peakBuffer[pIDX];
|
||||
double p2Peak = conditions.peakBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// VALE ...
|
||||
double zVale = conditions.valeBuffer[zIDX];
|
||||
double cVale = conditions.valeBuffer[cIDX];
|
||||
double pVale = conditions.valeBuffer[pIDX];
|
||||
double p2Vale = conditions.valeBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// X3MA ...
|
||||
|
||||
//
|
||||
// FAST ...
|
||||
|
||||
//
|
||||
double z3MAFast = conditions.fastBuffer[zIDX];
|
||||
double c3MAFast = conditions.fastBuffer[cIDX];
|
||||
double p3MAFast = conditions.fastBuffer[pIDX];
|
||||
double p23MAFast = conditions.fastBuffer[p2IDX];
|
||||
|
||||
//
|
||||
double z3MAFastState = conditions.fastStateBuffer[zIDX];
|
||||
double c3MAFastState = conditions.fastStateBuffer[cIDX];
|
||||
double p3MAFastState = conditions.fastStateBuffer[pIDX];
|
||||
double p23MAFastState = conditions.fastStateBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// MEDIUM ...
|
||||
|
||||
//
|
||||
double z3MAMedium = conditions.mediumBuffer[zIDX];
|
||||
double c3MAMedium = conditions.mediumBuffer[cIDX];
|
||||
double p3MAMedium = conditions.mediumBuffer[pIDX];
|
||||
double p23MAMedium = conditions.mediumBuffer[p2IDX];
|
||||
|
||||
//
|
||||
double z3MAMediumState = conditions.mediumStateBuffer[zIDX];
|
||||
double c3MAMediumState = conditions.mediumStateBuffer[cIDX];
|
||||
double p3MAMediumState = conditions.mediumStateBuffer[pIDX];
|
||||
double p23MAMediumState = conditions.mediumStateBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// SLOW ...
|
||||
|
||||
//
|
||||
double z3MASlow = conditions.slowBuffer[zIDX];
|
||||
double c3MASlow = conditions.slowBuffer[cIDX];
|
||||
double p3MASlow = conditions.slowBuffer[pIDX];
|
||||
double p23MASlow = conditions.slowBuffer[p2IDX];
|
||||
|
||||
//
|
||||
double z3MASlowState = conditions.slowStateBuffer[zIDX];
|
||||
double c3MASlowState = conditions.slowStateBuffer[cIDX];
|
||||
double p3MASlowState = conditions.slowStateBuffer[pIDX];
|
||||
double p23MASlowState = conditions.slowStateBuffer[p2IDX];
|
||||
|
||||
//
|
||||
double x3maBullishGapUpper = c3MAMedium;
|
||||
double x3maBullishGapLower = c3MASlow;
|
||||
|
||||
//
|
||||
double x3maBearishGapUpper = c3MASlow;
|
||||
double x3maBearishGapLower = c3MAMedium;
|
||||
|
||||
//
|
||||
// Create Conditions ...
|
||||
|
||||
//
|
||||
bool isX3MABullishState =
|
||||
z3MAFast > c3MAFast &&
|
||||
isCBarValidForBullish &&
|
||||
c3MAFast > c3MAMedium &&
|
||||
isCBarBullishRejected &&
|
||||
c3MAMedium > c3MASlow &&
|
||||
cBar.low < x3maBullishGapLower &&
|
||||
cBar.GetDown() > x3maBullishGapLower;
|
||||
|
||||
//
|
||||
bool isX3MABearishState =
|
||||
z3MAFast < c3MAFast &&
|
||||
isCBarValidForBearish &&
|
||||
c3MAFast < c3MAMedium &&
|
||||
isCBarBearishRejected &&
|
||||
c3MAMedium < c3MASlow &&
|
||||
cBar.high > x3maBearishGapLower &&
|
||||
cBar.GetUp() < x3maBearishGapLower;
|
||||
|
||||
//
|
||||
// Parsing Pivots ...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user