Strategi ini menggabungkan purata bergerak, Indeks Kekuatan Relatif (RSI), Bollinger Bands dan penunjuk MACD untuk melaksanakan strategi pembalikan momentum yang dapat mengesan trend pasaran.
Strategi ini menggunakan dua purata bergerak - 50 tempoh untuk trend jangka pendek dan 200 tempoh untuk trend jangka panjang.
Indeks Kekuatan Relatif (RSI) mengenal pasti keadaan overbought / oversold. Di bawah 30 adalah oversold manakala di atas 70 adalah overbought. Strategi ini menggunakan 30/70 sebagai ambang.
Bollinger Bands menilai jika harga berada berhampiran jalur atas / bawah, menunjukkan turun naik yang berlebihan. Harga berhampiran jalur atas mungkin melihat pembalikan jangka pendek sementara jalur bawah mungkin melihat lompatan.
MACD menandakan perubahan momentum. Garis MACD yang melintasi di atas garis isyarat menunjukkan trend menaik manakala melintasi di bawah menunjukkan trend menurun.
Isyarat beli memerlukan MA 50 hari untuk melintasi di atas MA 200 hari, RSI di bawah tahap oversold 30, harga berhampiran Bollinger Band bawah dan crossover kenaikan MACD - menunjukkan pembalikan dari pasaran beruang ke kenaikan.
Isyarat jual adalah sebaliknya - trend bear, tahap overbought, mendekati band atas dan MACD death cross, mendorong kedudukan pendek.
Strategi ini menggabungkan pengesanan trend dan isyarat pembalikan, yang membolehkannya mengikuti trend dan menangkap pembalikan. Menggunakan beberapa penunjuk meningkatkan kebolehpercayaan dan mengelakkan isyarat palsu.
Berbanding dengan strategi trend murni, langkah overbought/oversold mengelakkan membeli tinggi atau menjual rendah.
Risiko utama adalah kelewatan masa isyarat di antara penunjuk, menyebabkan masa keluar yang tidak sesuai dan kerugian yang diperbesar. Isyarat pembalikan hanya menunjukkan kebarangkalian tanpa jaminan kejayaan atau kecukupan.
Parameter penyesuaian halus kepada penunjuk penyegerakan boleh mengurangkan masalah ini. Stop loss mengawal kerugian maksimum. Penilaian corak pasca pembalikan memastikan kesahihan juga.
Beberapa idea penambahbaikan:
Sesuaikan parameter untuk penyegerakan isyarat yang lebih baik
Menggabungkan logik stop loss untuk keluarkan kedudukan yang melintasi had kerugian
Menilai keberkesanan Bollinger Bands
Tambah model pembelajaran mesin yang dilatih pada data sejarah untuk menentukan masa kemasukan / keluar
Sertakan penunjuk sentimen untuk rujukan lebih lanjut
Strategi ini memanfaatkan pelbagai alat analisis teknikal untuk menentukan trend dan pembalikan pasaran. Menggabungkan trend berikut dan perdagangan pembalikan membolehkan menunggang pergerakan jangka panjang sambil menangkap perubahan jangka pendek. Dengan parameter dan risiko yang munasabah, ia menjanjikan keuntungan yang baik. Pengoptimuman lanjut berpotensi dapat meningkatkan prestasi langsung.
//@version=5 strategy("Forex and Crypto Trading Strategy", overlay=true) // Parameters short_ema_length = 50 long_ema_length = 200 rsi_length = 14 rsi_overbought = 70 rsi_oversold = 30 bb_length = 20 macd_fast_length = 12 macd_slow_length = 26 macd_signal_smoothing = 9 // Moving Averages short_ema = ta.ema(close, short_ema_length) long_ema = ta.ema(close, long_ema_length) plot(short_ema, color=color.blue, title="Short EMA") plot(long_ema, color=color.red, title="Long EMA") // RSI rsi = ta.rsi(close, rsi_length) // Bollinger Bands [bb_upper, bb_middle, bb_lower] = ta.bb(close, bb_length, 2) // MACD [macd_line, signal_line, _] = ta.macd(close, macd_fast_length, macd_slow_length, macd_signal_smoothing) // Buy and Sell Conditions buy_condition = short_ema > long_ema and rsi < rsi_oversold and close < bb_lower and macd_line > signal_line sell_condition = short_ema < long_ema and rsi > rsi_overbought and close > bb_upper and macd_line < signal_line // Plotting Buy and Sell Signals plotshape(series=buy_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sell_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Strategy Execution strategy.entry("Buy", strategy.long, when=buy_condition) strategy.close("Buy", when=sell_condition) strategy.entry("Sell", strategy.short, when=sell_condition) strategy.close("Sell", when=buy_condition)