last backup XCAEA
This commit is contained in:
@@ -0,0 +1,124 @@
|
||||
//
|
||||
// Parsing Pivots ...
|
||||
|
||||
//
|
||||
// Detect Selected Pivot ...
|
||||
XBoxZone lastOSCPivot;
|
||||
double providedSL = 0;
|
||||
bool hasNewOSC = false;
|
||||
bool hasPivots = HasChild(pivots);
|
||||
if (hasPivots)
|
||||
{
|
||||
//
|
||||
// Detect Selected Pivots ...
|
||||
count = ArraySize(pivots);
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
//
|
||||
XBoxZone iPivot = pivots[i];
|
||||
|
||||
//
|
||||
// Detect Selected Last OSC Pivots ...
|
||||
bool isOSC =
|
||||
Contains(
|
||||
"XCA_RSI",
|
||||
iPivot.type //
|
||||
) ||
|
||||
Contains(
|
||||
"XCA_CCI",
|
||||
iPivot.type //
|
||||
);
|
||||
bool canSetOSC =
|
||||
!isOSC
|
||||
? false
|
||||
: !lastOSCPivot.IsValid()
|
||||
? true
|
||||
: lastOSCPivot.from < iPivot.from;
|
||||
if (canSetOSC)
|
||||
{
|
||||
//
|
||||
lastOSCPivot = iPivot;
|
||||
|
||||
//
|
||||
// Detect New OSC Pivot Happens ...
|
||||
hasNewOSC = lastOSCPivot.IsValid() &&
|
||||
cBar.time == lastOSCPivot.to;
|
||||
}
|
||||
|
||||
//
|
||||
// Check Pivot Box Type ...
|
||||
bool isPVPivot =
|
||||
Contains(
|
||||
"XCA_PEAKSWHRES",
|
||||
iPivot.type //
|
||||
) ||
|
||||
Contains(
|
||||
"XCA_VALESWLSUP",
|
||||
iPivot.type //
|
||||
);
|
||||
if (isPVPivot)
|
||||
{
|
||||
//
|
||||
// Select Box for OSC ...
|
||||
if (hasNewOSC)
|
||||
{
|
||||
//
|
||||
bool canSelectBox =
|
||||
pivotBox.IsValid()
|
||||
? false
|
||||
: lastOSCPivot.dir == iPivot.dir &&
|
||||
(IsBullish(iPivot.dir)
|
||||
? lastOSCPivot.upper > iPivot.upper &&
|
||||
lastOSCPivot.lower < iPivot.upper &&
|
||||
lastOSCPivot.lower <= iPivot.lower
|
||||
: lastOSCPivot.lower < iPivot.lower &&
|
||||
lastOSCPivot.upper > iPivot.lower &&
|
||||
lastOSCPivot.upper >= iPivot.upper);
|
||||
if (canSelectBox)
|
||||
{
|
||||
pivotBox = iPivot;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
iPivot.Clean();
|
||||
|
||||
//
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Signaller Summarization ...
|
||||
|
||||
//
|
||||
// Cond1 Act Using PEAK VALE Box Activation or Rejection ...
|
||||
|
||||
//
|
||||
bool isCond1Bullish =
|
||||
//
|
||||
hasNewOSC &&
|
||||
(cVale < pVale ||
|
||||
pVale < p2Vale) &&
|
||||
pivotBox.IsValid() &&
|
||||
pivotBox.IsBullish() &&
|
||||
lastOSCPivot.IsBullish() &&
|
||||
conditions.isValeIsPivot
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
bool isCond1Bearish =
|
||||
//
|
||||
hasNewOSC &&
|
||||
(cPeak > pPeak ||
|
||||
pPeak > p2Peak) &&
|
||||
pivotBox.IsValid() &&
|
||||
pivotBox.IsBearish() &&
|
||||
lastOSCPivot.IsBearish() &&
|
||||
conditions.isPeakIsPivot
|
||||
//
|
||||
;
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
Reference in New Issue
Block a user