Tài nguyên đang được tải lên... tải...

Triple Relative Strength Index Chiến lược giao dịch định lượng

Tác giả:ChaoZhang, Ngày: 2024-05-15 10:23:08
Tags:RSISMA

img

Tổng quan

Chiến lược này chủ yếu sử dụng chỉ số sức mạnh tương đối (RSI) để xác định các điều kiện mua quá mức và bán quá mức trên thị trường, kết hợp với giá trên đường trung bình di chuyển đơn giản 200 ngày (SMA) như một bộ lọc xu hướng, để quyết định có nên tham gia giao dịch hay không. Chiến lược xây dựng các điều kiện nhập cảnh thông qua ba chỉ số RSI. Chỉ khi chỉ số RSI ngắn hạn dưới 35 và cho thấy xu hướng giảm trong ba giai đoạn liên tiếp, trong khi chỉ số RSI giai đoạn thứ ba dưới 60, và giá đóng hiện tại trên đường SMA 200 ngày, nó sẽ đi dài. Điều kiện thoát là khi chỉ số RSI vượt trên 50.

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

  1. Tính toán chỉ số RSI cho giai đoạn được chỉ định
  2. Xác định xem các điều kiện nhập khẩu sau đây có được đáp ứng không:
    • Chỉ số RSI hiện tại dưới 35
    • RSI hiện tại thấp hơn RSI giai đoạn trước, RSI giai đoạn trước thấp hơn RSI giai đoạn trước thứ hai, RSI giai đoạn trước thứ hai thấp hơn RSI giai đoạn trước thứ ba
    • Chỉ số RSI giai đoạn thứ ba trước đó thấp hơn 60
    • Giá đóng hiện tại nằm trên SMA 200 ngày
  3. Nếu tất cả bốn điều kiện trên được đáp ứng đồng thời, mở một vị trí dài
  4. Trong thời gian nắm giữ, nếu chỉ số RSI vượt trên 50, đóng vị trí
  5. Lặp lại bước 2-4 cho giao dịch tiếp theo

Ưu điểm chiến lược

  1. Bằng cách sử dụng RSI để xác định các điều kiện mua quá mức và bán quá mức và nhập vị trí trong khu vực bán quá mức, nó có thể nắm bắt các cơ hội đảo ngược thị trường
  2. Bằng cách xây dựng tín hiệu đầu vào với ba RSI cùng nhau, nó làm giảm khả năng tín hiệu sai và cải thiện độ tin cậy tín hiệu
  3. Thêm giá trên đường trung bình động 200 ngày như một điều kiện xu hướng tránh giao dịch trong xu hướng giảm
  4. Điều kiện thoát đơn giản và rõ ràng, cho phép thực hiện lợi nhuận kịp thời
  5. Chiến lược logic là rõ ràng và dễ hiểu và thực hiện

Rủi ro chiến lược

  1. Chỉ số RSI có sự chậm trễ tín hiệu, có thể bỏ lỡ thời gian đầu vào tốt nhất
  2. Các điều kiện nhập cảnh tương đối nghiêm ngặt, dẫn đến tần suất giao dịch thấp và có khả năng bỏ lỡ một số biến động thị trường
  3. Nó có thể không hoạt động tốt trong thị trường hỗn loạn, bị bắt trong các bước vào và ra thường xuyên
  4. Chiến lược chỉ có thể nắm bắt xu hướng tăng một bên và không thể nắm bắt xu hướng giảm sau khi đảo ngược xu hướng

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

  1. Xem xét thêm một lệnh dừng kéo dài hoặc lệnh dừng lỗ cố định để kiểm soát rủi ro giao dịch duy nhất
  2. Nghiên cứu sự kết hợp của RSI với các chỉ số phụ trợ khác để cải thiện độ tin cậy và tính kịp thời của tín hiệu nhập và xuất
  3. Tối ưu hóa điều kiện nhập cảnh để cải thiện tần suất giao dịch trong khi đảm bảo độ tin cậy tín hiệu
  4. Đưa ra quản lý vị trí để điều chỉnh các vị trí năng động dựa trên sức mạnh xu hướng và biến động
  5. Xem xét kết hợp ngắn hạn và trung hạn để phát triển các phiên bản chiến lược phù hợp với các điều kiện thị trường khác nhau

Tóm lại

Chiến lược này xây dựng các điều kiện đầu vào thông qua một chỉ số RSI ba lần, kết hợp với giá trên trung bình động dài hạn như một bộ lọc xu hướng, để nắm bắt các thiết lập đảo ngược quá bán. Lý thuyết chiến lược đơn giản và rõ ràng, dễ thực hiện và tối ưu hóa. Tuy nhiên, chiến lược cũng có rủi ro và thiếu sót như độ trễ tín hiệu, tần suất giao dịch thấp và chỉ có thể nắm bắt các chuyển động thị trường đơn phương. Nó cần gỡ lỗi liên tục và cải thiện trong ứng dụng thực tế. Bằng cách giới thiệu dừng lỗ và lấy lợi nhuận, quản lý vị trí, kết hợp với các chỉ số khác và các phương pháp khác, sự ổn định và lợi nhuận của chiến lược có thể được cải thiện hơn nữa.


/*backtest
start: 2023-05-15 00:00:00
end: 2024-05-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
//@author Honestcowboy
//
strategy("Triple RSI [Honestcowboy]" )

  
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> User Inputs <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

rsiLengthInput = input.int(5, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> VARIABLE CALCULATIONS <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> CONDITIONALS <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

rule1   = rsi<35
rule2   = rsi<rsi[1] and rsi[1]<rsi[2] and rsi[2]<rsi[3]
rule3   = rsi[3]<60
rule4   = close>ta.sma(close, 200)

longCondition = rule1 and rule2 and rule3 and rule4
closeCondition = rsi>50

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> GRAPHICAL DISPLAY <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

hline(30, title="Long Condition Line")
hline(50, title="Exit Condition Line")
plot(rsi)
plotshape(longCondition ? rsi-3 : na, title="Long Condition", style=shape.triangleup, color=color.lime, location=location.absolute)
plotshape(closeCondition and rsi[1]<50? rsi+3 : na, title="Exit Condition", style=shape.triangledown, color=#e60000, location=location.absolute)

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> AUTOMATION AND BACKTESTING <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

if longCondition and strategy.position_size==0
    strategy.entry("LONG", strategy.long)
if closeCondition
    strategy.close("LONG")

Có liên quan

Thêm nữa