add support for FVG and Order Blocks in along side Support and Resistance ...
This commit is contained in:
@@ -1663,6 +1663,216 @@ struct XOHCL
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool HasBullishPressure(
|
||||
int _loopback = 7 //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
if (_loopback < 0)
|
||||
{
|
||||
_loopback = 7;
|
||||
}
|
||||
|
||||
//
|
||||
double bullishPressure = GetBullishPressure(_loopback);
|
||||
double bearishPressure = GetBearishPressure(_loopback);
|
||||
|
||||
//
|
||||
result =
|
||||
//
|
||||
bullishPressure > 0 &&
|
||||
bearishPressure >= 0 &&
|
||||
bullishPressure > bearishPressure
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool HasBearishPressure(
|
||||
int _loopback = 7 //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
if (_loopback < 0)
|
||||
{
|
||||
_loopback = 7;
|
||||
}
|
||||
|
||||
//
|
||||
double bullishPressure = GetBullishPressure(_loopback);
|
||||
double bearishPressure = GetBearishPressure(_loopback);
|
||||
|
||||
//
|
||||
result =
|
||||
//
|
||||
bearishPressure > 0 &&
|
||||
bullishPressure >= 0 &&
|
||||
bearishPressure > bullishPressure
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Retrieve Bullish Power ...
|
||||
double GetBullishPower(
|
||||
int _loopback = 7 //
|
||||
)
|
||||
{
|
||||
//
|
||||
double result = 0;
|
||||
|
||||
//
|
||||
if (!IsValid())
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
XOHCL bars[];
|
||||
int barsCount = GetBars(
|
||||
bars,
|
||||
symbol,
|
||||
period,
|
||||
Index(),
|
||||
_loopback //
|
||||
);
|
||||
if (!IsValidSize(barsCount))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
for (int i = 0; i < barsCount; i++)
|
||||
{
|
||||
//
|
||||
if (bars[i].IsBullish())
|
||||
{
|
||||
result += bars[i].GetBody();
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Retrieve Bearish Pressure ...
|
||||
double GetBearishPower(
|
||||
int _loopback = 7 //
|
||||
)
|
||||
{
|
||||
//
|
||||
double result = 0;
|
||||
|
||||
//
|
||||
if (!IsValid())
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
XOHCL bars[];
|
||||
int barsCount = GetBars(
|
||||
bars,
|
||||
symbol,
|
||||
period,
|
||||
Index(),
|
||||
_loopback //
|
||||
);
|
||||
if (!IsValidSize(barsCount))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
for (int i = 0; i < barsCount; i++)
|
||||
{
|
||||
//
|
||||
if (bars[i].IsBearish())
|
||||
{
|
||||
result += bars[i].GetBody();
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool HasBullishPower(
|
||||
int _loopback = 7 //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
if (_loopback < 0)
|
||||
{
|
||||
_loopback = 7;
|
||||
}
|
||||
|
||||
//
|
||||
double bullishPressure = GetBullishPower(_loopback);
|
||||
double bearishPressure = GetBearishPower(_loopback);
|
||||
|
||||
//
|
||||
result =
|
||||
//
|
||||
bullishPressure > 0 &&
|
||||
bearishPressure >= 0 &&
|
||||
bullishPressure > bearishPressure
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool HasBearishPower(
|
||||
int _loopback = 7 //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
if (_loopback < 0)
|
||||
{
|
||||
_loopback = 7;
|
||||
}
|
||||
|
||||
//
|
||||
double bullishPressure = GetBullishPower(_loopback);
|
||||
double bearishPressure = GetBearishPower(_loopback);
|
||||
|
||||
//
|
||||
result =
|
||||
//
|
||||
bearishPressure > 0 &&
|
||||
bullishPressure >= 0 &&
|
||||
bearishPressure > bullishPressure
|
||||
//
|
||||
;
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Touches ...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user