Hello,
I want to create a EA who trade off multiple Bollinger Band
I have 3 BB
The normal BB (50:2) (Average 50 -3*Standart Deviation)
The seconde BB (50:3)
And the last BB (50:4)
I have also 2 more filter : Stochastic (14,3,3) and RSI(8)
For an entry here are the rules
The low = inferior BB(50:3) & Stochastic (14,3,3) under 20 & RSI(8) under 30
the stop loss is inferior BB(50:4), who don’t move.
The exit rule is high = middle BB(50:2)
Can please someone help me with that code ?
I will share the results with all here
Thank you
There you go:
DEFPARAM CumulateOrders = false
//-------------------------------------------------------------------------
// Bollinger Bands 1
ONCE BBperiods1 = 50 //50 BB periods
ONCE BBdev1 = 2.0 //2.0 BB deviation
ONCE AvgType1 = 0 //0=sma, 1=ema, etc...
BBavg1 = average[BBperiods1,AvgType1](close) //BB mean (middle line)
BollUP1 = BBavg1 + ((std[BBperiods1](close)) * BBdev1)//BB Upper Band
BollDN1 = BBavg1 - ((std[BBperiods1](close)) * BBdev1)//BB Lower Band
//-------------------------------------------------------------------------
// Bollinger Bands 2
ONCE BBperiods2 = 50 //50 BB periods
ONCE BBdev2 = 3.0 //3.0 BB deviation
ONCE AvgType2 = 0 //0=sma, 1=ema, etc...
BBavg2 = average[BBperiods2,AvgType2](close) //BB mean (middle line)
BollUP2 = BBavg2 + ((std[BBperiods2](close)) * BBdev2)//BB Upper Band
BollDN2 = BBavg2 - ((std[BBperiods2](close)) * BBdev2)//BB Lower Band
//-------------------------------------------------------------------------
// Bollinger Bands 3
ONCE BBperiods3 = 50 //50 BB periods
ONCE BBdev3 = 4.0 //4.0 BB deviation
ONCE AvgType3 = 0 //0=sma, 1=ema, etc...
BBavg3 = average[BBperiods3,AvgType3](close) //BB mean (middle line)
BollUP3 = BBavg3 + ((std[BBperiods3](close)) * BBdev3)//BB Upper Band
BollDN3 = BBavg3 - ((std[BBperiods3](close)) * BBdev3)//BB Lower Band
//-------------------------------------------------------------------------
// Stochastic
MyStoch = Stochastic[14,3](close)
//-------------------------------------------------------------------------
//
// Rsi
MyRsi = Rsi[8](close)
//-------------------------------------------------------------------------
// Entry conditions
c1 = low < BollDN2
c2 = MyStoch < 20
c3 = MyRsi < 30
// Exit conditions
d1 = high <= BBavg1
//-------------------------------------------------------------------------
// enter a position
IF c1 AND c2 AND c3 AND Not LongOnMarket THEN
BUY 1 CONTRACT AT Market
SL = abs(close - BollDN3)
SET STOP LOSS SL
ENDIF
// update Stop Loss according to TRADEPRICE (instead of close) when known
IF LongOnMarket AND Not LongOnMarket[1] THEN
SL = abs(TradePrice - BollDN3[1])
SET STOP LOSS SL
ENDIF
// exit any open position
IF d1 AND LongOnMarket THEN
SELL AT Market
ENDIF
//
//graphonprice TradePrice
//graphonprice TradePrice - SL
Thank you very much Roberto.
I will test and publish the result here
Hello Roberto,
I test the EA, but every trade in only on 0 or 1 minutes.
The trade close right after entry.
Here a snapshot of a single position
The right order from this example is open at your entry, but the stop loss is on BB3 (yellow). And this entry, normally close after
I hope that the snapshot will help
Thank you