update tasks and add multi asset ...

This commit is contained in:
2024-07-29 15:19:57 +03:30
parent efaa6dfbbe
commit 94174ddfa5
7 changed files with 1777 additions and 305 deletions
+332
View File
@@ -186,6 +186,229 @@ public:
mEnableXCHSTR = value;
}
//
// Important Areas Getters ...
//
bool GetSupport(
XOHCL &bar //
)
{
//
bool result = false;
//
bar.Clean();
//
result = support.IsValid();
if (result)
{
bar = support;
}
//
return result;
}
//
bool GetResistance(
XOHCL &bar //
)
{
//
bool result = false;
//
bar.Clean();
//
result = resistance.IsValid();
if (result)
{
bar = resistance;
}
//
return result;
}
//
bool GetBullishOB(
XOHCL &bar //
)
{
//
bool result = false;
//
bar.Clean();
//
result = bullishOB.IsValid();
if (result)
{
bar = bullishOB;
}
//
return result;
}
//
bool GetBearishOB(
XOHCL &bar //
)
{
//
bool result = false;
//
bar.Clean();
//
result = bearishOB.IsValid();
if (result)
{
bar = bearishOB;
}
//
return result;
}
//
bool GetBullishFVG(
XOHCL &bar,
double upper,
double lower //
)
{
//
bool result = false;
//
upper = 0;
lower = 0;
bar.Clean();
//
result = bullishFVG.IsValid();
if (result)
{
//
bar = bullishFVG;
upper = bullishFVGUpper;
lower = bullishFVGLower;
}
//
return result;
}
//
bool GetBearishFVG(
XOHCL &bar,
double upper,
double lower //
)
{
//
bool result = false;
//
upper = 0;
lower = 0;
bar.Clean();
//
result = bearishFVG.IsValid();
if (result)
{
//
bar = bearishFVG;
upper = bearishFVGUpper;
lower = bearishFVGLower;
}
//
return result;
}
//
bool GetBullishTrend(
XOHCL &bar,
XOHCL &swingHighs[],
XOHCL &swingLows[] //
)
{
//
bool result = false;
//
bar.Clean();
Clean(swingHighs);
Clean(swingLows);
//
result = bullishTrend.IsValid();
if (result)
{
//
bar = bullishTrend;
//
Copy(
bullishTrendSwingHighs,
swingHighs //
);
Copy(
bullishTrendSwingLows,
swingLows //
);
}
//
return result;
}
//
bool GetBearishTrend(
XOHCL &bar,
XOHCL &swingHighs[],
XOHCL &swingLows[] //
)
{
//
bool result = false;
//
bar.Clean();
Clean(swingHighs);
Clean(swingLows);
//
result = bearishTrend.IsValid();
if (result)
{
//
bar = bearishTrend;
//
Copy(
bearishTrendSwingHighs,
swingHighs //
);
Copy(
bearishTrendSwingLows,
swingLows //
);
}
//
return result;
}
//
// Overrides ...
@@ -566,6 +789,71 @@ public:
}
}
//
// TREND ...
//
bool hasBullishTrend = bullishTrend.IsValid();
if (!hasBullishTrend)
{
//
hasBullishTrend = aBar.HasBullishTrend(
bullishTrendSwingHighs,
bullishTrendSwingLows,
false //
);
//
if (hasBullishTrend)
{
//
bullishTrend = aBar;
//
if (mDrawImportantAreas)
{
//
DrawBullishTrend(
bullishTrend,
bullishTrendSwingHighs,
bullishTrendSwingLows,
ChartID() //
);
}
}
}
//
bool hasBearishTrend = bearishTrend.IsValid();
if (!hasBearishTrend)
{
//
hasBearishTrend = aBar.HasBearishTrend(
bearishTrendSwingHighs,
bearishTrendSwingLows,
false //
);
//
if (hasBearishTrend)
{
//
bearishTrend = aBar;
//
if (mDrawImportantAreas)
{
//
DrawBearishTrend(
bearishTrend,
bearishTrendSwingHighs,
bearishTrendSwingLows,
ChartID() //
);
}
}
}
//
// For Trend ...
XOHCL tmpHSW[];
@@ -1007,6 +1295,10 @@ public:
CheckBullishFVGValidation();
CheckBearishFVgValidation();
//
CheckBullishTrendValidation();
CheckBearishTrendValidation();
//
return result;
}
@@ -1071,6 +1363,22 @@ public:
bearishFVG.Clean();
}
//
if (hasBullishTrend)
{
//
RemoveBullishTrend(bullishTrend);
bullishTrend.Clean();
}
//
if (hasBearishTrend)
{
//
RemoveBearishTrend(bearishTrend);
bearishTrend.Clean();
}
//
// Retrieve Entry Price based on Position Type ...
entry = GetEntry(mSymbol, type);
@@ -1159,6 +1467,16 @@ protected:
double bearishFVGLower;
XOHCL bearishFVG;
//
XOHCL bullishTrendSwingHighs[];
XOHCL bullishTrendSwingLows[];
XOHCL bullishTrend;
//
XOHCL bearishTrendSwingHighs[];
XOHCL bearishTrendSwingLows[];
XOHCL bearishTrend;
//
// XPV ...
XPVInputs pvInputs;
@@ -1594,6 +1912,20 @@ private:
}
}
//
void CheckBullishTrendValidation()
{
//
// TODO: Complete this ...
}
//
void CheckBearishTrendValidation()
{
//
// TODO: Complete this ...
}
//
// XCHE Custom Data ...