Strategi ini menggunakan penunjuk MACD untuk menentukan trend penunjuk RSI, menjana isyarat perdagangan.
Strategi ini berdasarkan dua penunjuk utama:
RSI Mengira RSI 14 tempoh biasa.
MACD RSI Mengira nilai MACD pada RSI, dengan MA pantas lalai 12, MA perlahan 26, garis isyarat 9.
Apabila MACD RSI melintasi ke atas, MAS yang cepat dan perlahan melintasi emas, ia menentukan trend menaik dan pergi panjang.
Apabila MACD melintasi ke bawah, MA yang cepat dan perlahan melintasi mati, ia menentukan trend menurun dan pergi pendek.
Purata bergerak eksponensial MACD membantu menentukan trend jangka panjang RSI itu sendiri, menghasilkan isyarat yang lebih tepat.
Risiko boleh dikurangkan dengan:
Strategi ini boleh ditingkatkan dari:
Ujian gabungan parameter RSI dan MACD
Menambah pengesahan sekunder apabila isyarat MACD
contohnya corak candlestick, jumlah, Bollinger Bands dan lain-lain
Mengoptimumkan hentian ke hentian penghantar
Menambah peraturan kemasukan semula
Menetapkan semula kedudukan selepas berhenti jika trend berterusan
Penyesuaian saiz kedudukan mengikut turun naik
Saiz yang lebih kecil semasa turun naik tinggi, saiz yang lebih besar dalam turun naik rendah
Strategi ini menggabungkan penunjuk RSI dan MACD untuk mengesahkan antara satu sama lain untuk pengesanan trend yang lebih tepat dan stabil. Tetapi parameter memerlukan pengoptimuman, dan penapis teknikal atau peraturan perdagangan tambahan diperlukan untuk pengesahan, mengelakkan peristiwa tiba-tiba. Juga mekanisme stop loss dan saiz kedudukan dinamik adalah penting. Pembelajaran dan pengoptimuman berterusan adalah penting untuk menyesuaikan diri dengan keadaan pasaran yang berubah untuk keuntungan yang stabil.
/*backtest start: 2022-09-14 00:00:00 end: 2023-09-20 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title = "MACD of RSI", overlay = false) //////////////////////// RSI /////////////////////////// src = close, len = input(14, minval=1, title="Length") up = sma(max(change(src), 0), len) down = sma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) //////////////////////// RSI ////////////////////////// //////////////// MACD //////////////////////////// sourcemacd = rsi fastLength = input(12, minval=1), slowLength=input(26,minval=1) signalLength=input(9,minval=1) fastMA = ema(sourcemacd, fastLength) slowMA = ema(sourcemacd, slowLength) macd = fastMA - slowMA signal = ema(macd, signalLength) delta=macd-signal swap1 = delta>0?green:red plot(delta,color=swap1,style=columns,title='Histo',histbase=0,transp=20) p1 = plot(macd,color=blue,title='MACD Line') p2 = plot(signal,color=red,title='Signal') fill(p1, p2, color=blue) hline(0) /////////////////////////MACD ////////////////////////// // Conditions longCond = na sellCond = na longCond := crossover(delta,0) sellCond := crossunder(delta,0) monthfrom =input(6) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( longCond ) strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY") else strategy.cancel(id="BUY") if ( sellCond ) strategy.close("BUY")