Sumber daya yang dimuat... Pemuatan...

Tren momentum menyusul strategi perdagangan konfirmasi ganda MACD-RSI

Penulis:ChaoZhang, Tanggal: 2024-12-12 16:16:54
Tag:MACDRSITSMADual

img

Gambaran umum

Strategi ini adalah sistem perdagangan trend-mengikuti yang menggabungkan indikator teknis MACD dan RSI. Ini menangkap perubahan tren harga menggunakan MACD sambil memanfaatkan RSI untuk konfirmasi overbought / oversold, menerapkan pendekatan validasi sinyal ganda. Strategi ini menggunakan manajemen uang tetap untuk kontrol posisi dan mencakup mekanisme trailing stop untuk melindungi keuntungan.

Prinsip Strategi

Logika inti dari strategi ini didasarkan pada beberapa elemen kunci:

  1. Sistem sinyal MACD menggunakan periode yang lebih pendek (6,13,5), meningkatkan sensitivitas terhadap reaksi pasar.
  2. RSI berfungsi sebagai alat konfirmasi tambahan, dengan 30 ditetapkan sebagai ambang oversold. Sinyal beli hanya dipicu ketika nilai RSI lebih besar atau sama dengan 30, menghindari perdagangan yang sering di daerah oversold.
  3. Manajemen uang mengadopsi strategi jumlah tetap, berinvestasi 110 mata uang kutipan per perdagangan, dengan ukuran posisi dihitung secara dinamis berdasarkan harga saat ini.
  4. Mekanisme trailing stop diatur pada jarak pelacakan 2%, secara efektif mengunci keuntungan dan mengendalikan risiko penarikan.

Keuntungan Strategi

  1. Mekanisme konfirmasi indikator teknis ganda meningkatkan keandalan sinyal perdagangan dan mengurangi gangguan dari sinyal palsu.
  2. Menggunakan periode MACD yang lebih pendek meningkatkan kepekaan strategi dan kecepatan respons terhadap perubahan pasar.
  3. Perdagangan dengan jumlah tetap menyederhanakan pengelolaan uang, memfasilitasi pengendalian risiko dan pelacakan keuntungan.
  4. Mekanisme trailing stop secara otomatis menyesuaikan posisi stop loss, melindungi keuntungan sambil memungkinkan pergerakan harga yang cukup.
  5. Logika strategi jelas dan sederhana, mudah dimengerti dan dipelihara, sementara menawarkan skalabilitas yang baik.

Risiko Strategi

  1. Periode MACD yang pendek dapat menghasilkan sinyal perdagangan yang berlebihan di pasar yang berosilasi, meningkatkan biaya transaksi.
  2. Menetapkan ambang oversold RSI pada 30 mungkin kehilangan beberapa peluang penting untuk memulai tren.
  3. Perdagangan dengan jumlah tetap mungkin tidak sepenuhnya memanfaatkan dana akun, yang mempengaruhi hasil keseluruhan.
  4. Jarak stop 2% mungkin terlalu dekat di pasar yang sangat volatile, yang menyebabkan keluar prematur.
  5. Strategi ini hanya mendukung posisi panjang, tidak dapat memperoleh keuntungan dalam tren menurun.

Arah Optimasi Strategi

  1. Pertimbangkan untuk menyesuaikan parameter MACD secara dinamis berdasarkan siklus pasar yang berbeda untuk meningkatkan kemampuan beradaptasi.
  2. Memperkenalkan indikator volatilitas (seperti ATR) untuk menyesuaikan jarak stop trailing secara dinamis, meningkatkan efektivitas stop loss.
  3. Pertimbangkan untuk menambahkan mekanisme short selling untuk keuntungan di kedua arah pasar.
  4. Menggabungkan indikator volume pasar untuk meningkatkan keandalan konfirmasi sinyal.
  5. Saran untuk menerapkan manajemen posisi dinamis untuk menyesuaikan ukuran perdagangan secara otomatis berdasarkan ekuitas akun dan tingkat risiko pasar.

