
Strategi ini adalah sistem perdagangan yang didasarkan pada trend line breakout, yang menggabungkan konsep moving average dan price breakout. Inti dari strategi ini adalah untuk menghasilkan sinyal perdagangan dengan memantau harga close out untuk melakukan breakout terhadap moving average, dan mengatur stop loss dan stop loss berdasarkan rasio 2: 1 dari titik terendah yang baru-baru ini. Strategi ini menggunakan moving average sederhana sebagai indikator tren, untuk menilai perubahan arah tren melalui persilangan harga dengan garis rata-rata.
Strategi ini menggunakan rata-rata bergerak sederhana (SMA) selama 20 periode sebagai indikator tren. Sistem akan menghasilkan beberapa sinyal ketika harga penutupan terobosan dari bawah garis rata-rata ke atas. Stop loss diatur pada titik terendah dari 7 garis K terakhir, sehingga dapat menghindari terlalu dekat dengan titik masuk.
Ini adalah strategi mengikuti tren yang terstruktur dan logis. Ini menghasilkan sinyal melalui penembusan rata-rata bergerak dan dilengkapi dengan mekanisme manajemen risiko yang masuk akal. Ini memiliki kepraktisan yang baik. Meskipun ada beberapa risiko yang melekat, strategi ini dapat ditingkatkan lebih lanjut dengan stabilitas dan keuntungan melalui arah optimasi yang disarankan.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-11 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Trend Breakout with SL and TP", overlay=true)
// Parametrlar
length = input(25, title="Length for SL Calculation")
trendLength = input(20, title="Trend Line Length")
// Trend chizig'ini hisoblash
trendLine = ta.sma(close, trendLength)
// Yopilish narxi trend chizig'ini yorib o'tganda signal
longSignal = close > trendLine and close[1] <= trendLine
// Oxirgi 7 shamning minimumini hisoblash
lowestLow = ta.lowest(low, 7)
// Stop Loss darajasini belgilash
longSL = lowestLow // SL oxirgi 7 shamning minimumiga teng
// Take Profit darajasini SL ga nisbatan 2 baravar ko'p qilib belgilash
longTP = longSL + (close - longSL) * 2 // TP 2:1 nisbatida
// Savdo bajarish
if longSignal
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit", "Long", limit=longTP)
strategy.exit("Stop Loss", "Long", stop=longSL)
// Grafikda trend chizig'ini chizish
plot(trendLine, title="Trend Line", color=color.blue, linewidth=2)
// Signal chizish
plotshape(longSignal, style=shape.labelup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
// SL va TP darajalarini ko'rsatish
// if longSignal
// // SL chizig'i
// line.new(bar_index, longSL, bar_index + 1, longSL, color=color.red, width=2, style=line.style_dashed)
// // TP chizig'i
// line.new(bar_index, longTP, bar_index + 1, longTP, color=color.green, width=2, style=line.style_dashed)
// // SL va TP label'larini ko'rsatish
// label.new(bar_index, longSL, "SL: " + str.tostring(longSL), color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)
// label.new(bar_index, longTP, "TP: " + str.tostring(longTP), color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small)