
Strategi ini adalah sistem strategi reversal tren yang didasarkan pada penyeberangan beberapa indikator teknis, menggunakan kombinasi tiga indikator teknis klasik, EMA, MACD dan RSI, yang menggabungkan keuntungan ganda dari pelacakan tren dan penilaian reversal. Strategi ini menggunakan rata-rata bergerak indeks 20 dan 50 periode (EMA) untuk menentukan arah tren secara keseluruhan, menggunakan indikator MACD untuk menangkap titik-titik perubahan tren, dan menggabungkan sinyal penyaringan RSI, yang akhirnya membentuk sistem keputusan perdagangan yang lengkap.
Strategi ini menggunakan mekanisme penyaringan tiga indikator: pertama, menilai tren dominan pasar melalui hubungan posisi EMA cepat (siklus 20) dan EMA lambat (siklus 50), dan mengidentifikasi tren naik ketika garis cepat berada di atas garis lambat, dan sebaliknya tren turun. Kedua, menggunakan indikator MACD yang disetel pada periode pendek (6,13,5) untuk menangkap titik pivot tren, dan persimpangan MACD dengan garis sinyal memberikan sinyal perdagangan.
Ini adalah strategi reversal tren yang dirancang dengan baik, dengan penggunaan kombinasi dari beberapa indikator teknis, memberikan peluang perdagangan yang lebih sering sambil menjamin keandalan. Keunggulan inti dari strategi ini adalah sistem sinyal yang jelas dan persyaratan masuk yang ketat, tetapi juga perlu memperhatikan risiko sinyal palsu dan kontrol penarikan. Dengan arah optimasi yang disarankan, strategi ini diharapkan untuk mendapatkan kinerja yang lebih baik.
/*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)