
Strategi ini berdasarkan pada RSI dan MACD untuk membuat keputusan mengenai isyarat perdagangan yang digabungkan dengan resistance support. Strategi ini dikenali sebagai strategi “Panda Panda Yang Menghisap Lidah”. Strategi ini menggunakan RSI untuk menilai overbought dan oversold, MACD untuk menilai trend kosong, dan menggabungkan harga tertinggi dan terendah dalam 100 kitaran untuk memetakan resistance support, menghasilkan isyarat beli di dekat support, menghasilkan isyarat jual di dekat resistance, dan merupakan strategi jenis trend yang biasa.
Strategi ini berdasarkan kepada dua indikator RSI dan MACD, RSI menilai keadaan overbought dan oversold, MACD menilai keadaan trend kosong. Pertama, nilai RSI 14 kitaran dikira, dan garis overbought ditetapkan sebagai 70, dan garis oversold 30 . Kemudian, nilai MACD 12 hari garis cepat, 26 hari garis perlahan, dan 9 hari garis isyarat.
Di samping itu, strategi ini juga mengira harga tertinggi dan terendah dalam 100 kitaran sebagai tahap rintangan sokongan. Untuk menghasilkan isyarat membeli, harga perlu mendekati tahap sokongan, iaitu harga penutupan akan dikeluarkan apabila harga berada di atas tahap sokongan 1%. Untuk menghasilkan isyarat menjual, harga penutupan perlu berada di bawah tahap rintangan 1%.
Strategi ini menggabungkan analisis trend dan penghakiman overbought dan oversold, mengelakkan isyarat palsu yang disebabkan oleh hanya bergantung pada satu indikator. Pada masa yang sama, pengenalan tahap rintangan sokongan sebagai gelombang hambatan dapat mengurangkan perdagangan yang salah yang disebabkan oleh bouncing di kedudukan rintangan sokongan yang biasa.
Strategi ini mempunyai beberapa risiko utama:
Dalam keadaan yang kuat, strategi mungkin kehilangan sebahagian besar keuntungan, kerana ia cenderung untuk bermain selepas berakhirnya kitaran pembalikan;
RSI dan MACD parameter yang tidak betul boleh menyebabkan kesilapan isyarat perdagangan;
Algoritma pengesanan rintangan sokongan yang mudah, mungkin menganggarkan atau menganggarkan nilai rintangan sokongan sebenar;
Kekurangan mekanisme halangan kerugian. Dalam keadaan yang melampau, tidak dapat mengawal kerugian dengan berkesan.
Untuk menghadapi risiko ini, ia boleh dioptimumkan dengan memperkenalkan MACD yang beradaptasi, mengoptimumkan parameter RSI, menjadikannya lebih dekat dengan ciri-ciri pelbagai jenis; memperbaiki algoritma penilaian sokongan dan rintangan, menambah penilaian pemodelan pasaran dan sebagainya.
Strategi ini boleh dioptimumkan dari segi berikut:
Memperkenalkan mekanisme penangguhan kerugian, seperti AMO yang digabungkan dengan penangguhan bergerak
Menggunakan penyesuaian MACD untuk mengoptimumkan parameter MACD secara langsung
Memperkenalkan penilaian piawaian pasaran untuk menentukan rintangan sokongan yang lebih sains
Menggabungkan lebih banyak data, membuat penilaian keadaan pasaran, keadaan yang berbeza menggunakan parameter yang berbeza
Menggunakan algoritma pembelajaran mesin untuk mengoptimumkan strategi di hujung ke hujung
Dengan penambahbaikan ini, penarikan balik akan dikurangkan lebih jauh dan kestabilan strategi akan meningkat.
Strategi ini menggunakan gabungan RSI dan MACD untuk menilai keadaan overbought dan oversold, melakukan perdagangan di sekitar sokongan dan rintangan, merupakan strategi pengesanan trend yang baik. Di samping itu, kombinasi penilaian sokongan dan rintangan mengurangkan risiko. Kelebihan strategi ini adalah bahawa isyarat strategi stabil, risiko boleh dikawal, sesuai untuk jangka masa panjang.
/*backtest
start: 2023-12-28 00:00:00
end: 2024-01-04 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("RSI + MACD with Support and Resistance", shorttitle="RSI_MACD_SR", overlay=true)
// Input for RSI and MACD values
rsiOverbought = input(70, title="RSI Overbought Threshold")
rsiOversold = input(30, title="RSI Oversold Threshold")
macdFastLength = input(12, title="MACD Fast Length")
macdSlowLength = input(26, title="MACD Slow Length")
macdSignalSmoothing = input(9, title="MACD Signal Smoothing")
// Calculating RSI and MACD
rsiValue = ta.rsi(close, 14)
[macdLine, signalLine, _] = ta.macd(close, macdFastLength, macdSlowLength, macdSignalSmoothing)
// Support and Resistance
support = ta.lowest(100)
resistance = ta.highest(100)
// Drawing support and resistance lines
// line.new(x1=bar_index[0], y1=support, x2=bar_index[-1], y2=support, color=color.green, width=1)
// line.new(x1=bar_index[0], y1=resistance, x2=bar_index[-1], y2=resistance, color=color.red, width=1)
// Buy Condition: If RSI is oversold and MACD line crosses above the signal line
// Additionally, check if price is near the support line
longCondition = ta.crossover(macdLine, signalLine) and rsiValue < rsiOversold and (close - support) < (close * 0.01)
strategy.entry("Long", strategy.long, when=longCondition, comment="Buy")
// Sell Condition: If RSI is overbought and MACD line crosses below the signal line
// Additionally, check if price is near the resistance line
shortCondition = ta.crossunder(macdLine, signalLine) and rsiValue > rsiOverbought and (resistance - close) < (close * 0.01)
strategy.entry("Short", strategy.short, when=shortCondition, comment="Sell")
// Plot values on the chart for visualization
plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Buy")
plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")