Chiến lược dài hạn theo xu hướng RSI


Ngày tạo: 2024-01-04 17:48:41 sửa đổi lần cuối: 2024-01-04 17:48:41
sao chép: 0 Số nhấp chuột: 578
1
tập trung vào
1621
Người theo dõi

Chiến lược dài hạn theo xu hướng RSI

Tổng quan

Chiến lược này là một chiến lược đa đầu theo dõi xu hướng sử dụng chỉ số RSI để xác định xu hướng, kết hợp với chỉ số MACD để đưa ra thị trường. Chiến lược này kết hợp cùng với đường trung bình EMA làm bộ lọc xu hướng và cơ chế dừng khẩn cấp để kiểm soát rủi ro.

Nguyên tắc chiến lược

Chiến lược này phụ thuộc chủ yếu vào chỉ số RSI để xác định xu hướng. Khi chỉ số RSI đi qua đường dài RSI được thiết lập (bằng mặc định 21), cho rằng thị trường có thể đảo ngược xu hướng. Nếu MACD đã ở trong xu hướng giảm, thì có thể xác định rằng hiện tại đang ở điểm đảo ngược, là một thời điểm tốt để làm nhiều hơn.

Ngoài ra, chiến lược này cũng giới thiệu đường trung bình EMA (tạm dịch là 200 chu kỳ mặc định) làm bộ lọc xu hướng. Chỉ khi giá cao hơn đường trung bình EMA, bạn sẽ xem xét thêm. Điều này có thể hiệu quả trong việc lọc xu hướng không rõ ràng hoặc đảo ngược giả trong xu hướng giảm.

Về dừng lỗ, chiến lược này đặt cả đường dừng thường xuyên và đường dừng khẩn cấp. Khi RSI vượt qua đường dừng thường xuyên (đặc biệt là 86); Nếu giá giảm mạnh, không có điều kiện khi RSI vượt qua đường dừng khẩn cấp (đặc biệt là 73), để kiểm soát tổn thất tối đa.

Phân tích lợi thế

  • Sử dụng RSI để xác định điểm đảo ngược, phối hợp với MACD để loại bỏ sai sót.
  • Ghi chú về EMA:
  • Sử dụng dừng thường xuyên và dừng khẩn cấp để kiểm soát rủi ro.

Phân tích rủi ro

  • Các tín hiệu đảo ngược RSI có thể bị hiểu sai.
  • EMA không thể phản ứng kịp thời khi thị trường lớn thay đổi.
  • Chỉ số dừng lỗ đơn lẻ có thể sẽ ngăn chặn giao dịch có lợi nhuận.

Hướng tối ưu hóa

  • Có thể đưa ra chỉ số giá trị hoặc tỷ lệ dương / âm để giúp đánh giá và cải thiện độ chính xác của nhập học.
  • Hệ thống đường trung bình có thể được điều chỉnh để theo dõi xu hướng N ngày gần đây một cách động.
  • Tăng Stop Loss Mobile hoặc Stop Loss Statistical để giảm bớt lỗ hổng.

Tóm tắt

Chiến lược này nói chung là một chiến lược đa đầu theo dõi xu hướng truyền thống hơn. Sử dụng RSI để xác định điểm đảo ngược, lọc MACD để đánh giá sai, EMA để đánh giá xu hướng lớn, kiểm soát rủi ro dừng lỗ. Chiến lược này đơn giản, trực quan, dễ hiểu, có một số lợi thế trong việc đánh giá sự đảo ngược của thị trường, có thể được sử dụng như một trong những chiến lược nhập cảnh của giao dịch định lượng.

Mã nguồn chiến lược
/*backtest
start: 2022-12-28 00:00:00
end: 2024-01-03 00:00:00
period: 1d
basePeriod: 1h
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/
// © dravitch
//@version=4
strategy("RSI - BULL RUN (Improved)", overlay=true)

// Input
UseEmergency = input(true, "Use Emergency Exit?")
RSIlong = input(21, "RSI Long Cross")
RSIcloseLong = input(86, "RSI Close Long Position")

EmergencycloseLong = input(73, "RSI Emergency Close Long Position")
UseEMAFilter = input(true, "Use EMA Trend Filter")
EMAlength = input(200, "EMA Length for Trend Filter")  // Utiliser 200 pour SMMA

// RSI
rsiValue = rsi(close, 14)

// MACD
[macdLine, signalLine, _] = macd(close, 12, 26, 9)

// EMA Trend Filter
emaTrend = sma(close, EMAlength)  // Utiliser sma pour la SMMA (Simple Moving Average)

// Conditions pour les trades longs
trendUp = close > emaTrend
trendDown = close < emaTrend
longCondition = crossover(rsiValue, RSIlong) and trendDown or crossunder(macdLine, signalLine) and crossover(rsiValue, RSIlong)
longCloseCondition = crossunder(rsiValue, RSIcloseLong) and trendUp
emergencyLongCondition = crossunder(rsiValue, EmergencycloseLong) 

// Plots
plot(rsiValue, color=color.white, linewidth=2, title="RSI")

// Strategy
if (longCondition)
    strategy.entry("Long", strategy.long, alert_message='RSI Long Cross: LONG')
if (longCloseCondition)
    strategy.close("Long", alert_message='RSI Close Long Position')
if (emergencyLongCondition and UseEmergency)
    strategy.close("Long", alert_message='RSI Emergency Close Long')

// Plot EMA Trend Filter in a separate pane
plot(emaTrend, color=color.rgb(163, 0, 122), title="EMA Trend Filter", linewidth=2, style=plot.style_line, transp=0)
hline(0, "Zero Line", color=color.gray)