
Strategi ini menggunakan persilangan rata-rata bergerak cepat (EMA) dan rata-rata bergerak lambat (EMA), yang dikombinasikan dengan indeks yang relatif kuat (RSI) dan garis tren untuk menangkap peluang perdagangan yang sedang tren. Strategi ini menghasilkan sinyal ganda ketika EMA cepat melewati EMA lambat atau harga melewati garis tren naik, dan RSI berada di bawah level overbought. Sebaliknya, ketika EMA cepat melewati EMA lambat atau harga turun dan melewati garis tren, dan RSI berada di atas level oversold, strategi ini menghasilkan sinyal kosong.
Strategi ini dengan menggabungkan EMA, RSI dan trend line breakout, dapat lebih efektif menangkap peluang perdagangan yang sedang tren. Namun, ada juga risiko tertentu, seperti sinyal palsu, ketergantungan pada data historis, dll. Oleh karena itu, dalam aplikasi praktis, diperlukan pengoptimalan dan perbaikan yang sesuai sesuai dengan karakteristik pasar dan preferensi risiko pribadi, seperti memperkenalkan lebih banyak indikator, mengatur stop loss stop loss, parameter pengoptimalan, dll. Selain itu, dapat digabungkan dengan analisis fundamental untuk menangkap tren pasar secara lebih komprehensif, meningkatkan stabilitas dan profitabilitas strategi.
/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Gold Trading Strategy 15 min", overlay=true)
// Input parameters
fast_ma_length = input.int(10, title="Fast MA Length")
slow_ma_length = input.int(30, title="Slow MA Length")
rsi_length = input.int(14, title="RSI Length")
rsi_overbought = input.int(70, title="RSI Overbought Level")
rsi_oversold = input.int(30, title="RSI Oversold Level")
lookback = input.int(50, title="Trendline Lookback Period")
// Indicators
fast_ma = ta.sma(close, fast_ma_length)
slow_ma = ta.sma(close, slow_ma_length)
rsi = ta.rsi(close, rsi_length)
// Trendline breakout detection
highs = ta.highest(high, lookback)
lows = ta.lowest(low, lookback)
trendline_breakout_up = ta.crossover(close, highs)
trendline_breakout_down = ta.crossunder(close, lows)
// Entry conditions
udao_condition = (ta.crossover(fast_ma, slow_ma) or trendline_breakout_up) and rsi < rsi_overbought
girao_condition = (ta.crossunder(fast_ma, slow_ma) or trendline_breakout_down) and rsi > rsi_oversold
// Strategy execution
if (udao_condition)
strategy.entry("उदाओ", strategy.long)
if (girao_condition)
strategy.entry("गिराओ", strategy.short)
// Plotting
plot(fast_ma, color=color.blue, title="Fast MA")
plot(slow_ma, color=color.red, title="Slow MA")
hline(rsi_overbought, "RSI Overbought", color=color.red)
hline(rsi_oversold, "RSI Oversold", color=color.green)
plot(rsi, color=color.purple, title="RSI")
plotshape(series=udao_condition, location=location.belowbar, color=color.green, style=shape.labelup, title="उदाओ Signal")
plotshape(series=girao_condition, location=location.abovebar, color=color.red, style=shape.labeldown, title="गिराओ Signal")
// Plot trendline breakout levels
plot(highs, color=color.orange, linewidth=2, title="Resistance Trendline")
plot(lows, color=color.yellow, linewidth=2, title="Support Trendline")