Xu hướng RSI-MA theo chiến lược

Tác giả:ChaoZhang, Ngày: 2023-12-11 16:14:07
Tags:

img

Tổng quan

Chiến lược này được đặt tên là RSI-MA Trend Following Strategy. Ý tưởng là sử dụng cả chỉ số RSI và đường MA để đánh giá xu hướng giá và tạo ra tín hiệu giao dịch. Các tín hiệu giao dịch được tạo ra khi chỉ số RSI vượt quá ngưỡng trên và dưới đã được đặt trước, trong khi các đường MA được sử dụng để lọc các tín hiệu sai, chỉ phát ra tín hiệu khi giá tiếp tục tăng hoặc giảm. Điều này cho phép duy trì tiềm năng lợi nhuận tốt trong khi lọc hiệu quả các biến động giá ngoài phạm vi.

Chiến lược logic

Các thành phần cốt lõi của chiến lược này là chỉ số RSI và đường MA. RSI được sử dụng để xác định mức mua quá mức và bán quá mức, trong khi MA được sử dụng để xác định hướng xu hướng.

  1. Tính toán giá trị chỉ số RSI, và đặt ngưỡng trên là 90 và ngưỡng dưới là 10. Một đọc RSI trên 90 cho thấy một tín hiệu mua quá mức, trong khi đọc dưới 10 cho thấy một tín hiệu bán quá mức.

  2. Tính toán đường MA của một khoảng thời gian nhất định (ví dụ 4 ngày). Khi giá liên tục tăng, đường MA nghiêng lên. Khi giá liên tục giảm, đường MA nghiêng xuống.

  3. Khi chỉ số RSI vượt quá 90 và đường MA nghiêng lên, đi ngắn. Khi chỉ số RSI giảm xuống dưới 10 và đường MA nghiêng xuống, đi dài.

  4. Đặt mức dừng lỗ ở một số điểm cố định cho mỗi hợp đồng và lấy lợi nhuận ở một tỷ lệ phần trăm cố định cho mỗi hợp đồng.

Phân tích lợi thế

Chiến lược này kết hợp các bộ lọc kép của chỉ số RSI và đường MA, có thể lọc hiệu quả các tín hiệu sai dưới các biến động giá giới hạn trong phạm vi. Trong khi đó, các thiết lập RSI tránh các tín hiệu bị trì hoãn và duy trì tiềm năng lợi nhuận tốt. Sử dụng MA để xác định hướng xu hướng ngăn chặn giao dịch chống lại xu hướng. Ngoài ra, chiến lược có các tham số đơn giản dễ hiểu và tối ưu hóa.

Phân tích rủi ro

Những rủi ro chính của chiến lược này bao gồm:

  1. Các sự kiện đột ngột gây ra sự gia tăng giá mạnh có thể không được phản ánh kịp thời trong các bài đọc RSI và MA, dẫn đến tổn thất lớn hơn.

  2. Dưới thị trường giới hạn phạm vi, RSI và MA có thể thường xuyên phát ra tín hiệu, dẫn đến giao dịch quá thường xuyên làm tăng chi phí giao dịch và trượt.

  3. Cài đặt tham số không đúng cũng có thể ảnh hưởng đến hiệu suất chiến lược. Ví dụ, ngưỡng RSI trên / dưới đặt quá rộng dẫn đến sự chậm trễ tín hiệu, trong khi ngưỡng đặt quá hẹp dẫn đến tín hiệu quá thường xuyên.

Hướng dẫn tối ưu hóa

Các lĩnh vực tối ưu hóa hơn bao gồm:

  1. Kiểm tra lại và tối ưu hóa các thông số trên các sản phẩm và khung thời gian khác nhau để tìm ra sự kết hợp các thông số tối ưu.

  2. Kết hợp các chỉ số khác cùng với RSI / MA, chẳng hạn như KDJ, BOLL vv, để thiết lập các bộ lọc tín hiệu nghiêm ngặt hơn và giảm tín hiệu sai.

  3. Xây dựng các cơ chế dừng lỗ / lấy lợi nhuận thích nghi dựa trên biến động và ATR để điều chỉnh năng động mức giá.

  4. Thêm thuật toán học máy để tự động điều chỉnh các thông số dựa trên các điều kiện thị trường thay đổi, nhận ra tối ưu hóa thông số năng động.

Kết luận

Nhìn chung, chiến lược RSI-MA này khá đơn giản và thực tế, kết hợp các yếu tố theo xu hướng và phân tích mua quá mức / bán quá mức. Nó có thể đạt được lợi nhuận hợp lý với điều kiện thị trường thuận lợi, nhưng cũng mang lại rủi ro của các tín hiệu sai mà cần phải được giảm thông qua các tối ưu hóa hơn nữa để cải thiện độ bền.


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

//@version=2
//This strategy is best used with the Chrome Extension AutoView for automating TradingView alerts.
//You can get the AutoView extension for FREE using the following link
//https://chrome.google.com/webstore/detail/autoview/okdhadoplaoehmeldlpakhpekjcpljmb?utm_source=chrome-app-launcher-info-dialog
strategy("4All", shorttitle="Strategy", overlay=false)

src = close
len = input(4, minval=1, title="Length")

up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi, color=purple)
band1 = hline(90)
band0 = hline(10)
fill(band1, band0, color=purple, transp=90)

rsin = input(5)
sn = 100 - rsin
ln = 0 + rsin

short = crossover(rsi, sn)
long = crossunder(rsi, ln)

strategy.entry("long", strategy.long, when=long)
strategy.entry("short", strategy.short, when=short)

TP = input(15) * 10
SL = input(23) * 10
TS = input(0) * 10
CQ = 100

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na

strategy.exit("Close Long", "long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Close Short", "short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)

Thêm nữa