
RSI dan MACD Cross Multi-Cycle Dynamic Trading Strategy adalah sistem perdagangan kuantitatif yang menggabungkan indeks yang agak lemah (RSI) dan indikator pergerakan rata-rata yang berpusat (MACD), yang direka untuk kitaran K 15 minit. Strategi ini memicu isyarat perdagangan dengan memantau keadaan pasaran yang lebih baik (RSI) dan pergerakan harga (MACD), apabila kedua-dua indikator memenuhi syarat tertentu pada masa yang sama. Secara khusus, apabila RSI adalah lebih rendah daripada 30 (RSI) dan MACD melintasi isyarat talian atas, sistem menghasilkan isyarat beli; apabila RSI adalah lebih tinggi daripada 70 (RSI) dan MACD melintasi isyarat talian bawah, sistem menghasilkan isyarat jual.
Di tengah-tengah strategi ini, isyarat dari dua penunjuk teknikal klasik digabungkan secara logik untuk meningkatkan kebolehpercayaan keputusan perdagangan:
Penggunaan RSI: Menggunakan RSI 14 kitaran lalai untuk mengenal pasti keadaan overbought dan oversold di pasaran. Pandangan tradisional menyatakan bahawa RSI di bawah 30 adalah oversold (mungkin melonjak), dan di atas 70 adalah overbought (mungkin jatuh).ta.rsi(close, rsiLength)Mengira nilai RSI
Penggunaan penunjuk MACD: Pengaturan parameter standard untuk faktor kelancaran garis isyarat 9 menggunakan kitaran garis pantas 12, kitaran garis perlahan 26 ≠ MACDta.macd(close, macdFast, macdSlow, macdSignal)Fungsi yang dikira, mendapat MACD line dan signal line. Sinyal transaksi yang penting berasal dari persilangan MACD line dan signal line, melaluita.crossoverdanta.crossunderTangkapan fungsi.
Logik isyarat gabungan:
Pengurusan wangStrategi: Menggunakan peratusan dana akaun untuk menguruskan kedudukandefault_qty_type=strategy.percent_of_equity, default_qty_value=100), 100% daripada jumlah dana yang dilaburkan untuk setiap transaksi.
Kawalan RisikoSetiap dagangan secara automatik menetapkan stop loss (±5%) dan stop loss (±2%), melaluistrategy.exitFungsi dilaksanakan.
Pengesahan sinkronGabungan RSI dan MACD memerlukan pengesahan dua kali ganda untuk menghantar isyarat perdagangan, yang berkesan mengurangkan kejadian pecah palsu dan isyarat palsu, meningkatkan kualiti perdagangan.
Mekanisme masuk dan keluar yang seimbang: masuk berdasarkan penilaian objektif indikator teknikal, keluar berdasarkan tahap penyekatan dan penghentian yang telah ditetapkan, membentuk gelung perdagangan yang lengkap, mengurangkan gangguan faktor subjektif.
Rasio risiko dan ganjaran yang baikPeringkat hentian ((5%) adalah 2.5 kali ganda daripada kadar hentian ((2%), sesuai dengan prinsip pengurusan risiko perdagangan profesional, keuntungan jangka panjang dapat dicapai asalkan peluang kemenangan melebihi 30%
Menyesuaikan diri dengan pasaranKitaran 15 minit sesuai untuk peniaga dalam hari, menangkap turun naik jangka pendek dan tidak terlalu banyak perdagangan, mengimbangi frekuensi perdagangan dan kualiti isyarat.
Maklum balas visualStrategi: Memaparkan garis indikator RSI dan garis batas overbought dan oversold, memberikan rujukan visual yang intuitif kepada peniaga, memudahkan pemantauan keadaan pasaran dalam masa nyata.
Risiko pasaran yang tidak menentuDalam pasaran yang bergolak, RSI mungkin sering berada di kawasan overbought dan oversold, dan MACD juga mungkin menghasilkan beberapa kali persilangan, yang menyebabkan perdagangan berlebihan dan kerugian berturut-turut. Penyelesaian adalah dengan menambah penapis trend tambahan, seperti purata bergerak atau penunjuk ADX.
Kepekaan ParameterPrestasi strategi sensitif terhadap parameter RSI dan MACD, parameter lalai tradisional yang digunakan pada masa ini mungkin tidak sesuai untuk semua keadaan pasaran.
Had Stop Loss TetapPenggunaan stop loss dengan peratusan tetap mungkin tidak dapat menyesuaikan diri dengan ciri-ciri turun naik pasaran yang berbeza. Pasaran yang bergelombang tinggi mungkin menyebabkan stop loss terlalu kerap, dan pasaran yang bergelombang rendah mungkin sukar untuk mencapai sasaran stop loss.
Kekurangan kawalan masa perdaganganStrategi semasa tidak menetapkan penapis masa dagangan, yang mungkin memberi isyarat yang tidak baik pada masa kecairan atau turun naik yang luar biasa.
Perkhidmatan tanpa bayaran balikTimbulnya isyarat bebas dalam strategi, kekurangan mekanisme perdagangan anti-tangan yang berkesan, boleh menyebabkan kerugian besar dalam memegang kedudukan terbalik dalam pasaran yang kuat.
atrValue = ta.atr(14)
dynamicRsiOversold = 30 - (atrValue / close * 100)
dynamicRsiOverbought = 70 + (atrValue / close * 100)
adxValue = ta.adx(14)
adxFilter = adxValue > 25
longCondition = (rsi < rsiOversold) and macdCrossUp and adxFilter
positionSize = 100 / (ta.atr(14) / close * 100)
timeFilter = (time >= timestamp("00:30:00")) and (time <= timestamp("23:00:00"))
atrValue = ta.atr(14)
dynamicStopLoss = atrValue * 1.5
Strategi perdagangan dinamik pelbagai kitaran RSI dan MACD adalah sistem perdagangan kuantitatif yang jelas, jelas, dan logik yang menyediakan isyarat perdagangan yang agak dipercayai dengan mengintegrasikan kelebihan indikator overbought dan oversold (RSI) dan indikator trend dinamik (MACD). Strategi ini sangat sesuai untuk perdagangan jangka pendek 15 minit, dan kelebihan utamanya adalah mekanisme pengesahan dua indikator dan peraturan pengurusan risiko modal yang jelas.
Walaupun reka bentuk strategi adalah munasabah, masih ada cabaran sensitiviti parameter dan kesesuaian pasaran. Langkah-langkah pengoptimuman seperti penyesuaian parameter dinamik, penapis trend, pengendalian dana yang dioptimumkan, penapis masa, dan peningkatan mekanisme stop-loss dapat meningkatkan ketangguhan dan kesesuaian strategi.
Mana-mana strategi kuantitatif memerlukan pengesahan sejarah yang komprehensif dan pengesahan ke hadapan, serta penyesuaian peribadi dengan keadaan pasaran tertentu dan keutamaan risiko peniaga. Strategi ini menyediakan kerangka perdagangan kuantitatif yang baik, yang boleh dikembangkan dan dioptimumkan oleh peniaga untuk membina sistem perdagangan yang lebih baik.
/*backtest
start: 2025-03-07 00:00:00
end: 2025-04-06 00:00:00
period: 15m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ErayPala
//@version=6
strategy("RSI + MACD Strategy (15min)", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === INPUTS ===
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
macdFast = input.int(12, title="MACD Fast Length")
macdSlow = input.int(26, title="MACD Slow Length")
macdSignal = input.int(9, title="MACD Signal Smoothing")
takeProfitPerc = input.float(5.0, title="Take Profit (%)") / 100
stopLossPerc = input.float(2.0, title="Stop Loss (%)") / 100
// === INDICATORS ===
rsi = ta.rsi(close, rsiLength)
[macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignal)
macdCrossUp = ta.crossover(macdLine, signalLine)
macdCrossDown = ta.crossunder(macdLine, signalLine)
// === ENTRY CONDITIONS ===
longCondition = (rsi < rsiOversold) and macdCrossUp
shortCondition = (rsi > rsiOverbought) and macdCrossDown
// === STRATEGY ENTRIES ===
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("TP/SL Long", from_entry="Long", limit=close * (1 + takeProfitPerc), stop=close * (1 - stopLossPerc))
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("TP/SL Short", from_entry="Short", limit=close * (1 - takeProfitPerc), stop=close * (1 + stopLossPerc))
// === PLOT INDICATORS FOR VISUAL FEEDBACK ===
plot(rsi, title="RSI", color=color.orange)
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)
hline(50, "Middle Line", color=color.gray)