Files
xMQL5/MQLTestWorkspace/BKPS/Templates/old.short.signals.mq5
T

131 lines
4.1 KiB
Plaintext

//
// When Price going Down of Fibo 3 Level from Up ...
// Chandelier Exit Must Verify Short trade by providing Short Exit 1 and 2 ...
bool signal1 =
//
c1.close < mConditions.xpvInfo.fl3 &&
//
mConditions.xcheInfo.shortExit1 > c1.open &&
mConditions.xcheInfo.shortExit1 != EMPTY_VALUE &&
//
mConditions.xcheInfo.shortExit2 > c1.open &&
mConditions.xcheInfo.shortExit2 != EMPTY_VALUE &&
//
!(mConditions.xtrndInfo.isTrendBullish ||
mConditions.xtrndInfo.isL1TrendBullish ||
mConditions.xtrndInfo.isL2TrendBullish ||
mConditions.xtrndInfo.isL3TrendBullish)
//
;
X121MarketConditions m0Conditions = GetMarketConditions(0);
//
bool signal1 =
//
mConditions.xtrndInfo.l1hh == mConditions.xtrndInfo.l2hh &&
mConditions.xtrndInfo.l1hh == mConditions.xtrndInfo.l3hh &&
mConditions.xtrndInfo.l1hh == mConditions.xpvInfo.peak &&
//
c0AppliedPrice == mConditions.xtrndInfo.l1hh
// &&
//
// mConditions.xmrbInfo.isFastUnderSlow
//
;
//
if (signal1)
{
//
Add(
ToString(XPVF),
mConditions.signal.providers);
//
mConditions.signal.r2r = 1.5;
mConditions.signal.riskAmount = 0.0001;
mConditions.signal.mode = X_ORDER_MODE_STOP;
mConditions.signal.entry = mConditions.xpvInfo.fl1;
mConditions.signal.sl = mConditions.xtrndInfo.l1hh;
mConditions.signal.tp = mConditions.xpvInfo.fl3;
}
//
double minVerifier = MathMin(m0Conditions.xhullInfo.up, m0Conditions.xhullInfo.down);
minVerifier = MathMin(minVerifier, m0Conditions.xmrbInfo.fast);
minVerifier = MathMin(minVerifier, m0Conditions.xmrbInfo.slow);
minVerifier = MathMin(minVerifier, m0Conditions.xsslcInfo.up);
minVerifier = MathMin(minVerifier, m0Conditions.xsslcInfo.down);
//
bool signal2 =
//
(mConditions.xsslcInfo.isBearish &&
mConditions.xmrbInfo.isFastUnderSlow &&
mConditions.xhullInfo.isUpBearish &&
mConditions.xhullInfo.isDownBearish)
//
&&
//
!(m0Conditions.xsslcInfo.isBearish &&
m0Conditions.xmrbInfo.isFastUnderSlow &&
m0Conditions.xhullInfo.isUpBearish &&
m0Conditions.xhullInfo.isDownBearish)
//
&&
//
(mConditions.xtrndInfo.isTrendBearish &&
(mConditions.xtrndInfo.isL1TrendBearish ||
mConditions.xtrndInfo.isL2TrendBearish))
//
&&
//
c1.high < minVerifier
//
;
//
if (signal2)
{
//
Add(
ToString(XCHNL),
mConditions.signal.providers);
//
mConditions.signal.r2r = 1.5;
mConditions.signal.riskAmount = 0.0001;
mConditions.signal.mode = X_ORDER_MODE_MARKET;
mConditions.signal.entry = entry;
mConditions.signal.sl = mConditions.xpvInfo.peak;
mConditions.signal.tp = mConditions.xpvInfo.vale;
}
//
bool signal3 =
//
mConditions.xtrndInfo.isL3TrendSwitchedToBearish
//
;
//
if (signal3)
{
//
Add(
ToString(XTRND),
mConditions.signal.providers);
//
mConditions.signal.r2r = 1.5;
mConditions.signal.riskAmount = 0.0001;
mConditions.signal.mode = X_ORDER_MODE_MARKET;
mConditions.signal.entry = entry;
mConditions.signal.sl = mConditions.xtrndInfo.l3hh;
mConditions.signal.tp = mConditions.xtrndInfo.l3ll;
}