Chiến lược đảo ngược RSI SAR Parabolic

Tác giả:ChaoZhang, Ngày: 2023-10-08 14:21:17
Tags:

Tổng quan

Chiến lược đảo ngược SAR RSI Parabolic tạo ra các tín hiệu giao dịch dựa trên các chỉ số Parabolic Stop and Reverse Relative Strength Index để xác định sự đảo ngược giá tiềm năng. Nó có các vị trí đối diện khi giá phá vỡ đường xu hướng tăng hoặc giảm. Điều này cho phép nắm bắt cơ hội từ sự đảo ngược giá.

Chiến lược logic

Chiến lược chủ yếu sử dụng hai chỉ số kỹ thuật:

  1. Parabolic SAR: vẽ một đường SAR parabolic như một đường dừng lỗ động. Khi giá phá vỡ đường này, vị trí và hướng của đường dừng lỗ được đặt lại, tạo ra tín hiệu mua hoặc bán.

  2. Chỉ số RSI: phản ánh tốc độ và sự thay đổi của giá tăng và giảm trong một khoảng thời gian.

Cụ thể, chiến lược đầu tiên thiết lập giá trị ban đầu, bước và giá trị tối đa của Parabolic SAR dựa trên đầu vào của người dùng.

  • Khi giá vượt qua đường SAR, một tín hiệu bán được tạo ra.
  • Khi giá phá vỡ dưới đường SAR, một tín hiệu mua được tạo ra.

Trong khi đó, chiến lược cũng theo dõi chỉ số RSI để xác định xem nó có nằm trong vùng mua quá mức / bán quá mức không. Các vị trí dài được đóng khi chỉ số RSI bước vào vùng mua quá mức. Các vị trí ngắn được đóng khi chỉ số RSI bước vào vùng bán quá mức.

Bằng cách kết hợp các tín hiệu đảo ngược SAR và tín hiệu lọc RSI, chiến lược có thể thực hiện các động thái ngược lại kịp thời khi giá đảo ngược để đạt được mức mua thấp bán cao.

Phân tích lợi thế

Những lợi thế chính của chiến lược theo dõi đảo ngược này là:

  1. Bắt lấy sự đảo ngược giá - Sử dụng các sự đột phá để tạo ra các tín hiệu đảo ngược và thực hiện các động thái ngược lại khi giá đảo ngược.

  2. Dynamic Stop Loss - SAR hoạt động như một stop loss chuyển động điều chỉnh mức dừng dựa trên giá thời gian thực để bảo vệ lợi nhuận.

  3. Khả năng thích nghi - Các tham số có thể điều chỉnh làm cho chiến lược thích nghi với môi trường thị trường khác nhau.

  4. RSI Filter - lọc ra các sự đột phá sai và tránh các động thái sai.

  5. Dễ thực hiện - Sử dụng các chỉ số đơn giản với ít mã, dễ thực hiện và backtest.

Phân tích rủi ro

Các rủi ro bao gồm:

  1. Rủi ro Whipsaw - Sự phá vỡ sai gây ra tín hiệu dừng và đảo ngược sai, dẫn đến tổn thất lặp đi lặp lại.

  2. Tối ưu hóa quá mức - Tối ưu hóa các tham số có thể dẫn đến quá mức và thiếu độ bền.

  3. Không có cơ sở cơ bản - Chỉ dựa trên các chỉ số kỹ thuật, bỏ qua các yếu tố cơ bản.

  4. Bỏ qua Chi phí giao dịch - Giao dịch thường xuyên làm tăng chi phí giao dịch.

  5. Tùy thuộc vào khoảng cách giá - Các khoảng cách có thể kích hoạt các tín hiệu dừng và đảo ngược không chính xác.

Cơ hội gia tăng

Chiến lược có thể được tăng cường từ các khía cạnh sau:

  1. Kết hợp với các chỉ số khác - Xác nhận tín hiệu với các chỉ số khác để tránh các tín hiệu sai.

  2. Chế độ điều chỉnh tham số - Kiểm tra và tối ưu hóa các tham số để tìm các kết hợp tham số tối ưu.

  3. Định dạng vị trí - Điều chỉnh kích thước vị trí dựa trên điều kiện thị trường để kiểm soát rủi ro.

  4. Giao dịch ở mức đáng kể - Chỉ giao dịch xung quanh các mức hỗ trợ / kháng cự chính để giảm tần suất.

  5. Xem xét các yếu tố cơ bản - Thêm các yếu tố cơ bản để tránh giao dịch chống lại các xu hướng chính.

Kết luận

Chiến lược theo dõi đảo ngược tạo ra các tín hiệu bằng cách sử dụng SAR và RSI để nắm bắt sự đảo ngược. Nó điều chỉnh năng động các điểm dừng để nắm bắt lợi nhuận ngắn hạn từ các vụ phá vỡ. Nhưng nó cũng tiếp xúc với những rủi ro của tiếng ồn sau đó. Tối ưu hóa các tham số, cải thiện chất lượng quyết định sẽ tăng cường tính ổn định và lợi nhuận của chiến lược.


/*backtest
start: 2023-09-07 00:00:00
end: 2023-10-07 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
// strategy("SARSI",overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_type = strategy.commission.percent, commission_value = 0.0675, initial_capital = 10000, currency = currency.USD, calc_on_order_fills = true, calc_on_every_tick = true) 

//study("SARSI",overlay = true)

src     = input(close, title="Source")
len     = input(14, minval=1, title="Length")
rob     = input(title="RSI Overbought Level", defval=82, minval=1, maxval=100)
ros     = input(title="RSI Oversold Level", defval=21, minval=1, maxval=100)
start   = input(title="SAR Start", defval=0.007, minval=0.001, maxval=10)
inc     = input(title="SAR Increment", defval=0.017, minval=0.001, maxval=100)
max     = input(title="SAR Maximum", defval=0.24, minval=0.01, maxval=10)
asar    = sar(start,inc,max)
xrsi    = rsi(close,len)
date    = timestamp(2018, 8, 1, 00, 00)
up      = crossunder(asar,src)
dn      = crossover(asar,src)

//ob      = crossunder(xrsi,rob)
//os      = crossover(xrsi,ros)

strategy.entry("long", strategy.long, when=up and time>=date, comment="Long")
strategy.entry("short", strategy.short, when=dn and time>=date, comment="Short")

//strategy.close("long", when=ob)
//strategy.close("short", when=os)

alertcondition(up,  "Long",  "Long Msg")
alertcondition(dn, "Short", "Short Msg")

//uptrend=plotshape(up,"uptrend",shape.triangleup,color=#48A498,transp=0, size = size.tiny, location = location.belowbar,text="฿")
//downtrend=plotshape(dn,"downtrend",shape.triangledown,color=#E25655,transp=0, size = size.tiny, location = location.abovebar,text="$")
//plotshape(ob,"overbuy",shape.triangleup,color=#48A498,transp=0, size = size.small, location = location.belowbar,text="0฿")
//plotshape(os,"oversell",shape.triangledown,color=#E25655,transp=0, size = size.small, location = location.abovebar,text="0$")

plot(asar, style=cross, color=gray, transp=0, linewidth=1, title="SAR")

Thêm nữa