last ...
This commit is contained in:
@@ -714,6 +714,20 @@ bool DetectXCAEAConditions(
|
||||
double pVale = conditions.valeBuffer[pIDX];
|
||||
double p2Vale = conditions.valeBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// PEAKGOLDEN ...
|
||||
double zPeakGolden = conditions.peakGoldenBuffer[zIDX];
|
||||
double cPeakGolden = conditions.peakGoldenBuffer[cIDX];
|
||||
double pPeakGolden = conditions.peakGoldenBuffer[pIDX];
|
||||
double p2PeakGolden = conditions.peakGoldenBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// VALEGOLDEN ...
|
||||
double zValeGolden = conditions.valeGoldenBuffer[zIDX];
|
||||
double cValeGolden = conditions.valeGoldenBuffer[cIDX];
|
||||
double pValeGolden = conditions.valeGoldenBuffer[pIDX];
|
||||
double p2ValeGolden = conditions.valeGoldenBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// SUPPORT ...
|
||||
double zSupport = conditions.supportBuffer[zIDX];
|
||||
@@ -784,6 +798,13 @@ bool DetectXCAEAConditions(
|
||||
double pCCI = conditions.cciBuffer[pIDX];
|
||||
double p2CCI = conditions.cciBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// ATR ...
|
||||
double zATR = conditions.atrBuffer[zIDX];
|
||||
double cATR = conditions.atrBuffer[cIDX];
|
||||
double pATR = conditions.atrBuffer[pIDX];
|
||||
double p2ATR = conditions.atrBuffer[p2IDX];
|
||||
|
||||
//
|
||||
// ADX ...
|
||||
double zADX = conditions.adxBuffer[zIDX];
|
||||
@@ -956,6 +977,38 @@ bool DetectXCAEAConditions(
|
||||
bool isADXSwitchedToBearish = isADXBearish &&
|
||||
!isADXBearishPrev;
|
||||
|
||||
//
|
||||
double barStrongAtrMult = 1.5;
|
||||
|
||||
//
|
||||
bool isCBarRangeHasStrongATR =
|
||||
cBar.GetRange() > cATR * barStrongAtrMult;
|
||||
|
||||
//
|
||||
bool isCBarBodyHasStrongATR =
|
||||
cBar.GetBody() > cATR * barStrongAtrMult;
|
||||
|
||||
//
|
||||
bool isCBarHasStrongATR = isCBarRangeHasStrongATR &&
|
||||
isCBarBodyHasStrongATR;
|
||||
|
||||
//
|
||||
bool isCBarIsStrongBullish =
|
||||
isCBarHasStrongATR &&
|
||||
cBar.IsBullish();
|
||||
|
||||
//
|
||||
bool isCBarIsStrongBearish =
|
||||
isCBarHasStrongATR &&
|
||||
cBar.IsBearish();
|
||||
|
||||
//
|
||||
if (isCBarHasStrongATR)
|
||||
{
|
||||
//
|
||||
Print(ToString(cBar.GetDirection()), " ATR Growing ...");
|
||||
}
|
||||
|
||||
//
|
||||
bool isLowOverMax = cBar.low > maxCTrendValue;
|
||||
bool isHighUnderMin = cBar.high < minCTrendValue;
|
||||
@@ -972,6 +1025,16 @@ bool DetectXCAEAConditions(
|
||||
bool isTrendRangeFinishedFromValid = !isCTrendRangeValid &&
|
||||
isPTrendRangeValid;
|
||||
|
||||
//
|
||||
bool isPeakGoldenRejected =
|
||||
cBar.high > cPeakGolden &&
|
||||
cBar.GetUp() <= cPeakGolden;
|
||||
|
||||
//
|
||||
bool isValeGoldenRejected =
|
||||
cBar.low < cValeGolden &&
|
||||
cBar.GetDown() >= cValeGolden;
|
||||
|
||||
//
|
||||
bool isX3MaBullishState =
|
||||
//
|
||||
@@ -1271,20 +1334,25 @@ bool DetectXCAEAConditions(
|
||||
//
|
||||
// false &&
|
||||
//
|
||||
isPRSIOS &&
|
||||
isPCCIOS &&
|
||||
isRSIBullish &&
|
||||
isCCIBullish &&
|
||||
z3MAFastState > 0 &&
|
||||
isValeGoldenRejected &&
|
||||
isCBarBullishRejected &&
|
||||
conditions.isValeIsPivot
|
||||
//
|
||||
// isPCCIOS &&
|
||||
// isRSIBullish &&
|
||||
// conditions.isCloseUnderMal
|
||||
// rciPivot.IsValid() &&
|
||||
// rciPivot.IsBullish() &&
|
||||
// isCCIBullish &&
|
||||
// cBar.close > c3MAFast
|
||||
// isADXBullish &&
|
||||
// hasRCIContainers &&
|
||||
rciPivot.IsValid() &&
|
||||
rciPivot.IsBullish() &&
|
||||
// conditions.isUnderMal &&
|
||||
// conditions.isValeIsPivot &&
|
||||
(conditions.isRSICrossedOverOS ||
|
||||
conditions.isCCICrossedOverOS) // &&
|
||||
// (conditions.isRSICrossedOverOS ||
|
||||
// conditions.isCCICrossedOverOS) // &&
|
||||
// conditions.swingLowBuffer[cIDX] < conditions.fiboLevel3Buffer[cIDX]
|
||||
//
|
||||
// //
|
||||
;
|
||||
|
||||
//
|
||||
@@ -1292,20 +1360,27 @@ bool DetectXCAEAConditions(
|
||||
//
|
||||
// false &&
|
||||
//
|
||||
isPRSIOB &&
|
||||
isPCCIOB &&
|
||||
isRSIBearish &&
|
||||
isCCIBearish &&
|
||||
z3MAFastState < 0 &&
|
||||
isPeakGoldenRejected &&
|
||||
isCBarBullishRejected &&
|
||||
conditions.isPeakIsPivot
|
||||
//
|
||||
// isPCCIOB &&
|
||||
// isRSIBearish &&
|
||||
// c3MAFastState < 0 &&
|
||||
// conditions.isCloseOverMah
|
||||
// rciPivot.IsValid() &&
|
||||
// rciPivot.IsBearish() &&
|
||||
// conditions.isRSIOB &&
|
||||
// isCCIBearish &&
|
||||
// cBar.close < c3MAFast
|
||||
// isADXBearish &&
|
||||
// hasRCIContainers &&
|
||||
rciPivot.IsValid() &&
|
||||
rciPivot.IsBearish() &&
|
||||
// conditions.isOverMal &&
|
||||
// conditions.isPeakIsPivot &&
|
||||
(conditions.isRSICrossedUnderOB ||
|
||||
conditions.isCCICrossedUnderOB) // &&
|
||||
// (conditions.isRSICrossedUnderOB ||
|
||||
// conditions.isCCICrossedUnderOB) // &&
|
||||
// conditions.swingHighBuffer[cIDX] > conditions.fiboLevel1Buffer[cIDX]
|
||||
//
|
||||
// //
|
||||
;
|
||||
|
||||
//
|
||||
@@ -1313,7 +1388,12 @@ bool DetectXCAEAConditions(
|
||||
isCond2Bearish;
|
||||
if (isCond2)
|
||||
{
|
||||
//
|
||||
pivotBox = rciPivot;
|
||||
|
||||
//
|
||||
isCond2Bullish = false;
|
||||
isCond2Bearish = false;
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user