Ringkasan

Ini adalah strategi mengikuti tren berdasarkan indikator teknis klasik, mencapai generasi sinyal perdagangan yang dapat diandalkan melalui penggunaan gabungan MACD dan RSI. Desain keseluruhan strategi ini ringkas dan praktis, dengan nilai aplikasi dunia nyata yang baik. Melalui optimasi parameter yang wajar dan perluasan fungsional, strategi ini memiliki potensi untuk mencapai kinerja perdagangan yang stabil di berbagai lingkungan pasar.


/*backtest
start: 2024-11-11 00:00:00
end: 2024-12-11 00:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © cryptohitman09

//@version=6
strategy("MACD + RSI 交易系统 - 110 美金买入", overlay=true)

// MACD 設定
fastLength = input.int(6, title="MACD Fast Length")
slowLength = input.int(13, title="MACD Slow Length")
signalSmoothing = input.int(5, title="MACD Signal Smoothing")
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)

// RSI 設定
rsiLength = input.int(14, title="RSI Length")  // RSI 計算週期
rsiValue = ta.rsi(close, rsiLength)  // 計算 RSI 值
rsiThresholdHigh = input.int(70, title="RSI 超買閾值")  // RSI 超買閾值
rsiThresholdLow = input.int(30, title="RSI 超賣閾值")  // RSI 超賣閾值

// 做多信号条件:MACD 線突破信号線,且 RSI 不低於 30
buySignal = (macdLine > signalLine) and (rsiValue >= rsiThresholdLow) // 只有 RSI 大於或等於 30 時才觸發買入

// 计算每次交易的仓位(每次交易目标为 110 美金的买入金额)
tradeAmount = 20010  // 每次买入110 美金
orderSize = tradeAmount / close  // 根据当前价格计算仓位大小

// 移动止损(Trailing Stop)
enableTrailingStop = input.bool(true, title="启用移动止损")
trailingStopDistance = input.float(2, title="移动止损距离 (%)") / 89500  // 增加移动止损的距离
longTrailingStop = strategy.position_avg_price * (1 - trailingStopDistance)

// 交易逻辑:仅做多
if buySignal
    strategy.entry("买入", strategy.long, qty=orderSize)
    if enableTrailingStop
        strategy.exit("卖出", from_entry="买入", trail_price=longTrailingStop, trail_offset=trailingStopDistance * close)                                                                               

// 绘制 MACD 指标
plot(macdLine, color=color.blue, title="MACD Line")
plot(signalLine, color=color.red, title="Signal Line")

// 绘制 RSI 值
plot(rsiValue, color=color.orange, title="RSI Value")
hline(rsiThresholdHigh, "RSI 超买", color=color.red)
hline(rsiThresholdLow, "RSI 超卖", color=color.green)

// 绘制买入信号
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="买入信号", text="BUY")

// 如果触发买入信号,则发送警报
if buySignal
    alert('{"secret": "eyJhbGciOiJIUzI1NiJ9.eyJzaWduYWxzX3NvdXJjZV9pZCI6MTAwMDAyfQ.G1wLNjNyUPlTqYWsIqXSWnn_M4pRCKerBm7eTpyCiH8", "max_lag": "300", "timestamp": "{{timenow}}", "trigger_price": "{{close}}", "tv_exchange": "{{exchange}}", "tv_instrument": "{{ticker}}", "action": "{{strategy.order.action}}", "bot_uuid": "493b76f0-8a3c-4633-8b2b-90c02659dd4d", "strategy_info": {"market_position": "{{strategy.market_position}}", "market_position_size": "{{strategy.market_position_size}}", "prev_market_position": "{{strategy.prev_market_position}}", "prev_market_position_size": "{{strategy.prev_market_position_size}}"}, "order": {"amount": "{{strategy.order.contracts}}", "currency_type": "base"}}', alert.freq_once_per_bar_close)













Berkaitan

Lebih banyak