last ...
This commit is contained in:
@@ -0,0 +1,214 @@
|
||||
|
||||
//
|
||||
// Checking Bar Based on Positions State ...
|
||||
ENUM_X_DIRECTION iBarPosDir;
|
||||
bool isBarValidForDir = cHelper
|
||||
.mBarAnalyser
|
||||
.IsValidForPosition(
|
||||
cBar,
|
||||
iBarPosDir //
|
||||
);
|
||||
bool isBarValidForBullish =
|
||||
isBarValidForDir &&
|
||||
IsBullish(iBarPosDir);
|
||||
bool isBarValidForBearish =
|
||||
isBarValidForDir &&
|
||||
IsBearish(iBarPosDir);
|
||||
|
||||
//
|
||||
// Check Bar Place Based on Golden Zones ...
|
||||
|
||||
//
|
||||
bool isBarInPeaksGoldenZone =
|
||||
cBar.high <= cXConditions.peaksBuffer[cIDX] &&
|
||||
cBar.low >= cXConditions.peaksGoldenBuffer[cIDX];
|
||||
|
||||
//
|
||||
bool isBarInValesGoldenZone =
|
||||
cBar.high >= cXConditions.valesBuffer[cIDX] &&
|
||||
cBar.low <= cXConditions.valesGoldenBuffer[cIDX];
|
||||
|
||||
//
|
||||
XCPOIDrawer *drawer = provider.visionCycleHelper.mPOIDrawer;
|
||||
|
||||
//
|
||||
// X3MA ...
|
||||
|
||||
//
|
||||
bool isX3MaFastMidOverPeaksGoldeZone =
|
||||
isX3MaFastOverPeaksGoldenZone &&
|
||||
isX3MaMidOverPeaksGoldenZone;
|
||||
|
||||
//
|
||||
bool isX3MaFastMidUnderValesGoldeZone =
|
||||
isX3MaFastUnderValesGoldenZone &&
|
||||
isX3MaMidUnderValesGoldenZone;
|
||||
|
||||
//
|
||||
// XVWAP ...
|
||||
|
||||
//
|
||||
bool isVWapFastMidOverPeaksGoldeZone =
|
||||
isVWapFastOverPeaksGoldenZone &&
|
||||
isVWapMidOverPeaksGoldenZone;
|
||||
|
||||
//
|
||||
bool isVWapFastMidUnderValesGoldeZone =
|
||||
isVWapFastUnderValesGoldenZone &&
|
||||
isVWapMidUnderValesGoldenZone;
|
||||
|
||||
//
|
||||
//
|
||||
|
||||
//
|
||||
bool isX3MaVWapFastUnderValuesGoldenZone =
|
||||
isX3MaFastUnderValesGoldenZone &&
|
||||
isVWapFastUnderValesGoldenZone;
|
||||
|
||||
//
|
||||
bool isX3MaVWapFastOverPeaksGoldenZone =
|
||||
isX3MaFastOverPeaksGoldenZone &&
|
||||
isVWapFastOverPeaksGoldenZone;
|
||||
|
||||
//
|
||||
//
|
||||
|
||||
//
|
||||
double x3MaFastMidMax = MathMax(
|
||||
cXConditions.x3maFastBuffer[cIDX],
|
||||
cXConditions.x3maMidBuffer[cIDX] //
|
||||
);
|
||||
|
||||
//
|
||||
double x3MaFastMidMin = MathMin(
|
||||
cXConditions.x3maFastBuffer[cIDX],
|
||||
cXConditions.x3maMidBuffer[cIDX] //
|
||||
);
|
||||
|
||||
//
|
||||
double vwapFastMidMax = MathMax(
|
||||
cXConditions.vwapFastBuffer[cIDX],
|
||||
cXConditions.vwapMidBuffer[cIDX] //
|
||||
);
|
||||
|
||||
//
|
||||
double vwapFastMidMin = MathMin(
|
||||
cXConditions.vwapFastBuffer[cIDX],
|
||||
cXConditions.vwapMidBuffer[cIDX] //
|
||||
);
|
||||
|
||||
//
|
||||
//
|
||||
|
||||
//
|
||||
double x3maVWapFastMidMax = MathMax(x3MaFastMidMax, vwapFastMidMax);
|
||||
double x3maVWapFastMidMin = MathMin(x3MaFastMidMin, vwapFastMidMin);
|
||||
|
||||
//
|
||||
double x3maVWapMax = MathMax(cXConditions.x3maMax, cXConditions.vwapMax);
|
||||
double x3maVWapMin = MathMin(cXConditions.x3maMin, cXConditions.vwapMin);
|
||||
|
||||
//
|
||||
double x3maVWapDiff = x3maVWapMax - x3maVWapMin;
|
||||
|
||||
//
|
||||
double atr = cXConditions.atrBuffer[cIDX];
|
||||
|
||||
//
|
||||
bool isConsolidate = x3maVWapDiff <= (3 * atr);
|
||||
|
||||
//
|
||||
bool isX3MaVWapSwitchedToBullish =
|
||||
//
|
||||
// VWap ...
|
||||
(
|
||||
//
|
||||
(cXConditions.isVWapBullishOrdered &&
|
||||
cXConditions.isVWapSwitchedToBullishState) ||
|
||||
(cXConditions.isVWapBullishState &&
|
||||
cXConditions.isVWapSwitchedToBullishOrdered)
|
||||
//
|
||||
)
|
||||
//
|
||||
||
|
||||
//
|
||||
// X3Ma ...
|
||||
(
|
||||
//
|
||||
(cXConditions.isX3MaBullishOrdered &&
|
||||
cXConditions.isX3MaSwitchedToBullishState) ||
|
||||
(cXConditions.isX3MaBullishState &&
|
||||
cXConditions.isX3MaSwitchedToBullishOrdered)
|
||||
//
|
||||
)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isX3MaVWapSwitchedToBearish =
|
||||
//
|
||||
// VWap ...
|
||||
(
|
||||
//
|
||||
(cXConditions.isVWapBearishOrdered &&
|
||||
cXConditions.isVWapSwitchedToBearishState) ||
|
||||
(cXConditions.isVWapBearishState &&
|
||||
cXConditions.isVWapSwitchedToBearishOrdered)
|
||||
//
|
||||
)
|
||||
//
|
||||
||
|
||||
//
|
||||
// X3Ma ...
|
||||
(
|
||||
//
|
||||
(cXConditions.isX3MaBearishOrdered &&
|
||||
cXConditions.isX3MaSwitchedToBearishState) ||
|
||||
(cXConditions.isX3MaBearishState &&
|
||||
cXConditions.isX3MaSwitchedToBearishOrdered)
|
||||
//
|
||||
)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
// Bullish Conditions ...
|
||||
isBullish =
|
||||
//
|
||||
// Base Condition ...
|
||||
(
|
||||
//
|
||||
false
|
||||
//
|
||||
// isConsolidate &&
|
||||
// isBarValidForBullish &&
|
||||
// cXConditions.isSarBullish &&
|
||||
// isX3MaVWapSwitchedToBullish &&
|
||||
// cXConditions.isNewPeakOverLast // &&
|
||||
// isVWapFastMidUnderValesGoldeZone // &&
|
||||
// cXConditions.isAtrLowerSlopeBullish
|
||||
//
|
||||
)
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
// Bearish Conditions ...
|
||||
isBearish =
|
||||
//
|
||||
// Base Condition ...
|
||||
(
|
||||
//
|
||||
false
|
||||
//
|
||||
// isConsolidate &&
|
||||
// isBarValidForBearish &&
|
||||
// cXConditions.isSarBearish &&
|
||||
// isX3MaVWapSwitchedToBearish &&
|
||||
// cXConditions.isNewValeUnderLast // &&
|
||||
// isVWapFastMidOverPeaksGoldeZone // &&
|
||||
// cXConditions.isAtrUpperSlopeBearish
|
||||
//
|
||||
)
|
||||
//
|
||||
;
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user