Strategi ini beroperasi berdasarkan prinsip utama berikut:
Isyarat RSI: Menggunakan RSI 3 tempoh sebagai penunjuk momentum jangka pendek. RSI di atas 80 dianggap terlalu banyak dibeli, sementara di bawah 20 terlalu banyak dijual.
Pengesahan Trend EMA: Menggunakan EMA 20, 50, 100, dan 200 tempoh untuk mengesahkan trend jangka panjang. Trend menaik dikenal pasti apabila EMA ini diselaraskan dalam urutan 20 > 50 > 100 > 200; urutan terbalik menunjukkan trend menurun.
Isyarat kemasukan:
Isyarat keluar:
Pengesahan Ketahanan: Strategi ini memerlukan isyarat untuk kekal konsisten selama sekurang-kurangnya 3 tempoh untuk mengelakkan isyarat palsu.
Visualisasi: Menggunakan warna latar belakang untuk menandakan tempoh bullish dan bearish dan merangka semua garis EMA pada carta.
Analisis Berbilang Dimensi: Menggabungkan petunjuk momentum jangka pendek (RSI) dan trend jangka panjang (EMA) untuk perspektif pasaran yang lebih komprehensif.
Pengesahan Trend: Menggunakan pelbagai persilangan EMA untuk mengesahkan trend, mengurangkan risiko pecah palsu.
Tetapan Parameter Fleksibel: Membolehkan pengguna menyesuaikan panjang dan ambang RSI berdasarkan pilihan peribadi dan keadaan pasaran.
Bantuan Visual: Menyediakan visualisasi keadaan pasaran yang intuitif melalui warna latar belakang dan garis EMA untuk penilaian cepat.
Stop-Loss Dinamis: Menggunakan persimpangan EMA dan pembalikan RSI sebagai titik stop-loss, menyesuaikan diri dengan perubahan pasaran.
Keperluan Ketekunan Isyarat: Menyaring bunyi bising dengan memerlukan isyarat untuk bertahan selama beberapa tempoh, meningkatkan kebolehpercayaan.
Perdagangan dua arah: Mampu menangkap peluang di kedua-dua pasaran bullish dan bearish.
Lag: Kedua-dua EMA dan RSI adalah penunjuk yang tertinggal, berpotensi lambat bertindak balas dalam pasaran yang berbalik dengan cepat.
Prestasi yang lemah dalam pasaran yang berbeza-beza: Boleh menghasilkan isyarat palsu yang kerap di pasaran sampingan atau bergelombang.
Kepercayaan yang berlebihan pada Penunjuk Teknikal: Tidak mengambil kira faktor asas dan pengaruh pasaran yang lain.
Sensitiviti Parameter: Tetapan parameter RSI dan EMA yang berbeza boleh membawa kepada hasil yang sangat berbeza.
Potensi Overtrading: Boleh membawa kepada perdagangan berlebihan dan peningkatan kos transaksi dalam keadaan pasaran tertentu.
Batasan Sempadan Tetap: Sempadan RSI tetap boleh menjadi tidak berkesan kerana perubahan turun naik pasaran.
Kekurangan Pengurusan Risiko: Strategi tidak mempunyai tetapan sasaran stop-loss dan keuntungan yang jelas.
Parameter penyesuaian: Memperkenalkan mekanisme penyesuaian untuk menyesuaikan parameter RSI dan EMA secara dinamik berdasarkan turun naik pasaran.
Penapis Tambahan: Sertakan jumlah, turun naik, atau penunjuk tambahan lain untuk meningkatkan kualiti isyarat.
Mekanisme Keluar yang Lebih Baik: Merancang sasaran keuntungan yang lebih canggih dan strategi berhenti kerugian, seperti menggunakan Julat Benar Purata (ATR).
Analisis Jangka Masa Berbilang: Memvalidasi isyarat merentasi pelbagai jangka masa untuk meningkatkan ketepatan.
Integrasi Faktor Dasar: Sertakan peristiwa kalendar ekonomi atau berita untuk menapis perdagangan yang berpotensi berisiko tinggi.
Pengoptimuman Logik Pelaksanaan: Pertimbangkan untuk menggunakan pesanan had dan bukannya pesanan pasaran untuk harga kemasukan yang lebih baik.
Ujian balik dan pengoptimuman: Lakukan ujian balik data sejarah yang luas untuk mencari kombinasi parameter yang optimum.
Integrasi Pembelajaran Mesin: Menggunakan algoritma pembelajaran mesin untuk mengoptimumkan pemilihan parameter dan proses penjanaan isyarat.
/*backtest start: 2024-06-01 00:00:00 end: 2024-06-30 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // Bu Pine Script™ kodu, Mozilla Public License 2.0 koşullarına tabidir: https://mozilla.org/MPL/2.0/ // © akadal //@version=5 strategy("Trendy Strategy", overlay=true) // Ayarlanabilir parametreler rsiLength = input.int(3, title="RSI Length") longThreshold = input.int(80, title="Long RSI Threshold") shortThreshold = input.int(20, title="Short RSI Threshold") ema20 = ta.ema(close, 20) ema50 = ta.ema(close, 50) ema100 = ta.ema(close, 100) ema200 = ta.ema(close, 200) rsi = ta.rsi(close, rsiLength) // Long sinyal koşulu longSignal = rsi > longThreshold and ema20 > ema50 and ema50 > ema100 and ema100 > ema200 // Short sinyal koşulu shortSignal = rsi < shortThreshold and ema20 < ema50 and ema50 < ema100 and ema100 < ema200 // Longtayken stop sinyali: EMA 50'nin EMA 200'nin altına düşmesi veya RSI'nin 30'un altına düşmesi longStopSignal = ta.barssince(ema50 < ema200) <= 2 and rsi < 30 // Shorttayken stop sinyali: EMA 50'nin EMA 200'nin üstüne çıkması veya RSI'nin 70'in üstüne çıkması shortStopSignal = ta.barssince(ema50 > ema200) <= 2 and rsi > 70 // Sinyallerin art arda ne kadar süredir true olduğunu tutan değişkenler longConditionMet = ta.barssince(longSignal) <= 2 shortConditionMet = ta.barssince(shortSignal) <= 2 // Trend durumlarını izlemek için değişkenler var bool inLong = false var bool inShort = false if (longConditionMet and not inLong) inLong := true inShort := false strategy.entry("Long", strategy.long) else if (shortConditionMet and not inShort) inShort := true inLong := false strategy.entry("Short", strategy.short) else if (inLong and longStopSignal) inLong := false strategy.close("Long") else if (inShort and shortStopSignal) inShort := false strategy.close("Short") // Grafik üzerinde long ve short dönemlerini işaretleme bgcolor(inLong ? color.new(color.green, 80) : na) bgcolor(inShort ? color.new(color.red, 80) : na) // EMA'ları grafik üzerinde gösterme plot(ema20, title="EMA 20", color=color.blue) plot(ema50, title="EMA 50", color=color.orange) plot(ema100, title="EMA 100", color=color.purple) plot(ema200, title="EMA 200", color=color.red)