This strategy is based on an indicator in TradingView. Its called QQE signals by colinmck. I find it pretty profitable after modified to my trading style.
Strategy Description: Buy order placed according to Quantitative Qualitative Estimation (QQE)
Potential ROI Monthly (in sideway/bullish): 2.5%
Recommended Settings:
Pair: BTCUSDT , ETHUSDT
Time frame: 1mins
Initial Capital: 100
Base Currency: Default
Order Size: 20% of equity
Pyramiding: 5 orders
Commission: 0.1 %
Take Profit: 1%
Stop Loss: nil
//@version=4
strategy("QQE Strategy [CapAyam.com]", overlay=true)
RSI_Period = input(14, title='RSI Length')
SF = input(5, title='RSI Smoothing')
QQE = input(4.238, title='Fast QQE Factor')
ThreshHold = input(10, title="Threshold")
src = close
Wilders_Period = RSI_Period * 2 - 1
Rsi = rsi(src, RSI_Period)
RsiMa = ema(Rsi, SF)
AtrRsi = abs(RsiMa[1] - RsiMa)
MaAtrRsi = ema(AtrRsi, Wilders_Period)
dar = ema(MaAtrRsi, Wilders_Period) * QQE
longband = 0.0
shortband = 0.0
trend = 0
DeltaFastAtrRsi = dar
RSIndex = RsiMa
newshortband = RSIndex + DeltaFastAtrRsi
newlongband = RSIndex - DeltaFastAtrRsi
longband := RSIndex[1] > longband[1] and RSIndex > longband[1] ? max(longband[1], newlongband) : newlongband
shortband := RSIndex[1] < shortband[1] and RSIndex < shortband[1] ? min(shortband[1], newshortband) : newshortband
cross_1 = cross(longband[1], RSIndex)
trend := cross(RSIndex, shortband[1]) ? 1 : cross_1 ? -1 : nz(trend[1], 1)
FastAtrRsiTL = trend == 1 ? longband : shortband
// Find all the QQE Crosses
QQExlong = 0
QQExlong := nz(QQExlong[1])
QQExlong := FastAtrRsiTL < RSIndex ? QQExlong + 1 : 0
//Conditions
qqeLong = QQExlong == 1 ? FastAtrRsiTL[1] - 50 : na
// Strategy Entry and Exit
stop_loss_pct = input(50, title="Stop Loss (%)", minval=0, maxval=100)
take_profit_pct = input(1, title="Take Profit (%)", minval=0, maxval=100)
strategy.entry("Buy", strategy.long, when = qqeLong)
strategy.exit("Sell", "Buy", stop = strategy.position_avg_price * (1 - stop_loss_pct/100), limit = strategy.position_avg_price * (1 + take_profit_pct/100))
// Plotting
plotshape(qqeLong, title="QQE long", text="Long", textcolor=color.white, style=shape.labelup, location=location.belowbar, color=color.green, transp=0, size=size.tiny)
// Alerts
alertcondition(qqeLong, title="Long", message="Long")
Comments
Post a Comment