last ...
This commit is contained in:
@@ -1070,20 +1070,13 @@ struct XOHCL
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Prev Bar Must be Bearish ...
|
result =
|
||||||
result = pBar.IsBearish();
|
//
|
||||||
if (!result)
|
pBar.IsBearish() &&
|
||||||
{
|
open < pBar.close && close > pBar.open &&
|
||||||
return result;
|
high >= pBar.high && low <= pBar.low
|
||||||
}
|
//
|
||||||
|
;
|
||||||
//
|
|
||||||
// Close of Current Bar must be Higher than High of Prev Bar ...
|
|
||||||
result = close > pBar.high;
|
|
||||||
if (!result)
|
|
||||||
{
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
//
|
||||||
return result;
|
return result;
|
||||||
@@ -1114,20 +1107,13 @@ struct XOHCL
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Prev Bar Must be Bullish ...
|
result =
|
||||||
result = pBar.IsBullish();
|
//
|
||||||
if (!result)
|
pBar.IsBullidh() &&
|
||||||
{
|
open > pBar.close && close < pBar.open &&
|
||||||
return result;
|
high >= pBar.high && low <= pBar.low
|
||||||
}
|
//
|
||||||
|
;
|
||||||
//
|
|
||||||
// Close of Current Bar must be Lower than Low of Prev Bar ...
|
|
||||||
result = close < pBar.low;
|
|
||||||
if (!result)
|
|
||||||
{
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
//
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -1125,6 +1125,8 @@ enum ENUM_XZONE_STATE
|
|||||||
};
|
};
|
||||||
|
|
||||||
//
|
//
|
||||||
|
// a Zone Consists an Area of
|
||||||
|
// an Upper Pivot and a Lower Pivot ...
|
||||||
struct XZone
|
struct XZone
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
@@ -1395,8 +1397,54 @@ struct XZone
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Zone Tools ...
|
||||||
|
double _threshold;
|
||||||
|
double GetThresholdPoints()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
double result = 0;
|
||||||
|
|
||||||
|
//
|
||||||
|
if (!IsValid())
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
double _points = GetPoints(symbol);
|
||||||
|
result =
|
||||||
|
//
|
||||||
|
_points &&
|
||||||
|
_threshold
|
||||||
|
//
|
||||||
|
;
|
||||||
|
|
||||||
|
//
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Check Zone Rejected ...
|
// Check Zone Rejected ...
|
||||||
|
bool IsSupportRejected() {
|
||||||
|
//
|
||||||
|
bool result = false;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Check is Full Support or Not ...
|
||||||
|
ENUM_XZONE_STATE state = GetState();
|
||||||
|
result = state == XZONE_STATE_FULL_SUPPORT;
|
||||||
|
if (!result) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// First Check Price Rejection Above Upper Line ...
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Check Zone Breaked ...
|
// Check Zone Breaked ...
|
||||||
@@ -1414,6 +1462,9 @@ struct XZone
|
|||||||
up.Clean();
|
up.Clean();
|
||||||
down.Clean();
|
down.Clean();
|
||||||
|
|
||||||
|
//
|
||||||
|
_threshold = 15;
|
||||||
|
|
||||||
//
|
//
|
||||||
_objName = NULL;
|
_objName = NULL;
|
||||||
}
|
}
|
||||||
@@ -1431,7 +1482,8 @@ struct XZone
|
|||||||
IsValid(symbol) &&
|
IsValid(symbol) &&
|
||||||
IsValid(period) &&
|
IsValid(period) &&
|
||||||
up.IsValid() &&
|
up.IsValid() &&
|
||||||
down.IsValid()
|
down.IsValid() &&
|
||||||
|
_threshold > 0
|
||||||
//
|
//
|
||||||
;
|
;
|
||||||
|
|
||||||
@@ -1505,7 +1557,8 @@ struct XZone
|
|||||||
_subWindow,
|
_subWindow,
|
||||||
true // Force PRefix ...
|
true // Force PRefix ...
|
||||||
);
|
);
|
||||||
if (!result) {
|
if (!result)
|
||||||
|
{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user