Chiến lược RSI theo dõi ADX là một chiến lược theo dõi xu hướng đường dài kết hợp chỉ số RSI và chỉ số ADX. Chiến lược này sử dụng chỉ số RSI để đánh giá tình hình mua quá mức hoặc bán quá mức, kết hợp với chỉ số ADX để đánh giá sức mạnh của xu hướng hiện tại, thực hiện nhập vào vị trí dài khi xu hướng đi lên và không mua quá mức, chiến lược giữ vị trí dài thoát khỏi vị trí bằng phẳng khi xu hướng trở nên yếu hoặc mua quá mức.
Chiến lược này chủ yếu sử dụng sự kết hợp của chỉ số RSI và chỉ số ADX để đánh giá thời gian nhập cảnh và xuất cảnh.
Điều kiện tham gia:
Hoặc:
Điều kiện rút lui:
Hoặc:
Hoặc:
SMA 20 chuyển sang giảm.
Chiến lược này sử dụng RSI để đánh giá quá mua quá bán, kết hợp với ADX để đánh giá xu hướng, để mua khi xu hướng không vượt quá mua, thoát ra khi quá mua hoặc xu hướng yếu đi, tổng thể để thực hiện hiệu quả của việc theo dõi xu hướng lên đường dài.
Chiến lược này có những lợi thế chính như sau:
Kết hợp hai chỉ số RSI và ADX, có thể đánh giá chính xác hơn xu hướng và quá mua quá bán, nhập cảnh và ra khỏi thị trường chính xác hơn.
Nếu bạn đánh giá xu hướng mạnh mẽ bằng ADX, bạn có thể giảm bớt sự yếu kém của thị trường do biến động.
RSI đặt các tham số lỏng lẻo hơn, theo dõi xu hướng đường dài trung bình, giảm giao dịch thường xuyên.
Chiến lược hoạt động đơn giản, dễ thực hiện, phù hợp với các vị trí dài dòng.
Các tham số có thể được cấu hình linh hoạt, có thể điều chỉnh không gian lớn.
Chiến lược này cũng có những rủi ro:
Chỉ số ADX bị tụt hậu, có thể bỏ lỡ điểm chuyển hướng dẫn đến sự mất mát.
Khi giá cổ phiếu giảm mạnh, việc dừng lỗ có thể được kích hoạt muộn hơn, mở rộng tổn thất.
Các tham số RSI đã được đặt quá thoải mái khi nhập, có thể dẫn đến quá nhiều thời gian nắm giữ quá mức.
Các tham số ADX được thiết lập quá nhạy cảm, có thể gây ra sự xuất hiện sai khi xu hướng yếu.
Trong trường hợp bất thường, các cổ phiếu cũng có thể hoạt động ngược lại.
Quản lý rủi ro:
Các tham số ADX được rút gọn một cách thích hợp để làm cho nó nhạy cảm hơn.
Thiết lập một đường dừng lỗ nghiêm ngặt hơn để tránh tổn thất lớn hơn.
Cần thắt chặt RSI một cách thích hợp để tránh quá mua và giữ vị thế quá lâu.
Các tham số ADX không được đặt quá nhạy cảm để tránh lỗi.
Trong trường hợp có sự biến động lớn, nên tạm dừng chiến lược và can thiệp bằng tay.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Tối ưu hóa các thiết lập tham số RSI, kiểm tra tác động của các tham số khác nhau về hiệu quả chiến lược.
Tối ưu hóa các tham số ADX, kiểm tra tác động của tham số chu kỳ DI và ADX đối với khả năng nắm bắt xu hướng của chiến lược.
Thử nghiệm thêm các chỉ số khác như MACD như là phán đoán hỗ trợ.
Kiểm tra các kết hợp khác nhau để tối ưu hóa thời gian nhập cảnh.
Kiểm tra thêm chiến lược dừng lỗ để tăng tỷ lệ rủi ro lợi nhuận của chiến lược.
Đánh giá tình trạng của chỉ số lớn, tạm dừng thủ công khi biến đổi lớn.
RSI theo dõi ADX chiến lược tổng thể là một chiến lược theo dõi xu hướng đường dài đơn giản hơn và thực tế. Nó kết hợp lợi thế của cả hai chỉ số RSI và ADX cùng một lúc, trong phán đoán xu hướng và đánh giá quá mua quá bán chính xác hơn. Chiến lược hoạt động đơn giản, dễ thực hiện và cũng có một số thông số tối ưu hóa không gian.
/*backtest
start: 2022-10-03 00:00:00
end: 2023-10-09 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Copyright by Reed Asset Management registered in Shanghai, China
//该策略为上海蘆田资产管理有限公司制
//@version=2
strategy("[蘆田策略]ADX+RSI", overlay=true)
//ADX
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
up = change(high)
down = -change(low)
truerange = rma(tr, len)
plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange)
minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange)
[plus, minus]
adx(dilen, adxlen) =>
[plus, minus] = dirmov(dilen)
sum = plus + minus
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)
plot(sig, color=red, title="ADX")
//ADX+RSI Strategy Long Entry
longEntry1 = sma(close, 20) > sma(close, 20)[1] //check if the ADX is rising
longEntry2 = (adx(14, 14) - adx(14, 14)[1]) > 0.2
longEntry3 = rsi(close, 14) < 85
longEntry4 = (adx(14, 14) - adx(14, 14)[1]) > 0
longEntry5 = (adx(14, 14) - adx(14, 14)[1] ) < 0.2
longEntry6 = rsi(close, 14) < 50
longCondition1 = longEntry1 and longEntry2 and longEntry3
longCondition2 = longEntry1 and longEntry4 and longEntry5 and longEntry6
if(longCondition1 or longCondition2)
strategy.entry("long", strategy.long)
//ADX+RSI Strategy Long Exit
longExit1 = rsi(close, 9) > 75
longExit2 = (adx(14, 14) - adx(14, 14)[1]) > 0
longExit3 = (adx(14, 14) - adx(14, 14)[1] ) < 0.2
longExit4 = (adx(14, 14) - adx(14, 14)[1]) > 0.2
longExit5 = sma(close, 20) < sma(close,20)[1]
longExitCondition1 = longExit1 and longExit2 and longExit3
longExitCondition2 = longExit1 and longExit4
longStop1 = strategy.position_avg_price + 4 * tr
longExitCondition3 = longExit5
longStop2 = sma(close, 20)
strategy.close_all(when = longExitCondition1)
if (longExitCondition2)
strategy.exit("exit", "long", stop = longStop1)
if (longExitCondition3)
strategy.exit("exit", "long", stop = longStop2)
//Strategy