This commit is contained in:
2024-07-27 17:38:32 +03:30
parent 37b9578ba1
commit 2a85f97ad3
3 changed files with 377 additions and 92 deletions
+158 -65
View File
@@ -571,31 +571,56 @@ public:
double chhkMaxBullishLow = chhkHelper.GetMaxBullishLow(cIndex);
double chhkMinBullishLow = chhkHelper.GetMinBullishLow(cIndex);
//
double chmBullishPower = chmHelper.GetBullishPower(cIndex);
double chmBearishPower = chmHelper.GetBearishPower(cIndex);
//
double chmMaxBullishFast = chmHelper.GetMaxBullishFast(cIndex);
double chmMinBullishFast = chmHelper.GetMinBullishFast(cIndex);
double chmMaxBullishSlow = chmHelper.GetMaxBullishSlow(cIndex);
double chmMinBullishSlow = chmHelper.GetMinBullishSlow(cIndex);
double chmMaxBearishFast = chmHelper.GetMaxBearishFast(cIndex);
double chmMinBearishFast = chmHelper.GetMinBearishFast(cIndex);
double chmMaxBearishSlow = chmHelper.GetMaxBearishSlow(cIndex);
double chmMinBearishSlow = chmHelper.GetMinBearishSlow(cIndex);
//
double chstrBullishPower = chstrHelper.GetBullishPower(cIndex);
double chstrBearishPower = chstrHelper.GetBearishPower(cIndex);
//
double chstrMinBullish = chstrHelper.GetMinBullish(cIndex);
double chstrMaxBullish = chstrHelper.GetMaxBullish(cIndex);
double chstrMinBearish = chstrHelper.GetMinBearish(cIndex);
double chstrMaxBearish = chstrHelper.GetMaxBearish(cIndex);
//
// XCHHK ...
int pushers = 0;
//
if (chhkConditions.isBullishPowerUp)
{
//
hasLong =
bool chhkHasLong =
//
hasBullishPower &&
cBar.IsBullish() &&
// hasBullishPattern &&
hasBullishPattern &&
hasBullishPressure &&
cheConditions.isStrongBullish &&
cBar.low > chhkMinBullishHigh &&
chhkConditions.isBullishPowerUp // &&
// chhkConditions.isBullishPowerIncreasing &&
// chhkConditions.isBearishPowerDecreasing
chhkConditions.isBullishPowerUp
//
;
//
hasLong = chhkHasLong;
if (hasLong)
{
//
pushers++;
sl = chhkMaxBullishLow;
type = POSITION_TYPE_BUY;
}
@@ -605,24 +630,24 @@ public:
if (chhkConditions.isBearishPowerUp)
{
//
hasShort =
bool chhkHasShort =
//
hasBearishPower &&
cBar.IsBearish() &&
// hasBearishPattern &&
hasBearishPattern &&
hasBearishPressure &&
cheConditions.isStrongBearish &&
cBar.high < chhkMaxBearishLow &&
chhkConditions.isBearishPowerUp // &&
// chhkConditions.isBearishPowerIncreasing &&
// chhkConditions.isBullishPowerDecreasing
chhkConditions.isBearishPowerUp
//
;
//
hasShort = chhkHasShort;
if (hasShort)
{
//
pushers++;
sl = chhkMinBearishHigh;
type = POSITION_TYPE_SELL;
}
@@ -632,56 +657,116 @@ public:
// XCHM ...
//
// if (chmConditions.isBullishPowerUp)
// {
// //
// hasLong =
// //
// false &&
// hasBullishPower &&
// cBar.IsBullish() &&
// hasBullishPattern &&
// cheConditions.isStrongBullish &&
// chmConditions.isBullishPowerUp
// //
// ;
if (chmConditions.isBullishPowerUp)
{
//
bool chmHasLong =
//
hasBullishPower &&
cBar.IsBullish() &&
hasBullishPattern &&
hasBullishPressure &&
cBar.low > chmMinBullishFast &&
cheConditions.isStrongBullish &&
chmConditions.isBullishPowerUp
//
;
// //
// if (hasLong)
// {
// //
// sl = 0;
// type = POSITION_TYPE_BUY;
// }
// }
//
hasLong = chmHasLong;
if (hasLong)
{
//
pushers++;
sl = chmMaxBullishFast;
type = POSITION_TYPE_BUY;
}
}
// //
// if (chmConditions.isBearishPowerUp)
// {
// //
// hasShort =
// //
// false &&
// hasBearishPower &&
// cBar.IsBearish() &&
// hasBearishPattern &&
// cheConditions.isStrongBearish &&
// chmConditions.isBearishPowerUp
// //
// ;
//
if (chmConditions.isBearishPowerUp)
{
//
bool chmHasShort =
//
hasBearishPower &&
cBar.IsBearish() &&
hasBearishPattern &&
hasBearishPressure &&
cBar.high < chmMaxBearishFast &&
cheConditions.isStrongBearish &&
chmConditions.isBearishPowerUp
//
;
// //
// if (hasShort)
// {
// //
// sl = 0;
// type = POSITION_TYPE_SELL;
// }
// }
//
hasShort = chmHasShort;
if (hasShort)
{
//
pushers++;
sl = chmMinBearishFast;
type = POSITION_TYPE_SELL;
}
}
//
// XCHSTR ...
//
if (chstrConditions.isBullishPowerUp)
{
//
bool chstrHasLong =
//
hasBullishPower &&
cBar.IsBullish() &&
hasBullishPattern &&
hasBullishPressure &&
cBar.low > chstrMinBullish &&
cheConditions.isStrongBullish &&
chstrConditions.isBullishPowerUp
//
;
//
hasLong = chstrHasLong;
if (hasLong)
{
//
pushers++;
sl = chstrMinBullish;
type = POSITION_TYPE_BUY;
}
}
//
if (chstrConditions.isBearishPowerUp)
{
//
bool chstrHasShort =
//
hasBearishPower &&
cBar.IsBearish() &&
hasBearishPattern &&
hasBearishPressure &&
cBar.high < chstrMaxBearish &&
cheConditions.isStrongBearish &&
chstrConditions.isBearishPowerUp
//
;
//
hasShort = chstrHasShort;
if (hasShort)
{
//
pushers++;
sl = chstrMaxBearish;
type = POSITION_TYPE_SELL;
}
}
//
result = hasLong || hasShort;
if (!result)
@@ -795,6 +880,12 @@ public:
tp //
);
//
if (pushers > 1)
{
Print("Pusher: ", pushers);
}
//
return result;
}
@@ -911,9 +1002,9 @@ private:
pvInputs.showLevels = false;
pvInputs.showConsolidations = false;
pvInputs.showFibo1Levels = false;
pvInputs.showFibo2Levels = true;
pvInputs.showFibo3Levels = true;
pvInputs.showFibo4Levels = true;
pvInputs.showFibo2Levels = false;
pvInputs.showFibo3Levels = false;
pvInputs.showFibo4Levels = false;
pvInputs.showFibo5Levels = false;
//
@@ -931,10 +1022,10 @@ private:
cheInputs.Default();
//
cheInputs.showLongExit1Line = true;
cheInputs.showShortExit1Line = true;
cheInputs.showLongExit2Line = true;
cheInputs.showShortExit2Line = true;
cheInputs.showLongExit1Line = false;
cheInputs.showShortExit1Line = false;
cheInputs.showLongExit2Line = false;
cheInputs.showShortExit2Line = false;
//
cheHelper = new XSCXCHEHelper();
@@ -1000,11 +1091,13 @@ private:
//
chhkInputs.ignoreShadows = true;
chhkInputs.showCurrent = true;
chhkInputs.showShort = true;
chhkInputs.showMedium = true;
chhkInputs.showLong = true;
chhkInputs.showHind = true;
//
chhkInputs.showCurrent = false;
chhkInputs.showShort = false;
chhkInputs.showMedium = false;
chhkInputs.showLong = false;
chhkInputs.showHind = false;
//
chhkHelper = new XSCXCHHKHelper();