add MQL5Test Workspace Content as BKP Solution ...
This commit is contained in:
@@ -0,0 +1,164 @@
|
||||
|
||||
//
|
||||
// Find Last Strong Support ...
|
||||
double XPVHLPGetLastStrongSupport(
|
||||
int bar_index, // Bar Index ...
|
||||
int length // LoopBack ...
|
||||
)
|
||||
{
|
||||
//
|
||||
double result = 0;
|
||||
|
||||
//
|
||||
bool isBarIndexSupport = XPVHLPIsStrongSupport(bar_index);
|
||||
if (isBarIndexSupport)
|
||||
{
|
||||
length += bar_index;
|
||||
}
|
||||
|
||||
//
|
||||
if (!XPVHLPIsValidArraySize(bar_index + length + 1))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
for (int i = bar_index; i < bar_index + length; i++)
|
||||
{
|
||||
//
|
||||
if (XPVHLPIsStrongSupport(i))
|
||||
{
|
||||
//
|
||||
result = mpvSLLBuffer[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Find Last Strong Resistance ...
|
||||
double XPVHLPGetLastStrongResistance(
|
||||
int bar_index, // Bar Index ...
|
||||
int length // LoopBack ...
|
||||
)
|
||||
{
|
||||
//
|
||||
double result = 0;
|
||||
|
||||
//
|
||||
bool isBarIndexResistance = XPVHLPIsStrongResistance(bar_index);
|
||||
if (isBarIndexResistance)
|
||||
{
|
||||
length += bar_index;
|
||||
}
|
||||
|
||||
//
|
||||
if (!XPVHLPIsValidArraySize(bar_index + length + 1))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
for (int i = bar_index; i < bar_index + length; i++)
|
||||
{
|
||||
//
|
||||
if (XPVHLPIsStrongResistance(i))
|
||||
{
|
||||
//
|
||||
result = mpvSHHBuffer[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Find Strong Support Break Stop ...
|
||||
bool XPVHLPIsSupportBreakedStop(
|
||||
int bar_index, // Bar Index ...
|
||||
int length // LoopBack ...
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
bool isBaIndexSupport = XPVHLPIsStrongSupport(bar_index);
|
||||
if (isBaIndexSupport)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
if (!XPVHLPIsValidArraySize(bar_index + length + 1))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool isAllStrongSupport = true;
|
||||
for (int i = bar_index; i < bar_index + length; i++)
|
||||
{
|
||||
//
|
||||
if (!XPVHLPIsStrongSupport(i) && isAllStrongSupport)
|
||||
{
|
||||
//
|
||||
isAllStrongSupport = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
result = !isBaIndexSupport && isAllStrongSupport;
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Find Strong Resistance Break Stop ...
|
||||
bool XPVHLPIsResistanceBreakedStop(
|
||||
int bar_index, // Bar Index ...
|
||||
int length // LoopBack ...
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
bool isBaIndexResistance = XPVHLPIsStrongResistance(bar_index);
|
||||
if (isBaIndexResistance)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
if (!XPVHLPIsValidArraySize(bar_index + length + 1))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool isAllStrongResistance = true;
|
||||
for (int i = bar_index; i < bar_index + length; i++)
|
||||
{
|
||||
//
|
||||
if (!XPVHLPIsStrongResistance(i) && isAllStrongResistance)
|
||||
{
|
||||
//
|
||||
isAllStrongResistance = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
result = !isBaIndexResistance && isAllStrongResistance;
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
Reference in New Issue
Block a user