Chiến lược theo xu hướng dựa trên RSI


Ngày tạo: 2023-11-07 16:33:43 sửa đổi lần cuối: 2023-11-07 16:33:43
sao chép: 0 Số nhấp chuột: 706
1
tập trung vào
1621
Người theo dõi

Chiến lược theo xu hướng dựa trên RSI

Tổng quan

Chiến lược này được thiết kế dựa trên các chỉ số RSI để xác định tình trạng mua quá mức và theo dõi xu hướng. Khi RSI thấp hơn đường bán quá mức, hãy mua nhiều và khi RSI cao hơn đường mua quá mức, hãy kiếm lợi nhuận bằng cách theo dõi xu hướng chính.

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

Chiến lược này sử dụng chỉ số RSI để đánh giá tình trạng quá mua quá bán của thị trường. Chỉ số RSI được tính dựa trên sự tăng giảm trong một khoảng thời gian nhất định. Khi RSI thấp hơn 30, nó được coi là quá bán và khi RSI cao hơn 70, nó được coi là quá mua.

Cụ thể, chiến lược này trước tiên xác định tham số tính toán RSI length = 14, overBought = 70, overSold = 30. Sau đó, tính toán giá trị RSI vrsi dựa trên giá đóng cửa. Xác định xem vrsi có cao hơn hoặc thấp hơn đường bán quá mức hay không.

Bằng cách này, chiến lược này có thể nắm bắt các xu hướng chính của thị trường, mua ở điểm bán quá mức, bán ở điểm mua quá mức, và theo dõi xu hướng.

Lợi thế chiến lược

  • Sử dụng chỉ số RSI để đánh giá tình trạng quá mua và quá bán để nắm bắt xu hướng thị trường
  • Cài đặt cửa sổ phản hồi linh hoạt, có thể chọn các phạm vi thời gian khác nhau để thử nghiệm
  • Cài đặt điểm dừng là hợp lý, có thể kiểm soát tổn thất đơn lẻ

Rủi ro chiến lược

  • RSI có sự kéo dài, có thể tạo ra tín hiệu sai
  • Điểm dừng là static, không thể theo dõi chuyển động của thị trường
  • Không thể xác định được điểm đảo ngược của xu hướng, có thể đảo ngược vị thế

Phương pháp giải quyết rủi ro:

  • Kết hợp với các chỉ số khác để lọc tín hiệu RSI và tránh nhầm vị trí
  • Động thái điều chỉnh điểm dừng lỗ, theo dõi biến động thị trường trong thời gian thực
  • Tăng các chỉ số đánh giá xu hướng, tránh mở đầu tư ngược

Hướng tối ưu hóa chiến lược

Chính sách này có thể được tối ưu hóa theo các khía cạnh sau:

  1. Tối ưu hóa các tham số RSI, tìm các tham số kết hợp tối ưu

Có thể thử nghiệm các chu kỳ tính toán RSI khác nhau, các giới hạn mua và bán khác nhau, tìm các tham số tối ưu để giảm tín hiệu sai.

  1. Tăng các chỉ số đánh giá xu hướng, tránh giao dịch ngược

Các chỉ số như đường trung bình, MACD có thể được thêm vào để đánh giá xu hướng, tránh phát ra tín hiệu sai tại điểm đảo ngược xu hướng.

  1. Động lực dừng

Bạn có thể thiết lập điểm dừng động dựa trên các chỉ số như ATR để dừng lại gần hơn với biến động của thị trường.

  1. Tối ưu hóa quy tắc nhập học

Các điều kiện khác có thể được thêm vào trên cơ sở tín hiệu RSI, chẳng hạn như phá vỡ một mức giá nhất định, khối lượng giao dịch lớn hơn như tín hiệu nhập cảnh, tăng độ chính xác nhập cảnh.

Tóm tắt

Chiến lược này thông qua các chỉ số RSI đánh giá quá mua quá bán, để nắm bắt xu hướng. So với các chiến lược theo dõi dừng lỗ truyền thống, có lợi thế trong việc sử dụng các chỉ số để đánh giá thời gian thị trường. Tuy nhiên, các chỉ số RSI có hiện tượng kéo, không thể đánh giá xu hướng đảo chiều, đây là hướng mà chiến lược cần tối ưu hóa. Bằng cách tối ưu hóa tham số, tăng phán đoán xu hướng, động lực dừng lỗ, các phương tiện khác, có thể nâng cao hơn nữa sự ổn định và khả năng sinh lợi của chiến lược.

Mã nguồn chiến lược
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy("RSI Etoro Strategy", overlay=true, max_bars_back=2000)
// To use:
// Capital = capital * leverage
// Slippage Ticks: 3, 5 ? (Mainly for spread)
// etoroStopTicks: Set it accordingly to the stock (to corresponds to etoro default of 50 % for exemple...)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 12, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 1995)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 1995)


// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => time >= start and time <= finish ? true : false // create function "within window of time"

length = input( 14 )
overSold = input( 30 )
overBought = input( 70 )
etoroStopTicks = input( 120 )
// 120 because it is approximatively the number of ticks for default SL of 50% at x5 leverage for copper (no fee)...
price = close

vrsi = rsi(price, length)

if (not na(vrsi))
    if (crossover(vrsi, overSold))
        strategy.entry("RsiLE", strategy.long, comment="RsiLE", when = window())
    if (crossunder(vrsi, overBought))
        strategy.entry("RsiSE", strategy.short, comment="RsiSE", when = window())
strategy.exit("exit SE", "RsiSE", loss=etoroStopTicks, when = window())
strategy.exit("exit LE", "RsiLE", loss=etoroStopTicks, when = window())

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)