
Strategi ini menggabungkan dua indikator teknis, yaitu indeks relatif kuat (RSI) dan indeks moving average (EMA), untuk mewujudkan strategi perdagangan kuantitatif yang didasarkan pada pelacakan tren. Strategi ini terutama berlaku untuk pasar yang sedang tren, dengan mengidentifikasi saat-saat ketika harga mungkin berbalik, dan mengikuti tren untuk mendapatkan keuntungan.
Perhatikan sinyal masuk:
Kami melakukan multiple admission ketika kedua kondisi tersebut terpenuhi.
Untuk setiap transaksi, kami membatasi kerugian maksimum yang mungkin terjadi sebesar 3% dari nilai bersih akun. Penetapan lokasi titik Stop Loss secara spesifik memerlukan kombinasi dari karakteristik pasar.
Skala kepemilikan pada saat masuk: kerugian maksimum / (harga masuk - harga Stop Loss) = Skala kepemilikan
Hal ini dapat secara efektif mengontrol risiko transaksi.
Tanda-tanda posisi terdepan adalah:
Kami akan pergi dengan tenang jika kami memenuhi persyaratan di atas.
Strategi ini menggabungkan keuntungan dari trend tracking dan reversal trading. Dengan EMA menentukan arah tren besar, kemudian masuk ke pasar saat berbalik di zona oversold, Anda dapat mengikuti tren dan memiliki kesempatan untuk berbalik, meningkatkan stabilitas strategi. Selain itu, parameter indikator RSI dapat disesuaikan, dapat dioptimalkan untuk pasar yang berbeda, dan sangat adaptif.
Pengendalian risiko, membatasi kerugian maksimum per transaksi, dapat secara efektif mengendalikan risiko transaksi tunggal, melindungi dana akun.
Strategi ini terutama cocok untuk pasar yang cenderung lebih jelas, jika menghadapi pasar yang kompleks dan berubah-ubah, penggunaan EMA untuk menilai efek tren mungkin akan diskon. Selain itu, indikator RSI memiliki keterlambatan tertentu, perlu untuk dianalisis dalam kombinasi dengan pergerakan harga aktual.
Pengaturan stop loss sangat penting untuk strategi keuntungan dan kerugian, dan perlu diatur berdasarkan tes hati-hati dari berbagai pasar. Jika stop loss terlalu besar, kerugian tunggal dapat berkembang; Jika stop loss terlalu kecil, mungkin terhalang oleh kebisingan pasar. Hal ini memerlukan pengamatan langsung untuk terus dioptimalkan.
Anda dapat mencoba untuk mengoptimalkan parameter RSI, menyesuaikan dengan lebih banyak lingkungan pasar. Anda dapat menguji rasio ukuran kepemilikan yang berbeda untuk menemukan pengaturan yang optimal. Anda dapat menguji untuk menambahkan indikator teknis lainnya, membangun sistem masuk dan keluar yang lebih kuat.
Strategi ini mengintegrasikan keuntungan dari pelacakan tren dan perdagangan reversal, masuk ke pasar di titik-titik yang mungkin berbalik saat menilai tren besar. Menggunakan parameter indikator seperti RSI, pengoptimalan dapat disesuaikan dengan lebih banyak lingkungan pasar. Setiap perdagangan dapat dikontrol risiko, cocok untuk operasi stabil jangka menengah dan panjang.
/*backtest
start: 2023-10-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Stratégie RSI et EMA avec Gestion du Risque", overlay=true)
// Paramètres de la stratégie
rsiLength = input(14, "Longueur du RSI")
rsiOverbought = input(70, "Niveau de Surachat RSI")
rsiOversold = input(30, "Niveau de Survente RSI")
// Calcul du RSI
rsiValue = rsi(close, rsiLength)
// Paramètres des EMA
ema20 = ema(close, 20)
ema50 = ema(close, 50)
ema200 = ema(close, 200)
// Paramètre du risque par trade
riskPerTrade = input(0.03, "Risque par Trade (3%)")
// Distance du stop-loss en pips (à ajuster selon votre stratégie)
stopLossPips = input(1, "Distance du Stop-Loss en pips")
// Calcul de la taille de position et du stop-loss
calculatePositionSize(entryPrice, stopLossPips) =>
stopLossPrice = entryPrice - stopLossPips * syminfo.mintick
riskPerTradeValue = strategy.equity * riskPerTrade
positionSize = riskPerTradeValue / (entryPrice - stopLossPrice)
positionSize
// Conditions d'entrée
longCondition = (rsiValue < rsiOversold) and (close > ema20 or close > ema50 or close > ema200)
if longCondition
strategy.entry("Long", strategy.long, qty=1)
// Conditions de sortie
exitCondition = (rsiValue > rsiOverbought) or (close < ema20 or close < ema50 or close < ema200)
if exitCondition
strategy.close("Long")
// Affichage des EMA et RSI sur le graphique
plot(ema20, color=color.red)
plot(ema50, color=color.green)
plot(ema200, color=color.blue)
hline(rsiOverbought, "Niveau de Surachat RSI", color=color.red)
hline(rsiOversold, "Niveau de Survente RSI", color=color.blue)
plot(rsiValue, "RSI", color=color.purple)