last works on xchma ...
This commit is contained in:
@@ -41,6 +41,7 @@
|
|||||||
#include "../Helpers/x-saherelm.xosc.helper.mq5"
|
#include "../Helpers/x-saherelm.xosc.helper.mq5"
|
||||||
#include "../Helpers/x-saherelm.xvlm.helper.mq5"
|
#include "../Helpers/x-saherelm.xvlm.helper.mq5"
|
||||||
#include "../Helpers/x-saherelm.xhtd.helper.mq5"
|
#include "../Helpers/x-saherelm.xhtd.helper.mq5"
|
||||||
|
#include "../Helpers/x-saherelm.xchma.helper.mq5"
|
||||||
#include "../Helpers/x-saherelm.xatsl.helper.mq5"
|
#include "../Helpers/x-saherelm.xatsl.helper.mq5"
|
||||||
#include "../Helpers/x-saherelm.xdmnt.helper.mq5"
|
#include "../Helpers/x-saherelm.xdmnt.helper.mq5"
|
||||||
#include "../Helpers/x-saherelm.xasct.helper.mq5"
|
#include "../Helpers/x-saherelm.xasct.helper.mq5"
|
||||||
@@ -244,6 +245,7 @@ struct X121SetupInputs
|
|||||||
XOSCInputs oscInputs; // XOSC Inputs
|
XOSCInputs oscInputs; // XOSC Inputs
|
||||||
XVLMInputs vlmInputs; // XVLM Inputs
|
XVLMInputs vlmInputs; // XVLM Inputs
|
||||||
XSLNInputs slnInputs; // XSLN Inputs
|
XSLNInputs slnInputs; // XSLN Inputs
|
||||||
|
XCHMAInputs chmaInputs; // XCHMA Inputs
|
||||||
XATSLInputs atslInputs; // XATSL Inputs
|
XATSLInputs atslInputs; // XATSL Inputs
|
||||||
XDMNTInputs dmntInputs; // XDMNT Inputs
|
XDMNTInputs dmntInputs; // XDMNT Inputs
|
||||||
XASCTInputs asctInputs; // XASCT Inputs
|
XASCTInputs asctInputs; // XASCT Inputs
|
||||||
@@ -286,6 +288,7 @@ struct X121SetupInputs
|
|||||||
XOSCInputs &_oscInputs, // XOSC Inputs
|
XOSCInputs &_oscInputs, // XOSC Inputs
|
||||||
XVLMInputs &_vlmInputs, // XVLM Inputs
|
XVLMInputs &_vlmInputs, // XVLM Inputs
|
||||||
XSLNInputs &_slnInputs, // XSLN Inputs
|
XSLNInputs &_slnInputs, // XSLN Inputs
|
||||||
|
XCHMAInputs &_chmaInputs, // XCHMA Inputs
|
||||||
XATSLInputs &_atslInputs, // XATSL Inputs
|
XATSLInputs &_atslInputs, // XATSL Inputs
|
||||||
XDMNTInputs &_dmntInputs, // XDMNT Inputs
|
XDMNTInputs &_dmntInputs, // XDMNT Inputs
|
||||||
XASCTInputs &_asctInputs, // XASCT Inputs
|
XASCTInputs &_asctInputs, // XASCT Inputs
|
||||||
@@ -311,6 +314,7 @@ struct X121SetupInputs
|
|||||||
this.mrbInputs = _mrbInputs;
|
this.mrbInputs = _mrbInputs;
|
||||||
this.oscInputs = _oscInputs;
|
this.oscInputs = _oscInputs;
|
||||||
this.vlmInputs = _vlmInputs;
|
this.vlmInputs = _vlmInputs;
|
||||||
|
this.chmaInputs = _chmaInputs;
|
||||||
this.atslInputs = _atslInputs;
|
this.atslInputs = _atslInputs;
|
||||||
this.dmntInputs = _dmntInputs;
|
this.dmntInputs = _dmntInputs;
|
||||||
this.asctInputs = _asctInputs;
|
this.asctInputs = _asctInputs;
|
||||||
@@ -350,10 +354,11 @@ struct X121SetupInputs
|
|||||||
vlmInputs.Clean();
|
vlmInputs.Clean();
|
||||||
slnInputs.Clean();
|
slnInputs.Clean();
|
||||||
htdInputs.Clean();
|
htdInputs.Clean();
|
||||||
|
chmaInputs.Clean();
|
||||||
|
atslInputs.Clean();
|
||||||
asctInputs.Clean();
|
asctInputs.Clean();
|
||||||
sslcInputs.Clean();
|
sslcInputs.Clean();
|
||||||
hullInputs.Clean();
|
hullInputs.Clean();
|
||||||
atslInputs.Clean();
|
|
||||||
dmntInputs.Clean();
|
dmntInputs.Clean();
|
||||||
adxtdInputs.Clean();
|
adxtdInputs.Clean();
|
||||||
}
|
}
|
||||||
@@ -376,10 +381,11 @@ struct X121SetupInputs
|
|||||||
vlmInputs.Default();
|
vlmInputs.Default();
|
||||||
slnInputs.Default();
|
slnInputs.Default();
|
||||||
htdInputs.Default();
|
htdInputs.Default();
|
||||||
|
chmaInputs.Default();
|
||||||
|
atslInputs.Default();
|
||||||
asctInputs.Default();
|
asctInputs.Default();
|
||||||
sslcInputs.Default();
|
sslcInputs.Default();
|
||||||
hullInputs.Default();
|
hullInputs.Default();
|
||||||
atslInputs.Default();
|
|
||||||
dmntInputs.Default();
|
dmntInputs.Default();
|
||||||
adxtdInputs.Default();
|
adxtdInputs.Default();
|
||||||
}
|
}
|
||||||
@@ -522,6 +528,13 @@ struct X121SetupInputs
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
result = chmaInputs.IsValid();
|
||||||
|
if (!result)
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
result = atslInputs.IsValid();
|
result = atslInputs.IsValid();
|
||||||
if (!result)
|
if (!result)
|
||||||
@@ -565,6 +578,7 @@ struct X121SetupConditions
|
|||||||
XVLMConditions vlmConditions;
|
XVLMConditions vlmConditions;
|
||||||
XHTDConditions htdConditions;
|
XHTDConditions htdConditions;
|
||||||
XSLNConditions slnConditions;
|
XSLNConditions slnConditions;
|
||||||
|
XCHMAConditions chmaConditions;
|
||||||
XATSLConditions atslConditions;
|
XATSLConditions atslConditions;
|
||||||
XASCTConditions asctConditions;
|
XASCTConditions asctConditions;
|
||||||
XSSLCConditions sslcConditions;
|
XSSLCConditions sslcConditions;
|
||||||
@@ -609,6 +623,7 @@ struct X121SetupConditions
|
|||||||
vlmConditions.Clean();
|
vlmConditions.Clean();
|
||||||
slnConditions.Clean();
|
slnConditions.Clean();
|
||||||
htdConditions.Clean();
|
htdConditions.Clean();
|
||||||
|
chmaConditions.Clean();
|
||||||
atslConditions.Clean();
|
atslConditions.Clean();
|
||||||
asctConditions.Clean();
|
asctConditions.Clean();
|
||||||
sslcConditions.Clean();
|
sslcConditions.Clean();
|
||||||
@@ -767,6 +782,14 @@ struct X121SetupConditions
|
|||||||
bullishScore += tempBullishScore;
|
bullishScore += tempBullishScore;
|
||||||
bearishScore += tempBearishScore;
|
bearishScore += tempBearishScore;
|
||||||
|
|
||||||
|
//
|
||||||
|
chmaConditions.GenerateScore(
|
||||||
|
tempBullishScore,
|
||||||
|
tempBearishScore //
|
||||||
|
);
|
||||||
|
bullishScore += tempBullishScore;
|
||||||
|
bearishScore += tempBearishScore;
|
||||||
|
|
||||||
//
|
//
|
||||||
dmntConditions.GenerateScore(
|
dmntConditions.GenerateScore(
|
||||||
tempBullishScore,
|
tempBullishScore,
|
||||||
@@ -829,7 +852,8 @@ struct X121SetupConditions
|
|||||||
string vlmSummary = vlmConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string vlmSummary = vlmConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
string slnSummary = slnConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string slnSummary = slnConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
string htdSummary = htdConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string htdSummary = htdConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
string atsSummary = atslConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string chmaSummary = chmaConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
|
string atslSummary = atslConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
string asctSummary = asctConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string asctSummary = asctConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
string sslcSummary = sslcConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string sslcSummary = sslcConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
string hullSummary = hullConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
string hullSummary = hullConditions.GenerateSummary(false, true, false, ignoreFalseConditions);
|
||||||
@@ -855,8 +879,9 @@ struct X121SetupConditions
|
|||||||
hullSummary + separator +
|
hullSummary + separator +
|
||||||
adxtdSummary + separator +
|
adxtdSummary + separator +
|
||||||
htdSummary + separator +
|
htdSummary + separator +
|
||||||
atsSummary + separator +
|
atslSummary + separator +
|
||||||
dmntSummary + separator +
|
dmntSummary + separator +
|
||||||
|
chmaSummary + separator +
|
||||||
""
|
""
|
||||||
//
|
//
|
||||||
;
|
;
|
||||||
@@ -3583,15 +3608,6 @@ struct X121SignalGenerator
|
|||||||
conditions.pvConditions.isCloseUnderFib4 &&
|
conditions.pvConditions.isCloseUnderFib4 &&
|
||||||
conditions.pvConditions.isCloseUnderFib5
|
conditions.pvConditions.isCloseUnderFib5
|
||||||
//
|
//
|
||||||
) //
|
|
||||||
&&
|
|
||||||
//
|
|
||||||
(
|
|
||||||
//
|
|
||||||
// XVLM ...
|
|
||||||
conditions.vlmConditions.isVolumeBearish &&
|
|
||||||
conditions.vlmConditions.isVolumeOverLast
|
|
||||||
//
|
|
||||||
)
|
)
|
||||||
//
|
//
|
||||||
&&
|
&&
|
||||||
@@ -3600,27 +3616,54 @@ struct X121SignalGenerator
|
|||||||
//
|
//
|
||||||
(
|
(
|
||||||
//
|
//
|
||||||
conditions.pvConditions.isSCBearish &&
|
(
|
||||||
conditions.pvConditions.isSCHHBearish &&
|
//
|
||||||
conditions.pvConditions.isSCLLBearish &&
|
// XVLM ...
|
||||||
conditions.pvConditions.isMCBearish &&
|
conditions.vlmConditions.isVolumeBearish &&
|
||||||
conditions.pvConditions.isMCHHBearish &&
|
conditions.vlmConditions.isVolumeOverLast
|
||||||
conditions.pvConditions.isMCLLBearish &&
|
//
|
||||||
conditions.pvConditions.isLCBearish &&
|
)
|
||||||
conditions.pvConditions.isLCHHBearish &&
|
|
||||||
conditions.pvConditions.isLCLLBearish &&
|
|
||||||
conditions.pvConditions.isHCBearish &&
|
|
||||||
conditions.pvConditions.isHCHHBearish &&
|
|
||||||
conditions.pvConditions.isHCLLBearish &&
|
|
||||||
//
|
//
|
||||||
// XICH ...
|
&&
|
||||||
conditions.ichConditions.isClosedUnderKijunSen &&
|
//
|
||||||
conditions.ichConditions.isTenkanSenUnderKijunSen &&
|
(
|
||||||
conditions.ichConditions.isSenkouSpanAUnderB &&
|
//
|
||||||
conditions.ichConditions.isSenkouSpanAUnderLast &&
|
(
|
||||||
conditions.ichConditions.isFutureSenkouSpanAUnderB &&
|
//
|
||||||
conditions.ichConditions.isFutureSenkouSpanAUnderLast &&
|
conditions.pvConditions.isSCBearish &&
|
||||||
conditions.ichConditions.isSenkouSpanACrossedUnderLast
|
conditions.pvConditions.isSCHHBearish &&
|
||||||
|
conditions.pvConditions.isSCLLBearish &&
|
||||||
|
conditions.pvConditions.isMCBearish &&
|
||||||
|
conditions.pvConditions.isMCHHBearish &&
|
||||||
|
conditions.pvConditions.isMCLLBearish &&
|
||||||
|
conditions.pvConditions.isLCBearish &&
|
||||||
|
conditions.pvConditions.isLCHHBearish &&
|
||||||
|
conditions.pvConditions.isLCLLBearish &&
|
||||||
|
conditions.pvConditions.isHCBearish &&
|
||||||
|
conditions.pvConditions.isHCHHBearish &&
|
||||||
|
conditions.pvConditions.isHCLLBearish &&
|
||||||
|
//
|
||||||
|
// XICH ...
|
||||||
|
conditions.ichConditions.isClosedUnderKijunSen &&
|
||||||
|
conditions.ichConditions.isTenkanSenUnderKijunSen &&
|
||||||
|
conditions.ichConditions.isSenkouSpanAUnderB &&
|
||||||
|
conditions.ichConditions.isSenkouSpanAUnderLast &&
|
||||||
|
conditions.ichConditions.isFutureSenkouSpanAUnderB &&
|
||||||
|
conditions.ichConditions.isFutureSenkouSpanAUnderLast &&
|
||||||
|
conditions.ichConditions.isSenkouSpanACrossedUnderLast
|
||||||
|
//
|
||||||
|
)
|
||||||
|
//
|
||||||
|
||
|
||||||
|
//
|
||||||
|
(
|
||||||
|
//
|
||||||
|
// XICH ...
|
||||||
|
conditions.ichConditions.isSenkouSpanACrossedUnderB
|
||||||
|
//
|
||||||
|
)
|
||||||
|
//
|
||||||
|
)
|
||||||
//
|
//
|
||||||
)
|
)
|
||||||
//
|
//
|
||||||
@@ -3628,8 +3671,11 @@ struct X121SignalGenerator
|
|||||||
//
|
//
|
||||||
(
|
(
|
||||||
//
|
//
|
||||||
// XICH ...
|
// XRL ...
|
||||||
conditions.ichConditions.isSenkouSpanACrossedUnderB
|
conditions.rlConditions.isFastBearish &&
|
||||||
|
conditions.rlConditions.isSlowBearish &&
|
||||||
|
conditions.rlConditions.isFastOverSlow &&
|
||||||
|
conditions.rlConditions.isVerifierBearish
|
||||||
//
|
//
|
||||||
)
|
)
|
||||||
//
|
//
|
||||||
@@ -4045,10 +4091,11 @@ public:
|
|||||||
XSCXVLMHelper *vlmHelper;
|
XSCXVLMHelper *vlmHelper;
|
||||||
XSCXSLNHelper *slnHelper;
|
XSCXSLNHelper *slnHelper;
|
||||||
XSCXHTDHelper *hdtHelper;
|
XSCXHTDHelper *hdtHelper;
|
||||||
|
XSCXCHMAHelper *chmaHelper;
|
||||||
|
XSCXATSLHelper *atslHelper;
|
||||||
XSCXASCTHelper *asctHelper;
|
XSCXASCTHelper *asctHelper;
|
||||||
XSCXSSLCHelper *sslcHelper;
|
XSCXSSLCHelper *sslcHelper;
|
||||||
XSCXHULLHelper *hullHelper;
|
XSCXHULLHelper *hullHelper;
|
||||||
XSCXATSLHelper *atslHelper;
|
|
||||||
XSCXDMNTHelper *dmntHelper;
|
XSCXDMNTHelper *dmntHelper;
|
||||||
XSCXADXTDHelper *adxtdHelper;
|
XSCXADXTDHelper *adxtdHelper;
|
||||||
|
|
||||||
@@ -4436,6 +4483,17 @@ public:
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
result = chmaHelper.GetConditions(
|
||||||
|
conditions.chmaConditions,
|
||||||
|
barIndex,
|
||||||
|
loopback //
|
||||||
|
);
|
||||||
|
if (!result)
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
result = atslHelper.GetConditions(
|
result = atslHelper.GetConditions(
|
||||||
conditions.atslConditions,
|
conditions.atslConditions,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user