
Strategi ini menggabungkan dua petunjuk teknikal, indeks yang agak kuat ((RSI) dan indeks purata bergerak ((EMA), untuk mewujudkan strategi perdagangan kuantitatif berdasarkan trend. Strategi ini digunakan terutamanya untuk pasaran yang sedang tren, dengan mengesan peluang untuk masuk ke pasaran dan mengikuti trend.
Lihat isyarat masuk:
Apabila kedua-dua syarat di atas dipenuhi, kita akan membuat lebih banyak kemasukan.
Setiap dagangan, kami hadkan kerugian maksimum kepada 3% daripada nilai bersih akaun. Untuk menetapkan titik Stop Loss, anda perlu menggabungkan ciri-ciri pasaran.
Ukuran memegang jawatan di masa masuk: jumlah kerugian maksimum / (harga masuk - harga Stop Loss) = saiz memegang jawatan
Ini adalah cara yang berkesan untuk mengawal risiko dalam satu transaksi.
Sinyal-sinyal yang berlaku adalah:
Kami akan bertolak bila syarat-syarat di atas telah dipenuhi.
Strategi ini menggabungkan kelebihan trend tracking dan perdagangan pembalikan. Dengan menentukan arah trend besar melalui EMA, kemudian masuk pada masa pembalikan di kawasan oversold, anda boleh mengikuti trend dan berpeluang untuk membalik, meningkatkan kestabilan strategi. Pada masa yang sama, parameter RSI boleh disesuaikan, dapat dioptimumkan untuk pasaran yang berbeza, dan sangat beradaptasi.
Pengendalian risiko: Had kerugian maksimum untuk setiap transaksi, yang dapat mengawal risiko setiap transaksi dan melindungi dana akaun.
Strategi ini terutama sesuai untuk pasaran yang lebih jelas trend, jika menghadapi pasaran yang berubah-ubah yang kompleks, penggunaan EMA untuk menilai kesan trend mungkin akan diskaun. Selain itu, indikator RSI ada beberapa ketinggalan, perlu dianalisis dengan pergerakan sebenar harga.
Tetapan titik henti sangat penting untuk keuntungan dan kerugian strategi, dan perlu ditetapkan berdasarkan ujian berhati-hati di pasaran yang berbeza. Jika titik henti ditetapkan terlalu besar, kerugian tunggal mungkin berkembang; jika titik henti terlalu kecil, ia mungkin terhalang oleh bunyi pasaran. Ini memerlukan pemerhatian langsung untuk terus mengoptimumkan.
Anda boleh cuba mengoptimumkan parameter RSI untuk menyesuaikan diri dengan lebih banyak persekitaran pasaran. Anda boleh menguji pelbagai perkadaran saiz pegangan untuk mencari tetapan yang optimum. Anda boleh menguji penambahan petunjuk teknikal lain untuk membina sistem masuk dan keluar yang lebih mantap.
Strategi ini mengintegrasikan kelebihan trend-following dan perdagangan berbalik, memasuki pasaran pada titik-titik yang mungkin berbalik semasa menilai trend besar. Menggunakan parameter indikator seperti RSI, pengoptimuman dapat disesuaikan dengan lebih banyak keadaan pasaran. Setiap perdagangan berisiko terkawal, sesuai untuk operasi yang stabil dalam jangka masa sederhana 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)