converts signal lib to class ...
This commit is contained in:
@@ -27,7 +27,7 @@
|
||||
#include "../Classes/x-121.smc.market.cycle.helper.class.mq5"
|
||||
|
||||
//
|
||||
#include "../Signals/x-121.smc.xsupdemobs.signal.lib.mq5"
|
||||
#include "../Signals/x-121.smc.xsupdemobs.signal.class.mq5"
|
||||
|
||||
//
|
||||
// Definitions ...
|
||||
@@ -42,6 +42,7 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
//
|
||||
// Props ...
|
||||
bool useXSupDemOBSSignal;
|
||||
XCX121SMCXSupDemOBSSignalDetector *mXSupDemONSSignalDetector;
|
||||
|
||||
//
|
||||
// Constructor(s) ...
|
||||
@@ -53,7 +54,9 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
)
|
||||
: XCX121SMCBaseStrategy(_symbol, _period)
|
||||
{
|
||||
//
|
||||
InitialHelpers();
|
||||
mXSupDemONSSignalDetector = new XCX121SMCXSupDemOBSSignalDetector();
|
||||
}
|
||||
|
||||
//
|
||||
@@ -101,13 +104,6 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
*/
|
||||
void Destroy() override
|
||||
{
|
||||
//
|
||||
// XSupDemOBS ...
|
||||
RemoveX121SMCXSupDemOBSDraws();
|
||||
mX121SMCXSupDemOBSConditions.Clean();
|
||||
Clean(mX121SMCXSupDemOBSConditionsCollection);
|
||||
RemoveX121SMCXSupDemOBSWorkingZoneDraws();
|
||||
|
||||
//
|
||||
ZeroMemory(mDecisionCycleHelper);
|
||||
ZeroMemory(mAnalyseCycleHelper);
|
||||
@@ -119,6 +115,10 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
delete mAnalyseCycleHelper;
|
||||
delete mConsolidationCycleHelper;
|
||||
delete mVisionCycleHelper;
|
||||
|
||||
//
|
||||
ZeroMemory(mXSupDemONSSignalDetector);
|
||||
delete mXSupDemONSSignalDetector;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -324,16 +324,16 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
|
||||
//
|
||||
// Re Draw Working Zone ...
|
||||
RemoveX121SMCXSupDemOBSWorkingZoneDraws();
|
||||
DrawX121SMCXSupDemOBSWorkingZone(
|
||||
mXSupDemONSSignalDetector.RemoveWorkingZoneDraws();
|
||||
mXSupDemONSSignalDetector.DrawWorkingZone(
|
||||
mXSupDemOBSConditions,
|
||||
mVisionCycleHelper.mPOIDrawer //
|
||||
);
|
||||
|
||||
//
|
||||
// Re Draw Working Zone ...
|
||||
RemoveX121SMCXSupDemOBSDraws();
|
||||
DrawX121SMCXSupDemOBSConditions(
|
||||
mXSupDemONSSignalDetector.RemoveDraws();
|
||||
mXSupDemONSSignalDetector.DrawConditions(
|
||||
mXSupDemOBSConditions,
|
||||
mVisionCycleHelper.mPOIDrawer //
|
||||
);
|
||||
@@ -460,7 +460,7 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
if (useXSupDemOBSSignal)
|
||||
{
|
||||
//
|
||||
bool hasGuard = DetectX121SMCXSupDemOBSGuards(
|
||||
bool hasGuard = mXSupDemONSSignalDetector.DetectGuards(
|
||||
guards,
|
||||
positions,
|
||||
mDecisionCycleHelper,
|
||||
@@ -597,17 +597,16 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
|
||||
//
|
||||
// Detect Setup Conditions ...
|
||||
datetime setupTime = mX121SMCXSupDemOBSConditions.setupTime;
|
||||
bool isSetuped = mX121SMCXSupDemOBSConditions.IsSetuped();
|
||||
ENUM_X_DIRECTION setupDir = mX121SMCXSupDemOBSConditions.dir;
|
||||
datetime setupTime = mXSupDemONSSignalDetector.mConditions.setupTime;
|
||||
bool isSetuped = mXSupDemONSSignalDetector.mConditions.IsSetuped();
|
||||
ENUM_X_DIRECTION setupDir = mXSupDemONSSignalDetector.mConditions.dir;
|
||||
if (!isSetuped)
|
||||
{
|
||||
//
|
||||
// Detect Signal Setup ...
|
||||
isSetuped = DetectX121SMCXSupDemOBSSignalSetup(
|
||||
isSetuped = mXSupDemONSSignalDetector.DetectSignalSetup(
|
||||
symbol,
|
||||
period,
|
||||
mX121SMCXSupDemOBSConditions,
|
||||
mDecisionCycleHelper,
|
||||
mAnalyseCycleHelper,
|
||||
mConsolidationCycleHelper,
|
||||
@@ -615,25 +614,23 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
);
|
||||
|
||||
//
|
||||
setupDir = mX121SMCXSupDemOBSConditions.dir;
|
||||
setupTime = mX121SMCXSupDemOBSConditions.setupTime;
|
||||
setupDir = mXSupDemONSSignalDetector.mConditions.dir;
|
||||
setupTime = mXSupDemONSSignalDetector.mConditions.setupTime;
|
||||
|
||||
//
|
||||
if (isSetuped)
|
||||
{
|
||||
//
|
||||
int items = AddX121SMCXSupDemOBSConditionsIfNotExists(
|
||||
mX121SMCXSupDemOBSConditions,
|
||||
mX121SMCXSupDemOBSConditionsCollection //
|
||||
);
|
||||
int items = mXSupDemONSSignalDetector
|
||||
.AddConditionsIfNotExists();
|
||||
|
||||
//
|
||||
mX121SMCXSupDemOBSConditions.Clean();
|
||||
mXSupDemONSSignalDetector.mConditions.Clean();
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
int conditionsCount = ArraySize(mX121SMCXSupDemOBSConditionsCollection);
|
||||
int conditionsCount = ArraySize(mXSupDemONSSignalDetector.mConditionsCollection);
|
||||
result = IsValidSize(conditionsCount);
|
||||
if (!result)
|
||||
{
|
||||
@@ -645,7 +642,7 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
int selectedIndex = 0;
|
||||
X121SMCStrategyXSupDemOBSSignalConditions mTmpConditions[];
|
||||
Copy(
|
||||
mX121SMCXSupDemOBSConditionsCollection,
|
||||
mXSupDemONSSignalDetector.mConditionsCollection,
|
||||
mTmpConditions //
|
||||
);
|
||||
X121SMCStrategyXSupDemOBSSignalConditions mConditions;
|
||||
@@ -659,15 +656,16 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
{
|
||||
//
|
||||
// Detect Signal Trigger ...
|
||||
canTrigger = DetectX121SMCXSupDemOBSSignalTrigger(
|
||||
mTmpConditions[i],
|
||||
symbol,
|
||||
period,
|
||||
mDecisionCycleHelper,
|
||||
mAnalyseCycleHelper,
|
||||
mConsolidationCycleHelper,
|
||||
mVisionCycleHelper //
|
||||
);
|
||||
canTrigger = mXSupDemONSSignalDetector
|
||||
.DetectSignalTrigger(
|
||||
mTmpConditions[i],
|
||||
symbol,
|
||||
period,
|
||||
mDecisionCycleHelper,
|
||||
mAnalyseCycleHelper,
|
||||
mConsolidationCycleHelper,
|
||||
mVisionCycleHelper //
|
||||
);
|
||||
|
||||
//
|
||||
result = canTrigger;
|
||||
@@ -679,7 +677,7 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
{
|
||||
//
|
||||
ArrayRemove(
|
||||
mX121SMCXSupDemOBSConditionsCollection,
|
||||
mXSupDemONSSignalDetector.mConditionsCollection,
|
||||
i,
|
||||
1 //
|
||||
);
|
||||
@@ -712,7 +710,7 @@ class XCX121SMCStrategy : public XCX121SMCBaseStrategy
|
||||
//
|
||||
// Remove Selected Index from Main Collection ...
|
||||
ArrayRemove(
|
||||
mX121SMCXSupDemOBSConditionsCollection,
|
||||
mXSupDemONSSignalDetector.mConditionsCollection,
|
||||
selectedIndex,
|
||||
1 //
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user