last ...
This commit is contained in:
@@ -408,7 +408,7 @@ bool HasXPVConditions(
|
||||
//
|
||||
|
||||
//
|
||||
bool isSwingLow =
|
||||
bool isPSwingLow =
|
||||
//
|
||||
(pBar.low < pPBar.low &&
|
||||
pBar.low < cBar.low &&
|
||||
@@ -417,14 +417,48 @@ bool HasXPVConditions(
|
||||
;
|
||||
|
||||
//
|
||||
bool isSwingHigh =
|
||||
bool isCSwingLow =
|
||||
//
|
||||
pBar.high > pPBar.high &&
|
||||
(pBar.low < pPBar.low &&
|
||||
cBar.low < pBar.low &&
|
||||
zBar.close > cBar.low)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isSwingLow =
|
||||
//
|
||||
isPSwingLow ||
|
||||
isCSwingLow
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isPSwingHigh =
|
||||
//
|
||||
pBar.high >= pPBar.high &&
|
||||
pBar.high > cBar.high &&
|
||||
zBar.open < cBar.high
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isCSwingHigh =
|
||||
//
|
||||
(pBar.high >= pPBar.high &&
|
||||
cBar.high > pBar.high &&
|
||||
zBar.close < cBar.high)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isSwingHigh =
|
||||
//
|
||||
isPSwingHigh &&
|
||||
isCSwingHigh
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isBarsOverPeaksGoldenZone =
|
||||
//
|
||||
@@ -465,6 +499,14 @@ bool HasXPVConditions(
|
||||
bool isRsiChangeUnderAtrLower =
|
||||
rsiChangeP < atrLowerSMP;
|
||||
|
||||
//
|
||||
bool isRsiChangeOverPeaksGoldenZone =
|
||||
rsiChangeP > peaksGoldenP;
|
||||
|
||||
//
|
||||
bool isRsiChangeUnderValesGoldenZone =
|
||||
rsiChangeP < valesGoldenP;
|
||||
|
||||
//
|
||||
bool isPriceChangeOverAtrUpper =
|
||||
priceChangeP > atrUpperSMP;
|
||||
@@ -473,6 +515,14 @@ bool HasXPVConditions(
|
||||
bool isPriceChangeUnderAtrLower =
|
||||
priceChangeP < atrLowerSMP;
|
||||
|
||||
//
|
||||
bool isPriceChangeOverPeaksGoldenZone =
|
||||
priceChangeP > peaksGoldenP;
|
||||
|
||||
//
|
||||
bool isPriceChangeUnderValesGoldenZone =
|
||||
priceChangeP < valesGoldenP;
|
||||
|
||||
//
|
||||
// XPV Peaks or Vales ...
|
||||
|
||||
@@ -484,6 +534,18 @@ bool HasXPVConditions(
|
||||
bool isPBarEqualsToPeak = pBar.high == peakP;
|
||||
bool isPBarEqualsToVale = pBar.low == valeP;
|
||||
|
||||
//
|
||||
bool isPPBarEqualsToPeak = pPBar.high == peakPP;
|
||||
bool isPPBarEqualsToVale = pPBar.low == valePP;
|
||||
|
||||
//
|
||||
bool isBarsEqualsToPeak = isCBarEqualsToPeak ||
|
||||
isPBarEqualsToPeak ||
|
||||
isPPBarEqualsToPeak;
|
||||
bool isBarsEqualsToVale = isCBarEqualsToVale ||
|
||||
isPBarEqualsToVale ||
|
||||
isPPBarEqualsToVale;
|
||||
|
||||
//
|
||||
// Detect VPatterns ...
|
||||
|
||||
@@ -505,6 +567,23 @@ bool HasXPVConditions(
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isRsiChangeBullish =
|
||||
//
|
||||
(isRsiChangeUnderAtrLower &&
|
||||
isRsiChangeBullishVPattern &&
|
||||
isRsiChangeUnderValesGoldenZone)
|
||||
//
|
||||
;
|
||||
|
||||
bool isRsiChangeBearish =
|
||||
//
|
||||
(isRsiChangeOverAtrUpper &&
|
||||
isRsiChangeBearishVPattern &&
|
||||
isRsiChangeOverPeaksGoldenZone)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isPriceChangeBullishVPattern =
|
||||
//
|
||||
@@ -523,60 +602,99 @@ bool HasXPVConditions(
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isPriceChangeBullish =
|
||||
//
|
||||
(isPriceChangeUnderAtrLower &&
|
||||
isPriceChangeBullishVPattern &&
|
||||
isPriceChangeUnderValesGoldenZone)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isPriceChangeBearish =
|
||||
//
|
||||
(isPriceChangeOverAtrUpper &&
|
||||
isPriceChangeBearishVPattern &&
|
||||
isPriceChangeOverPeaksGoldenZone)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
// XVWAP ...
|
||||
|
||||
//
|
||||
bool isVWapIsBullish =
|
||||
//
|
||||
(cXConditions.isVWapBullishOrdered &&
|
||||
cXConditions.isVWapSwitchedToBullishState)
|
||||
//
|
||||
||
|
||||
//
|
||||
(cXConditions.isVWapBullishState &&
|
||||
cXConditions.isVWapSwitchedToBullishOrdered)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isVWapIsBearish =
|
||||
//
|
||||
(cXConditions.isVWapBearishOrdered &&
|
||||
cXConditions.isVWapSwitchedToBearishState)
|
||||
//
|
||||
||
|
||||
//
|
||||
(cXConditions.isVWapBearishState &&
|
||||
cXConditions.isVWapSwitchedToBearishOrdered)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
// Checking Bar States ...
|
||||
|
||||
//
|
||||
bool isCBarHasBullishFibPressure =
|
||||
//
|
||||
cBar.HasFiboPressure(
|
||||
X_DIRECTION_BULLISH,
|
||||
X_FIBO_LEVEL_382 //
|
||||
)
|
||||
//
|
||||
;
|
||||
ENUM_X_DIRECTION cBarPosDir;
|
||||
bool isCBarValidForPosition =
|
||||
cHelper
|
||||
.mBarAnalyser
|
||||
.IsValidForPosition(
|
||||
cBar,
|
||||
cBarPosDir //
|
||||
);
|
||||
|
||||
//
|
||||
bool isPBarHasBullishFibPressure =
|
||||
//
|
||||
pBar.HasFiboPressure(
|
||||
X_DIRECTION_BULLISH,
|
||||
X_FIBO_LEVEL_382 //
|
||||
)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isCBarHasBearishFibPressure =
|
||||
//
|
||||
cBar.HasFiboPressure(
|
||||
X_DIRECTION_BEARISH,
|
||||
X_FIBO_LEVEL_382 //
|
||||
)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isPBarHasBearishFibPressure =
|
||||
//
|
||||
pBar.HasFiboPressure(
|
||||
X_DIRECTION_BEARISH,
|
||||
X_FIBO_LEVEL_382 //
|
||||
)
|
||||
//
|
||||
;
|
||||
ENUM_X_DIRECTION pBarPosDir;
|
||||
bool isPBarValidForPosition =
|
||||
cHelper
|
||||
.mBarAnalyser
|
||||
.IsValidForPosition(
|
||||
pBar,
|
||||
pBarPosDir //
|
||||
);
|
||||
|
||||
//
|
||||
bool isBarValidForBullish =
|
||||
//
|
||||
isCBarHasBullishFibPressure
|
||||
(isCBarValidForPosition &&
|
||||
IsBullish(cBarPosDir))
|
||||
//
|
||||
&&
|
||||
//
|
||||
(isPBarValidForPosition &&
|
||||
IsBullish(pBarPosDir))
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isBarValidForBearish =
|
||||
//
|
||||
isCBarHasBearishFibPressure
|
||||
(isCBarValidForPosition &&
|
||||
IsBearish(cBarPosDir))
|
||||
//
|
||||
&&
|
||||
//
|
||||
(isPBarValidForPosition &&
|
||||
IsBearish(pBarPosDir))
|
||||
//
|
||||
;
|
||||
|
||||
@@ -587,32 +705,28 @@ bool HasXPVConditions(
|
||||
isBullish =
|
||||
//
|
||||
// isSwingLow &&
|
||||
isVWapIsBullish // &&
|
||||
// isBarsEqualsToVale &&
|
||||
// isRsiChangeBullish &&
|
||||
// isBarsUnderAtrLower &&
|
||||
// isBarValidForBullish &&
|
||||
// isPriceChangeBullish &&
|
||||
// isBarsUnderValesGoldenZone
|
||||
//
|
||||
// isCBarEqualsToVale &&
|
||||
(isRsiChangeUnderAtrLower &&
|
||||
isRsiChangeBullishVPattern) &&
|
||||
(isPriceChangeUnderAtrLower &&
|
||||
isPriceChangeBullishVPattern)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
isBearish =
|
||||
//
|
||||
// isSwingHigh &&
|
||||
//isSwingHigh &&
|
||||
isVWapIsBearish // &&
|
||||
//isBarsEqualsToPeak &&
|
||||
// isBarsOverAtrUpper &&
|
||||
// isRsiChangeBearish &&
|
||||
// isBarValidForBearish &&
|
||||
// isPriceChangeBearish &&
|
||||
// isBarsOverPeaksGoldenZone
|
||||
//
|
||||
// isCBarEqualsToPeak &&
|
||||
(isRsiChangeOverAtrUpper &&
|
||||
isRsiChangeBearishVPattern) &&
|
||||
(isPriceChangeOverAtrUpper &&
|
||||
isPriceChangeBearishVPattern)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user