last ...
This commit is contained in:
@@ -129,6 +129,9 @@ struct XCAPivot
|
|||||||
|
|
||||||
//
|
//
|
||||||
Clean(values);
|
Clean(values);
|
||||||
|
|
||||||
|
//
|
||||||
|
ZeroMemory(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -465,6 +468,80 @@ struct XCAPivot
|
|||||||
//
|
//
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
struct XCAPVFVG
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// Props ...
|
||||||
|
double value;
|
||||||
|
XCAPivot fvgs[];
|
||||||
|
ENUM_X_DIRECTION dir;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Constructor ...
|
||||||
|
XCAPVFVG()
|
||||||
|
{
|
||||||
|
Clean();
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Tools ...
|
||||||
|
|
||||||
|
//
|
||||||
|
void Clean()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
value = 0;
|
||||||
|
Clean(fvgs);
|
||||||
|
dir = X_DIRECTION_NONE;
|
||||||
|
|
||||||
|
//
|
||||||
|
ZeroMemory(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
bool IsValid()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
bool result = false;
|
||||||
|
|
||||||
|
//
|
||||||
|
result = value != 0 &&
|
||||||
|
HasDirection(dir);
|
||||||
|
|
||||||
|
//
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
void AddPivot(XCAPivot &pivot)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
if (!IsValid() ||
|
||||||
|
!pivot.IsValid())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
int idx = -1;
|
||||||
|
bool has = FindPivotIndex(
|
||||||
|
idx,
|
||||||
|
pivot,
|
||||||
|
fvgs //
|
||||||
|
);
|
||||||
|
if (has) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
AddRef(
|
||||||
|
pivot,
|
||||||
|
fvgs //
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Find Specified Pivot Index inside a Collection of Pivots ...
|
* Find Specified Pivot Index inside a Collection of Pivots ...
|
||||||
*
|
*
|
||||||
@@ -4762,7 +4839,7 @@ class XCXCAEAPOIDetector : public XCBase
|
|||||||
}
|
}
|
||||||
Clean(tmp);
|
Clean(tmp);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// OSCS ...
|
// OSCS ...
|
||||||
|
|
||||||
|
|||||||
@@ -63,6 +63,63 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
bool drawCCICrossedOverOSPivots;
|
bool drawCCICrossedOverOSPivots;
|
||||||
bool drawCCICrossedUnderOBPivots;
|
bool drawCCICrossedUnderOBPivots;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Colorize Props ...
|
||||||
|
|
||||||
|
//
|
||||||
|
color peakPivotColor;
|
||||||
|
color valePivotColor;
|
||||||
|
color sameHHPivotColor;
|
||||||
|
color sameLLPivotColor;
|
||||||
|
color kiBullishPivotColor;
|
||||||
|
color kiBearishPivotColor;
|
||||||
|
color fvgBullishPivotColor;
|
||||||
|
color fvgBearishPivotColor;
|
||||||
|
color defBullishPivotColor;
|
||||||
|
color defBearishPivotColor;
|
||||||
|
color oscsBullishPivotColor;
|
||||||
|
color oscsBearishPivotColor;
|
||||||
|
color trendBullishPivotColor;
|
||||||
|
color trendBearishPivotColor;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Width Props ...
|
||||||
|
|
||||||
|
//
|
||||||
|
int peakPivotWidth;
|
||||||
|
int valePivotWidth;
|
||||||
|
int sameHHPivotWidth;
|
||||||
|
int sameLLPivotWidth;
|
||||||
|
int kiBullishPivotWidth;
|
||||||
|
int kiBearishPivotWidth;
|
||||||
|
int fvgBullishPivotWidth;
|
||||||
|
int fvgBearishPivotWidth;
|
||||||
|
int defBullishPivotWidth;
|
||||||
|
int defBearishPivotWidth;
|
||||||
|
int oscsBullishPivotWidth;
|
||||||
|
int oscsBearishPivotWidth;
|
||||||
|
int trendBullishPivotWidth;
|
||||||
|
int trendBearishPivotWidth;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style Props ...
|
||||||
|
|
||||||
|
//
|
||||||
|
ENUM_LINE_STYLE peakPivotStyle;
|
||||||
|
ENUM_LINE_STYLE valePivotStyle;
|
||||||
|
ENUM_LINE_STYLE sameHHPivotStyle;
|
||||||
|
ENUM_LINE_STYLE sameLLPivotStyle;
|
||||||
|
ENUM_LINE_STYLE kiBullishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE kiBearishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE fvgBullishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE fvgBearishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE defBullishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE defBearishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE oscsBullishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE oscsBearishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE trendBullishPivotStyle;
|
||||||
|
ENUM_LINE_STYLE trendBearishPivotStyle;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Constructors ...
|
// Constructors ...
|
||||||
XCXCAEAPOIDrawer(
|
XCXCAEAPOIDrawer(
|
||||||
@@ -93,7 +150,7 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
mKIBullishPivotObjects.Clear();
|
mKIBullishPivotObjects.Clear();
|
||||||
mKIBearishPivotObjects.Clear();
|
mKIBearishPivotObjects.Clear();
|
||||||
mFVGBullishPivotObjects.Clear();
|
mFVGBullishPivotObjects.Clear();
|
||||||
mFVGBearishPivotObjects.Clear();
|
mFVGBearishPivotObjects.Clear();
|
||||||
mPeakSWHResPivotObjects.Clear();
|
mPeakSWHResPivotObjects.Clear();
|
||||||
mValeSWLSupPivotObjects.Clear();
|
mValeSWLSupPivotObjects.Clear();
|
||||||
mTKIBullishPivotObjects.Clear();
|
mTKIBullishPivotObjects.Clear();
|
||||||
@@ -135,7 +192,7 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
drawKIBullishPivots = false;
|
drawKIBullishPivots = false;
|
||||||
drawKIBearishPivots = false;
|
drawKIBearishPivots = false;
|
||||||
drawFVGBullishPivots = false;
|
drawFVGBullishPivots = false;
|
||||||
drawFVGBearishPivots = false;
|
drawFVGBearishPivots = false;
|
||||||
drawPeakSWHResPivots = false;
|
drawPeakSWHResPivots = false;
|
||||||
drawValeSWLSupPivots = false;
|
drawValeSWLSupPivots = false;
|
||||||
drawTKIBullishPivots = false;
|
drawTKIBullishPivots = false;
|
||||||
@@ -150,6 +207,63 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
drawRSICrossedUnderOBPivots = false;
|
drawRSICrossedUnderOBPivots = false;
|
||||||
drawCCICrossedOverOSPivots = false;
|
drawCCICrossedOverOSPivots = false;
|
||||||
drawCCICrossedUnderOBPivots = false;
|
drawCCICrossedUnderOBPivots = false;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Color ...
|
||||||
|
defBullishPivotColor = clrLime;
|
||||||
|
defBearishPivotColor = clrRed;
|
||||||
|
|
||||||
|
//
|
||||||
|
peakPivotColor = defBearishPivotColor;
|
||||||
|
valePivotColor = defBullishPivotColor;
|
||||||
|
sameHHPivotColor = defBearishPivotColor;
|
||||||
|
sameLLPivotColor = defBullishPivotColor;
|
||||||
|
kiBullishPivotColor = defBullishPivotColor;
|
||||||
|
kiBearishPivotColor = defBearishPivotColor;
|
||||||
|
fvgBullishPivotColor = defBullishPivotColor;
|
||||||
|
fvgBearishPivotColor = defBearishPivotColor;
|
||||||
|
oscsBullishPivotColor = defBullishPivotColor;
|
||||||
|
oscsBearishPivotColor = defBearishPivotColor;
|
||||||
|
trendBullishPivotColor = defBullishPivotColor;
|
||||||
|
trendBearishPivotColor = defBearishPivotColor;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Width ...
|
||||||
|
defBullishPivotWidth = 1;
|
||||||
|
defBearishPivotWidth = 1;
|
||||||
|
|
||||||
|
//
|
||||||
|
peakPivotWidth = defBearishPivotWidth;
|
||||||
|
valePivotWidth = defBullishPivotWidth;
|
||||||
|
sameHHPivotWidth = defBearishPivotWidth;
|
||||||
|
sameLLPivotWidth = defBullishPivotWidth;
|
||||||
|
kiBullishPivotWidth = defBullishPivotWidth;
|
||||||
|
kiBearishPivotWidth = defBearishPivotWidth;
|
||||||
|
fvgBullishPivotWidth = defBullishPivotWidth;
|
||||||
|
fvgBearishPivotWidth = defBearishPivotWidth;
|
||||||
|
oscsBullishPivotWidth = defBullishPivotWidth;
|
||||||
|
oscsBearishPivotWidth = defBearishPivotWidth;
|
||||||
|
trendBullishPivotWidth = defBullishPivotWidth;
|
||||||
|
trendBearishPivotWidth = defBearishPivotWidth;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style ...
|
||||||
|
defBullishPivotStyle = STYLE_DOT;
|
||||||
|
defBearishPivotStyle = STYLE_DOT;
|
||||||
|
|
||||||
|
//
|
||||||
|
peakPivotStyle = defBearishPivotStyle;
|
||||||
|
valePivotStyle = defBullishPivotStyle;
|
||||||
|
sameHHPivotStyle = defBearishPivotStyle;
|
||||||
|
sameLLPivotStyle = defBullishPivotStyle;
|
||||||
|
kiBullishPivotStyle = defBullishPivotStyle;
|
||||||
|
kiBearishPivotStyle = defBearishPivotStyle;
|
||||||
|
fvgBullishPivotStyle = defBullishPivotStyle;
|
||||||
|
fvgBearishPivotStyle = defBearishPivotStyle;
|
||||||
|
oscsBullishPivotStyle = defBullishPivotStyle;
|
||||||
|
oscsBearishPivotStyle = defBearishPivotStyle;
|
||||||
|
trendBullishPivotStyle = defBullishPivotStyle;
|
||||||
|
trendBearishPivotStyle = defBearishPivotStyle;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -233,6 +347,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(peakPivotColor);
|
||||||
|
iObj.BoxWidth(peakPivotWidth);
|
||||||
|
iObj.BoxStyle(peakPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mSWHPivotObjects.Add(iObj);
|
mSWHPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -286,6 +406,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(valePivotColor);
|
||||||
|
iObj.BoxWidth(valePivotWidth);
|
||||||
|
iObj.BoxStyle(valePivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mSWLPivotObjects.Add(iObj);
|
mSWLPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -339,6 +465,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(peakPivotColor);
|
||||||
|
iObj.BoxWidth(peakPivotWidth);
|
||||||
|
iObj.BoxStyle(peakPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mPeakPivotObjects.Add(iObj);
|
mPeakPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -392,6 +524,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(valePivotColor);
|
||||||
|
iObj.BoxWidth(valePivotWidth);
|
||||||
|
iObj.BoxStyle(valePivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mValePivotObjects.Add(iObj);
|
mValePivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -445,6 +583,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(kiBullishPivotColor);
|
||||||
|
iObj.BoxWidth(kiBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(kiBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mKIBullishPivotObjects.Add(iObj);
|
mKIBullishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -498,6 +642,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(kiBearishPivotColor);
|
||||||
|
iObj.BoxWidth(kiBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(kiBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mKIBearishPivotObjects.Add(iObj);
|
mKIBearishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -505,11 +655,13 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
iBox.Clean();
|
iBox.Clean();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
void DrawFVGBullishPivots(datetime to = NULL) {
|
void DrawFVGBullishPivots(datetime to = NULL)
|
||||||
|
{
|
||||||
//
|
//
|
||||||
if (!drawFVGBullishPivots) {
|
if (!drawFVGBullishPivots)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -518,24 +670,28 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
|
|
||||||
//
|
//
|
||||||
bool has = detector.HasFVGBullishPivots();
|
bool has = detector.HasFVGBullishPivots();
|
||||||
if (!has) {
|
if (!has)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
int count = detector.CountFVGBullishPivots();
|
int count = detector.CountFVGBullishPivots();
|
||||||
for (int i = 0; i < count; i++) {
|
for (int i = 0; i < count; i++)
|
||||||
|
{
|
||||||
//
|
//
|
||||||
XBoxZone iBox;
|
XBoxZone iBox;
|
||||||
has = detector.fvgBullishPivots[i].AsBox(iBox);
|
has = detector.fvgBullishPivots[i].AsBox(iBox);
|
||||||
if (!has) {
|
if (!has)
|
||||||
|
{
|
||||||
//
|
//
|
||||||
iBox.Clean();
|
iBox.Clean();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
if (canUpdateTo) {
|
if (canUpdateTo)
|
||||||
|
{
|
||||||
iBox.to = to;
|
iBox.to = to;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -545,16 +701,25 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
iBox,
|
iBox,
|
||||||
iObj //
|
iObj //
|
||||||
);
|
);
|
||||||
if (has) {
|
if (has)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(fvgBullishPivotColor);
|
||||||
|
iObj.BoxWidth(fvgBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(fvgBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mFVGBullishPivotObjects.Add(iObj);
|
mFVGBullishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
void DrawFVGBearishPivots(datetime to = NULL) {
|
void DrawFVGBearishPivots(datetime to = NULL)
|
||||||
|
{
|
||||||
//
|
//
|
||||||
if (!drawFVGBearishPivots) {
|
if (!drawFVGBearishPivots)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -563,24 +728,28 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
|
|
||||||
//
|
//
|
||||||
bool has = detector.HasFVGBearishPivots();
|
bool has = detector.HasFVGBearishPivots();
|
||||||
if (!has) {
|
if (!has)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
int count = detector.CountFVGBearishPivots();
|
int count = detector.CountFVGBearishPivots();
|
||||||
for (int i = 0; i < count; i++) {
|
for (int i = 0; i < count; i++)
|
||||||
|
{
|
||||||
//
|
//
|
||||||
XBoxZone iBox;
|
XBoxZone iBox;
|
||||||
has = detector.fvgBearishPivots[i].AsBox(iBox);
|
has = detector.fvgBearishPivots[i].AsBox(iBox);
|
||||||
if (!has) {
|
if (!has)
|
||||||
|
{
|
||||||
//
|
//
|
||||||
iBox.Clean();
|
iBox.Clean();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
if (canUpdateTo) {
|
if (canUpdateTo)
|
||||||
|
{
|
||||||
iBox.to = to;
|
iBox.to = to;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -590,7 +759,14 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
iBox,
|
iBox,
|
||||||
iObj //
|
iObj //
|
||||||
);
|
);
|
||||||
if (has) {
|
if (has)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(fvgBearishPivotColor);
|
||||||
|
iObj.BoxWidth(fvgBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(fvgBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mFVGBearishPivotObjects.Add(iObj);
|
mFVGBearishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -641,6 +817,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(peakPivotColor);
|
||||||
|
iObj.BoxWidth(peakPivotWidth);
|
||||||
|
iObj.BoxStyle(peakPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mPeakSWHResPivotObjects.Add(iObj);
|
mPeakSWHResPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -694,6 +876,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(valePivotColor);
|
||||||
|
iObj.BoxWidth(valePivotWidth);
|
||||||
|
iObj.BoxStyle(valePivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mValeSWLSupPivotObjects.Add(iObj);
|
mValeSWLSupPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -747,6 +935,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(kiBullishPivotColor);
|
||||||
|
iObj.BoxWidth(kiBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(kiBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mTKIBullishPivotObjects.Add(iObj);
|
mTKIBullishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -800,6 +994,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(kiBearishPivotColor);
|
||||||
|
iObj.BoxWidth(kiBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(kiBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mTKIBearishPivotObjects.Add(iObj);
|
mTKIBearishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -853,6 +1053,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(trendBullishPivotColor);
|
||||||
|
iObj.BoxWidth(trendBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(trendBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mTrendBullishPivotObjects.Add(iObj);
|
mTrendBullishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -906,6 +1112,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(trendBearishPivotColor);
|
||||||
|
iObj.BoxWidth(trendBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(trendBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mTrendBearishPivotObjects.Add(iObj);
|
mTrendBearishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -959,6 +1171,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(trendBullishPivotColor);
|
||||||
|
iObj.BoxWidth(trendBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(trendBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mTKITRNDBullishPivotObjects.Add(iObj);
|
mTKITRNDBullishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1012,6 +1230,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(trendBearishPivotColor);
|
||||||
|
iObj.BoxWidth(trendBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(trendBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mTKITRNDBearishPivotObjects.Add(iObj);
|
mTKITRNDBearishPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1066,6 +1290,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameLLPivotColor);
|
||||||
|
iObj.BoxWidth(sameLLPivotWidth);
|
||||||
|
iObj.BoxStyle(sameLLPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameLLPivotObjects.Add(iObj);
|
mCycleSameLLPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1105,6 +1335,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameLLPivotColor);
|
||||||
|
iObj.BoxWidth(sameLLPivotWidth);
|
||||||
|
iObj.BoxStyle(sameLLPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameLLPivotObjects.Add(iObj);
|
mCycleSameLLPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1144,6 +1380,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameLLPivotColor);
|
||||||
|
iObj.BoxWidth(sameLLPivotWidth);
|
||||||
|
iObj.BoxStyle(sameLLPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameLLPivotObjects.Add(iObj);
|
mCycleSameLLPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1183,6 +1425,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameLLPivotColor);
|
||||||
|
iObj.BoxWidth(sameLLPivotWidth);
|
||||||
|
iObj.BoxStyle(sameLLPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameLLPivotObjects.Add(iObj);
|
mCycleSameLLPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1238,6 +1486,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameHHPivotColor);
|
||||||
|
iObj.BoxWidth(sameHHPivotWidth);
|
||||||
|
iObj.BoxStyle(sameHHPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameHHPivotObjects.Add(iObj);
|
mCycleSameHHPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1277,6 +1531,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameHHPivotColor);
|
||||||
|
iObj.BoxWidth(sameHHPivotWidth);
|
||||||
|
iObj.BoxStyle(sameHHPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameHHPivotObjects.Add(iObj);
|
mCycleSameHHPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1316,6 +1576,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameHHPivotColor);
|
||||||
|
iObj.BoxWidth(sameHHPivotWidth);
|
||||||
|
iObj.BoxStyle(sameHHPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameHHPivotObjects.Add(iObj);
|
mCycleSameHHPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1355,6 +1621,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(sameHHPivotColor);
|
||||||
|
iObj.BoxWidth(sameHHPivotWidth);
|
||||||
|
iObj.BoxStyle(sameHHPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCycleSameHHPivotObjects.Add(iObj);
|
mCycleSameHHPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1410,6 +1682,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBearishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mRSIPeakPivotObjects.Add(iObj);
|
mRSIPeakPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1465,6 +1743,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBullishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mRSIValePivotObjects.Add(iObj);
|
mRSIValePivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1518,6 +1802,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBullishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mRSICrossedOverOSPivotObjects.Add(iObj);
|
mRSICrossedOverOSPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1571,6 +1861,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBearishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mRSICrossedUnderOBPivotObjects.Add(iObj);
|
mRSICrossedUnderOBPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1626,6 +1922,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBearishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCCIPeakPivotObjects.Add(iObj);
|
mCCIPeakPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1681,6 +1983,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBullishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCCIValePivotObjects.Add(iObj);
|
mCCIValePivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1734,6 +2042,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBullishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBullishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBullishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCCICrossedOverOSPivotObjects.Add(iObj);
|
mCCICrossedOverOSPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1787,6 +2101,12 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
);
|
);
|
||||||
if (has)
|
if (has)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
iObj.BoxColor(oscsBearishPivotColor);
|
||||||
|
iObj.BoxWidth(oscsBearishPivotWidth);
|
||||||
|
iObj.BoxStyle(oscsBearishPivotStyle);
|
||||||
|
|
||||||
|
//
|
||||||
mCCICrossedUnderOBPivotObjects.Add(iObj);
|
mCCICrossedUnderOBPivotObjects.Add(iObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1824,7 +2144,7 @@ class XCXCAEAPOIDrawer : public XCBase
|
|||||||
CArrayObj mKIBullishPivotObjects;
|
CArrayObj mKIBullishPivotObjects;
|
||||||
CArrayObj mKIBearishPivotObjects;
|
CArrayObj mKIBearishPivotObjects;
|
||||||
CArrayObj mFVGBullishPivotObjects;
|
CArrayObj mFVGBullishPivotObjects;
|
||||||
CArrayObj mFVGBearishPivotObjects;
|
CArrayObj mFVGBearishPivotObjects;
|
||||||
CArrayObj mPeakSWHResPivotObjects;
|
CArrayObj mPeakSWHResPivotObjects;
|
||||||
CArrayObj mValeSWLSupPivotObjects;
|
CArrayObj mValeSWLSupPivotObjects;
|
||||||
CArrayObj mTKIBullishPivotObjects;
|
CArrayObj mTKIBullishPivotObjects;
|
||||||
|
|||||||
@@ -746,8 +746,8 @@ class XCXCAEASignaller : XCBase
|
|||||||
detector.detectKIBearishPivot = false;
|
detector.detectKIBearishPivot = false;
|
||||||
detector.detectFVGBullishPivot = true;
|
detector.detectFVGBullishPivot = true;
|
||||||
detector.detectFVGBearishPivot = true;
|
detector.detectFVGBearishPivot = true;
|
||||||
detector.detectPeakSWHResPivot = false;
|
detector.detectPeakSWHResPivot = true;
|
||||||
detector.detectValeSWLSupPivot = false;
|
detector.detectValeSWLSupPivot = true;
|
||||||
detector.detectTKIBullishPivot = false;
|
detector.detectTKIBullishPivot = false;
|
||||||
detector.detectCycleSameLLPivot = false;
|
detector.detectCycleSameLLPivot = false;
|
||||||
detector.detectCycleSameHHPivot = false;
|
detector.detectCycleSameHHPivot = false;
|
||||||
@@ -771,10 +771,10 @@ class XCXCAEASignaller : XCBase
|
|||||||
drawer.drawSWLPivots = false;
|
drawer.drawSWLPivots = false;
|
||||||
drawer.drawPeakPivots = false;
|
drawer.drawPeakPivots = false;
|
||||||
drawer.drawValePivots = false;
|
drawer.drawValePivots = false;
|
||||||
drawer.drawRSIPeakPivots = false;
|
drawer.drawRSIPeakPivots = true;
|
||||||
drawer.drawRSIValePivots = false;
|
drawer.drawRSIValePivots = true;
|
||||||
drawer.drawCCIPeakPivots = false;
|
drawer.drawCCIPeakPivots = true;
|
||||||
drawer.drawCCIValePivots = false;
|
drawer.drawCCIValePivots = true;
|
||||||
drawer.drawKIBullishPivots = false;
|
drawer.drawKIBullishPivots = false;
|
||||||
drawer.drawKIBearishPivots = false;
|
drawer.drawKIBearishPivots = false;
|
||||||
drawer.drawFVGBullishPivots = true;
|
drawer.drawFVGBullishPivots = true;
|
||||||
@@ -793,6 +793,33 @@ class XCXCAEASignaller : XCBase
|
|||||||
drawer.drawRSICrossedUnderOBPivots = false;
|
drawer.drawRSICrossedUnderOBPivots = false;
|
||||||
drawer.drawCCICrossedOverOSPivots = false;
|
drawer.drawCCICrossedOverOSPivots = false;
|
||||||
drawer.drawCCICrossedUnderOBPivots = false;
|
drawer.drawCCICrossedUnderOBPivots = false;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Configure Width ...
|
||||||
|
drawer.peakPivotWidth = 1;
|
||||||
|
drawer.valePivotWidth = 1;
|
||||||
|
drawer.fvgBullishPivotWidth = 1;
|
||||||
|
drawer.fvgBearishPivotWidth = 1;
|
||||||
|
drawer.oscsBullishPivotWidth = 2;
|
||||||
|
drawer.oscsBearishPivotWidth = 2;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Configure Colors ...
|
||||||
|
drawer.peakPivotColor = clrMagenta;
|
||||||
|
drawer.valePivotColor = clrAqua;
|
||||||
|
drawer.fvgBullishPivotColor = clrLime;
|
||||||
|
drawer.fvgBearishPivotColor = clrRed;
|
||||||
|
drawer.oscsBullishPivotColor = clrYellow;
|
||||||
|
drawer.oscsBearishPivotColor = clrOrange;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Configure Style ...
|
||||||
|
drawer.peakPivotStyle = STYLE_SOLID;
|
||||||
|
drawer.valePivotStyle = STYLE_SOLID;
|
||||||
|
drawer.fvgBullishPivotStyle = STYLE_DASH;
|
||||||
|
drawer.fvgBearishPivotStyle = STYLE_DASH;
|
||||||
|
drawer.oscsBullishPivotStyle = STYLE_SOLID;
|
||||||
|
drawer.oscsBearishPivotStyle = STYLE_SOLID;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user