complete XCHICH Helper and Integrated it to XCH Strategy ...

This commit is contained in:
2024-08-06 00:06:06 +03:30
parent 423d2ef693
commit 4fcc0bc70b
7 changed files with 4998 additions and 1408 deletions
+64 -8
View File
@@ -31,6 +31,7 @@
#include "../Helpers/x-saherelm.xchche.helper.mq5"
#include "../Helpers/x-saherelm.xchstr.helper.mq5"
#include "../Helpers/x-saherelm.xchvlm.helper.mq5"
#include "../Helpers/x-saherelm.xchich.helper.mq5"
#include "../Helpers/x-saherelm.xchvwap.helper.mq5"
#include "../Helpers/x-saherelm.xchswings.helper.mq5"
@@ -95,6 +96,7 @@ struct XCHStrategyConditions
XCHCHEConditions chcheConditions;
XCHSTRConditions chstrConditions;
XCHVLMConditions chvlmConditions;
XCHICHConditions chichConditions;
XCHVWAPConditions chvwapConditions;
//
@@ -630,6 +632,15 @@ public:
return result;
}
//
// XCHICH ...
XCHICHConditions chichConditions;
result = chichHelper.GetConditions(chichConditions);
if (!result)
{
return result;
}
//
// XCHVWAP ...
XCHVWAPConditions chvwapConditions;
@@ -686,6 +697,7 @@ public:
conditions.chstrConditions = chstrConditions;
conditions.chcheConditions = chcheConditions;
conditions.chvlmConditions = chvlmConditions;
conditions.chichConditions = chichConditions;
conditions.chvwapConditions = chvwapConditions;
//
@@ -926,7 +938,7 @@ public:
notHaveBearishPower &&
cBar.low > chmMinBullishFast &&
chmConditions.isBullishPowerUp &&
chcheConditions.isCStrongBullish
chcheConditions.isCStrongBullish
//
;
@@ -1171,7 +1183,7 @@ public:
chcheMinCBullish > 0 &&
chcheConditions.hasBullishPower &&
chcheConditions.isCStrongBullish &&
chcheMinCBullish > GetMaxCHCHECLast()
chcheMinCBullish > GetMaxCHCHECLast()
//
;
@@ -1380,6 +1392,11 @@ protected:
XCHVLMInputs chvlmInputs;
XSCXCHVLMHelper *chvlmHelper;
//
// XCHICH ...
XCHICHInputs chichInputs;
XSCXCHICHHelper *chichHelper;
//
// XCHVWAP ...
XCHVWAPInputs chvwapInputs;
@@ -1719,18 +1736,51 @@ private:
chvlmInputs //
);
//
// XCHICH ...
//
chichInputs.Default();
//
chichInputs.scMethod = scMethod;
chichInputs.scPeriod = scPeriod;
chichInputs.mcMethod = mcMethod;
chichInputs.mcPeriod = mcPeriod;
chichInputs.lcMethod = lcMethod;
chichInputs.lcPeriod = lcPeriod;
chichInputs.hcMethod = hcMethod;
chichInputs.hcPeriod = hcPeriod;
//
chichInputs.showTenkanSen = false;
chichInputs.showKijunSen = false;
chichInputs.showChikouSpan = false;
chichInputs.showSenkouSpanA = false;
chichInputs.showSenkouSpanB = false;
chichInputs.showKumo = false;
//
chichInputs.showCurrent = false;
chichInputs.showShort = false;
chichInputs.showMedium = false;
chichInputs.showLong = false;
chichInputs.showHind = false;
//
chichHelper = new XSCXCHICHHelper();
chichHelper.Init(
mSymbol,
mPeriod,
chichInputs //
);
//
// XCHVWAP ...
//
chvwapInputs.Default();
//
chvwapInputs.showShort = false;
chvwapInputs.showMedium = false;
chvwapInputs.showLong = false;
chvwapInputs.showHind = false;
//
chvwapInputs.scMethod = scMethod;
chvwapInputs.scPeriod = scPeriod;
@@ -1741,6 +1791,12 @@ private:
chvwapInputs.hcMethod = hcMethod;
chvwapInputs.hcPeriod = hcPeriod;
//
chvwapInputs.showShort = false;
chvwapInputs.showMedium = false;
chvwapInputs.showLong = false;
chvwapInputs.showHind = false;
//
chvwapHelper = new XSCXCHVWAPHelper();
chvwapHelper.Init(