Strategi ini adalah sistem pembalikan trend berdasarkan pelbagai penunjuk teknikal, menggabungkan kelebihan trend berikut dan pengesanan pembalikan melalui penggunaan yang diselaraskan dari penunjuk EMA, MACD, dan RSI. Strategi ini menggunakan 20 dan 50 tempoh Exponential Moving Averages (EMA) untuk menentukan arah trend keseluruhan, menggunakan MACD untuk menangkap titik pembalikan trend, dan menggabungkan RSI untuk menapis isyarat palsu, membentuk sistem keputusan perdagangan yang komprehensif. Sasaran keuntungan 1.5% ditetapkan untuk melindungi keuntungan perdagangan.
Strategi ini menggunakan mekanisme penapisan penunjuk tiga: Pertama, ia menentukan trend utama pasaran melalui kedudukan relatif EMA cepat (20-periode) dan EMA perlahan (50-periode), mengenal pasti trend menaik apabila garis pantas berada di atas garis perlahan, dan sebaliknya. Kedua, ia menggunakan penunjuk MACD dengan tempoh pendek (6,13,5) untuk menangkap titik perubahan trend, dengan MACD dan persilangan garis isyarat menyediakan isyarat perdagangan. Akhirnya, RSI diperkenalkan sebagai pengesahan tambahan, dengan tahap bukan tradisional 40 dan 60 sebagai sempadan keputusan, menghasilkan lebih banyak isyarat perdagangan berbanding dengan tahap tradisional 30/70. Syarat beli memerlukan kepuasan serentak: MACD salib emas, EMA20 di atas EMA50, dan RSI 40; Syarat jual memerlukan: MACD cross death, EMA200,50, dan RSI di bawah 60.
Ini adalah strategi pembalikan trend yang direka dengan baik yang menyediakan peluang perdagangan yang kerap sambil mengekalkan kebolehpercayaan melalui penggunaan pelbagai penunjuk teknikal. Kelebihan utama strategi ini terletak pada sistem isyarat yang jelas dan syarat kemasukan yang ketat, tetapi perlu memberi perhatian kepada risiko isyarat palsu dan kawalan penarikan. Melalui arah pengoptimuman yang dicadangkan, strategi ini mempunyai potensi untuk meningkatkan prestasi. Apabila dilaksanakan dalam perdagangan langsung, disyorkan untuk menyesuaikan parameter mengikut keadaan pasaran tertentu dan melaksanakan kawalan risiko dengan ketat.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Enhanced Trend Reversal Strategy with Take Profit", overlay=true) // Параметры индикаторов ema_fast = 20 ema_slow = 50 rsi_length = 14 macd_short = 6 macd_long = 13 macd_signal = 5 // Параметры тейк-профита take_profit_percent = 1.5 // Тейк-профит на уровне 1.5% от цены входа // Индикаторы EMA (ускоренные для более частых сигналов) ema_20 = ta.ema(close, ema_fast) ema_50 = ta.ema(close, ema_slow) // MACD с более короткими периодами для большей чувствительности [macd_line, signal_line, _] = ta.macd(close, macd_short, macd_long, macd_signal) // Индикатор RSI с упрощенными уровнями для большего количества сигналов rsi = ta.rsi(close, rsi_length) // Сигналы на покупку и продажу с ослабленными условиями buy_signal = ta.crossover(macd_line, signal_line) and ema_20 > ema_50 and rsi > 40 sell_signal = ta.crossunder(macd_line, signal_line) and ema_20 < ema_50 and rsi < 60 // Логика открытия сделок и расчет тейк-профита var float take_profit_price = na // переменная для хранения уровня тейк-профита if (buy_signal) strategy.entry("Buy", strategy.long) take_profit_price := close * (1 + take_profit_percent / 100) // уровень тейк-профита для покупки if (sell_signal) strategy.entry("Sell", strategy.short) take_profit_price := close * (1 - take_profit_percent / 100) // уровень тейк-профита для продажи // Основная линия тренда, меняющая цвет в зависимости от тренда trend_color = ema_20 > ema_50 ? color.green : color.red plot(ema_20, title="Trend Line (EMA 20)", color=trend_color, linewidth=2) // Визуализация тейк-профита синим цветом plot(take_profit_price, title="Take Profit", color=color.blue, linewidth=1, style=plot.style_line) // Дополнительная визуализация: EMA 50, MACD, и RSI уровни plot(ema_50, title="EMA 50", color=color.blue, linewidth=1) hline(60, "RSI Upper", color=color.red) hline(40, "RSI Lower", color=color.green) plot(rsi, title="RSI", color=color.blue, linewidth=1) plot(macd_line, title="MACD Line", color=color.blue) plot(signal_line, title="Signal Line", color=color.orange)