last ...
This commit is contained in:
@@ -2341,6 +2341,34 @@ class XCOHCLObject : public XCBaseObject
|
||||
mLowShadowRect.Fill(value);
|
||||
}
|
||||
|
||||
void BarSpes(
|
||||
int width = 1,
|
||||
color clr = clrNONE,
|
||||
ENUM_LINE_STYLE style = STYLE_SOLID,
|
||||
bool fill = false //
|
||||
)
|
||||
{
|
||||
//
|
||||
BodyWidth(width);
|
||||
LowShadowWidth(width);
|
||||
HighShadowWidth(width);
|
||||
|
||||
//
|
||||
BodyColor(clr);
|
||||
LowShadowColor(clr);
|
||||
HighShadowColor(clr);
|
||||
|
||||
//
|
||||
BodyStyle(style);
|
||||
LowShadowStyle(style);
|
||||
HighShadowStyle(style);
|
||||
|
||||
//
|
||||
BodyFill(fill);
|
||||
LowShadowFill(fill);
|
||||
HighShadowFill(fill);
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual ...
|
||||
|
||||
|
||||
@@ -927,13 +927,226 @@ else if (isPriceRejected)
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//
|
||||
// When FVg is Worked ...
|
||||
else
|
||||
{
|
||||
//
|
||||
XCFVG *fvgs[];
|
||||
if (isBullish)
|
||||
{
|
||||
//
|
||||
Copy(
|
||||
analyseState.bullishFairValueGaps,
|
||||
fvgs //
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
//
|
||||
Copy(
|
||||
analyseState.bearishFairValueGaps,
|
||||
fvgs //
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// int count = ArraySize(fvgs);
|
||||
// bool has = IsValidSize(count);
|
||||
// if (has)
|
||||
// {
|
||||
// //
|
||||
// for (int i = 0; i < count; i++)
|
||||
// {
|
||||
// //
|
||||
// XCBaseObject *iObj;
|
||||
// bool isCreate = visionCycleHelper
|
||||
// .mPOIDrawer
|
||||
// .CreateFairValueGap(
|
||||
// fvgs[i],
|
||||
// iObj //
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
|
||||
//
|
||||
// Extract UnActivated FVGs ...
|
||||
int fvgsCount = FilterZones(
|
||||
//
|
||||
fvgs,
|
||||
//
|
||||
trend,
|
||||
NULL, // For Period ...
|
||||
workerBar.time,
|
||||
//
|
||||
// Start ...
|
||||
XZONE_STATE_IGNORED,
|
||||
true, // Force Body Out ...
|
||||
//
|
||||
// Activation ...
|
||||
XZONE_STATE_FAILED,
|
||||
false, // Force Body Out ...
|
||||
//
|
||||
// Breaktion ...
|
||||
XZONE_STATE_IGNORED,
|
||||
false, // Force Body Out ...
|
||||
//
|
||||
// Works ...
|
||||
XZONE_STATE_IGNORED,
|
||||
false, // Body Out ...
|
||||
//
|
||||
true, // Apply Sorting ...
|
||||
true // Ignore Inside ...
|
||||
);
|
||||
|
||||
//
|
||||
bool has = IsValidSize(fvgsCount);
|
||||
if (has)
|
||||
{
|
||||
//
|
||||
int youngestIDX = GetYoungest(fvgs);
|
||||
has = IsValidIndex(youngestIDX);
|
||||
if (has)
|
||||
{
|
||||
//
|
||||
workingZone
|
||||
.orderFlow[youngestOBFVGIDX]
|
||||
.fvg = fvgs[youngestIDX];
|
||||
|
||||
//
|
||||
workingZone.UpdateTo(cTime);
|
||||
|
||||
//
|
||||
XCBaseObject *iFVGObj;
|
||||
bool isCreated = visionCycleHelper
|
||||
.mPOIDrawer.CreateFairValueGap(
|
||||
fvgs[youngestIDX],
|
||||
iFVGObj //
|
||||
);
|
||||
if (isCreated)
|
||||
{
|
||||
Print("");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//
|
||||
// TODO: Neews to Review ...
|
||||
else if (
|
||||
isOBWorked &&
|
||||
isFVGWorked &&
|
||||
isOBActivated &&
|
||||
isFVGActivated &&
|
||||
fvgActivationBar.time >= obActivationBar.time &&
|
||||
fvgActivationBar.time <= obActivationBar.NextAt() &&
|
||||
obWorkerBar.time > fvgWorkerBar.time)
|
||||
{
|
||||
//
|
||||
XOHCL iBar;
|
||||
bool isBarPassed = iBar.Init(
|
||||
symbol,
|
||||
period,
|
||||
zIndex //
|
||||
);
|
||||
|
||||
//
|
||||
if (isBarPassed)
|
||||
{
|
||||
//
|
||||
bool isBarInsideFVG =
|
||||
isBullish
|
||||
? (
|
||||
//
|
||||
iBar.low < workingZone.orderFlow[youngestOBFVGIDX].fvg.Upper() &&
|
||||
iBar.high > workingZone.orderFlow[youngestOBFVGIDX].fvg.Lower() &&
|
||||
//
|
||||
consolidationZBar.low < workingZone.orderFlow[youngestOBFVGIDX].fvg.Upper()
|
||||
//
|
||||
)
|
||||
: (
|
||||
//
|
||||
iBar.high > workingZone.orderFlow[youngestOBFVGIDX].fvg.Lower() &&
|
||||
iBar.low < workingZone.orderFlow[youngestOBFVGIDX].fvg.Upper() &&
|
||||
//
|
||||
consolidationZBar.high > workingZone.orderFlow[youngestOBFVGIDX].fvg.Lower()
|
||||
//
|
||||
);
|
||||
if (isBarInsideFVG)
|
||||
{
|
||||
Print("");
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
iBar.Clean();
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
//
|
||||
// TODO:
|
||||
// Remove Drawn Objects ...
|
||||
|
||||
// //
|
||||
// if (hasNewOB)
|
||||
// {
|
||||
// //
|
||||
// XCBaseObject *iObj;
|
||||
// bool isCreated = visionCycleHelper
|
||||
// .mPOIDrawer
|
||||
// .CreateOrderBlock(
|
||||
// newOB,
|
||||
// iObj //
|
||||
// );
|
||||
// Print("New OB");
|
||||
// }
|
||||
|
||||
// //
|
||||
// if (hasNewFVG)
|
||||
// {
|
||||
// //
|
||||
// XCBaseObject *iObj;
|
||||
// bool isCreated = visionCycleHelper
|
||||
// .mPOIDrawer
|
||||
// .CreateFairValueGap(
|
||||
// newFVG,
|
||||
// iObj //
|
||||
// );
|
||||
// Print("New FVG");
|
||||
// }
|
||||
|
||||
// //
|
||||
// if (hasNewAnalyseOB)
|
||||
// {
|
||||
// //
|
||||
// XCBaseObject *iObj;
|
||||
// bool isCreated = analyseCycleHelper
|
||||
// .mPOIDrawer
|
||||
// .CreateOrderBlock(
|
||||
// newAnalyseOB,
|
||||
// iObj //
|
||||
// );
|
||||
// Print("New OB");
|
||||
// }
|
||||
|
||||
// //
|
||||
// if (hasNewAnalyseFVG)
|
||||
// {
|
||||
// //
|
||||
// XCBaseObject *iObj;
|
||||
// bool isCreated = analyseCycleHelper
|
||||
// .mPOIDrawer
|
||||
// .CreateFairValueGap(
|
||||
// newAnalyseFVG,
|
||||
// iObj //
|
||||
// );
|
||||
// Print("New FVG");
|
||||
// }
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+256
-3954
File diff suppressed because it is too large
Load Diff
@@ -25,6 +25,7 @@
|
||||
#include "../../Classes/x-saherelm.x-poi.drawer.class.mq5"
|
||||
#include "../../Helpers/x-saherelm.x121.helper.mq5"
|
||||
#include "../../Libraries/x-saherelm.common.lib.mq5"
|
||||
#include "../../Libraries/x-saherelm.x-poi.extensions.lib.mq5"
|
||||
#include "../../Libraries/x-saherelm.x-poi.lib.mq5"
|
||||
#include "../../Libraries/x-saherelm.x-trade.lib.mq5"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -58,7 +58,10 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
InitialHelpers();
|
||||
|
||||
//
|
||||
mXWZSignalDetector = new XCX121SMCXWZSignalDetector();
|
||||
mXWZSignalDetector = new XCX121SMCXWZSignalDetector(
|
||||
_symbol,
|
||||
_period //
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
@@ -582,8 +585,6 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
//
|
||||
// Detect Signal Setup ...
|
||||
isSetuped = mXWZSignalDetector.DetectSignalSetup(
|
||||
symbol,
|
||||
period,
|
||||
mDecisionCycleHelper,
|
||||
mAnalyseCycleHelper,
|
||||
mConsolidationCycleHelper,
|
||||
|
||||
Reference in New Issue
Block a user