This commit is contained in:
2024-06-21 17:57:42 +03:30
parent 225c0f1ae1
commit 532be35f74
2 changed files with 130 additions and 23 deletions
+117 -10
View File
@@ -51,7 +51,7 @@ enum ENUM_X121_SIGNAL_PROVIDER
{
//
PROVIDER_UNKNOWN = 0,
PROVIDER_XMATD = 1,
PROVIDER_XMC = 1,
PROVIDER_XSARD = 2,
PROVIDER_XADXTD = 3,
PROVIDER_XSTR = 4,
@@ -68,6 +68,7 @@ enum ENUM_X121_SIGNAL_PROVIDER
PROVIDER_XHULL = 15,
PROVIDER_XASCT = 16,
PROVIDER_XVLM = 17,
PROVIDER_XPVF = 18,
};
//
@@ -124,9 +125,9 @@ ENUM_X121_SIGNAL_PROVIDER FromString(string value)
}
//
if (Contains(value, (EnumToString(PROVIDER_XMATD))))
if (Contains(value, (EnumToString(PROVIDER_XMC))))
{
result = PROVIDER_XMATD;
result = PROVIDER_XMC;
}
else if (Contains(value, (EnumToString(PROVIDER_XSARD))))
{
@@ -188,6 +189,14 @@ ENUM_X121_SIGNAL_PROVIDER FromString(string value)
{
result = PROVIDER_XASCT;
}
else if (Contains(value, (EnumToString(PROVIDER_XVLM))))
{
result = PROVIDER_XVLM;
}
else if (Contains(value, (EnumToString(PROVIDER_XPVF))))
{
result = PROVIDER_XPVF;
}
//
return result;
@@ -884,7 +893,7 @@ struct X121SignalGenerator
);
//
// XMATD ...
// XMC ...
bool long1 =
//
// Starting Conditions ...
@@ -909,7 +918,7 @@ struct X121SignalGenerator
{
//
pusher++;
provider = ToString(PROVIDER_XMATD);
provider = ToString(PROVIDER_XMC);
}
//
@@ -950,6 +959,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.strConditions.isTrendBullish &&
conditions.cheConditions.isStrongBullish &&
conditions.tdConditions.isBullish &&
@@ -977,6 +987,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.cheConditions.isStrongBullish &&
@@ -1005,6 +1016,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1033,6 +1045,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1063,6 +1076,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1093,6 +1107,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1123,6 +1138,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1152,6 +1168,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1181,6 +1198,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1209,6 +1227,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1237,6 +1256,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1265,6 +1285,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1293,6 +1314,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1321,6 +1343,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1350,6 +1373,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
@@ -1368,6 +1392,36 @@ struct X121SignalGenerator
provider = ToString(PROVIDER_XVLM);
}
//
// XPVF ...
bool long18 =
//
// Starting Conditions ...
conditions.pvConditions.isFiboIncreased &&
//
// Verifications ...
conditions.tdConditions.isBullish &&
conditions.mcConditions.isBullish &&
conditions.mcConditions.isSARBullish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBullish &&
conditions.strConditions.isTrendBullish &&
conditions.cheConditions.isStrongBullish &&
conditions.hkConditions.isHKBullish &&
conditions.hkConditions.isSMHKBullish &&
conditions.mrbConditions.isFastOverSlow &&
conditions.hullConditions.isBullish &&
conditions.sslcConditions.isBullish &&
conditions.vlmConditions.isVolumeBullish
//
;
if (long18)
{
//
pusher++;
provider = ToString(PROVIDER_XPVF);
}
//
result =
//
@@ -1442,6 +1496,10 @@ struct X121SignalGenerator
//
long17
//
||
//
long18
//
)
//
;
@@ -1481,7 +1539,7 @@ struct X121SignalGenerator
);
//
// XMATD ...
// XMC ...
bool short1 =
//
// Starting Conditions ...
@@ -1506,7 +1564,7 @@ struct X121SignalGenerator
{
//
pusher++;
provider = ToString(PROVIDER_XMATD);
provider = ToString(PROVIDER_XMC);
}
//
@@ -1547,6 +1605,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.strConditions.isTrendBearish &&
conditions.cheConditions.isStrongBearish &&
conditions.tdConditions.isBearish &&
@@ -1574,6 +1633,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.cheConditions.isStrongBearish &&
@@ -1602,6 +1662,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1630,6 +1691,7 @@ struct X121SignalGenerator
//
// Verifications ...
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1660,6 +1722,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1690,6 +1753,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1720,6 +1784,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1749,6 +1814,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1778,6 +1844,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1806,6 +1873,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1834,6 +1902,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1862,6 +1931,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1890,6 +1960,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1918,6 +1989,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1947,6 +2019,7 @@ struct X121SignalGenerator
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
@@ -1965,6 +2038,36 @@ struct X121SignalGenerator
provider = ToString(PROVIDER_XVLM);
}
//
// XPVF ...
bool short18 =
//
// Starting Conditions ...
conditions.pvConditions.isFiboDecreased &&
//
// Verifications ...
conditions.tdConditions.isBearish &&
conditions.mcConditions.isBearish &&
conditions.mcConditions.isSARBearish &&
conditions.adxtdConditions.isStrong &&
conditions.adxtdConditions.isBearish &&
conditions.strConditions.isTrendBearish &&
conditions.cheConditions.isStrongBearish &&
conditions.hkConditions.isHKBearish &&
conditions.hkConditions.isSMHKBearish &&
conditions.mrbConditions.isFastUnderSlow &&
conditions.hullConditions.isBearish &&
conditions.sslcConditions.isBearish &&
conditions.vlmConditions.isVolumeBearish
//
;
if (short18)
{
//
pusher++;
provider = ToString(PROVIDER_XPVF);
}
//
result =
//
@@ -2039,6 +2142,10 @@ struct X121SignalGenerator
//
short17
//
||
//
short18
//
)
//
;
@@ -2248,7 +2355,7 @@ struct X121SignalGenerator
}
//
// XMATD ...
// XMC ...
bool isMATDPassed =
//
((conditions.mcConditions.isBullish ||
@@ -2504,7 +2611,7 @@ struct X121SignalGenerator
}
//
// XMATD ...
// XMC ...
bool isMATDPassed =
//
((conditions.mcConditions.isBearish ||
@@ -3512,7 +3619,7 @@ public:
mcHelper = new XSCXMCHelper();
result = mcHelper.Init(
inputs.symbol,
inputs.period,
inputs.period,
inputs.mcInputs //
);
if (!result)