Chiến lược này được đặt tên là
Ý tưởng chính đằng sau chiến lược là: Đầu tiên tính giá trị RSI, sau đó xây dựng chỉ số RSI Stochastic dựa trên RSI, cụ thể là các giá trị K và D. Khi giá trị K vượt trên giá trị D, một tín hiệu mua được tạo ra. Khi giá trị K vượt dưới giá trị D, một tín hiệu bán được tạo ra. Để lọc các tín hiệu sai, chiến lược cũng giới thiệu Chỉ số Tỷ lệ Thay đổi (RVI) và đường trung bình động của nó để xác nhận.
Tính toán giá trị RSI 14 giai đoạn.
Xây dựng một chỉ số RSI Stochastic 14 giai đoạn dựa trên RSI để có được các giá trị K và D (D là trung bình động 3 giai đoạn của K).
Tính toán RVI 5 giai đoạn và đường tín hiệu của nó (mức trung bình động của RVI).
Khi K vượt trên D, nếu RVI > Signal Line và đoạn cuối RVI < Signal Line, một tín hiệu mua được tạo ra. Khi K vượt dưới D, nếu RVI < Signal Line và đoạn cuối RVI > Signal Line, một tín hiệu bán được tạo ra.
Mở các vị trí dài hoặc ngắn dựa trên các tín hiệu được tạo ra.
Sự kết hợp của Stochastic RSI và xác nhận kép từ RVI có thể lọc hiệu quả các tín hiệu sai.
Chỉ số RVI có thể phản ánh các điều kiện mua quá mức / bán quá mức ngắn hạn và tránh mở các vị trí ở các điểm cực.
Chỉ số RSI Stochastic xác định các vùng mua quá mức / bán quá mức. Nó sử dụng đường chéo vàng / chết của chỉ số KDJ để xác định các điểm nhập cảnh.
Kết quả kiểm tra ngược cho thấy chiến lược này đã đạt được hiệu suất tốt trên một số cặp tiền điện tử (như FCT / BTC).
Việc đặt lệnh dừng lỗ không chính xác của các chiến lược dừng lại tương tự có thể dẫn đến việc dừng sớm.
Tần số tín hiệu cao có thể dẫn đến phí giao dịch quá cao nên được xem xét.
Cả chỉ số KDJ và RVI đều có thể tạo ra tín hiệu sai, dẫn đến tổn thất không cần thiết.
Các thông số chiến lược cần phải được tối ưu hóa cho các cặp giao dịch khác nhau.
Thêm stop loss di chuyển để khóa lợi nhuận.
Tối ưu hóa các thông số RVI và các thông số RSI Stochastic cho các tín hiệu sạch hơn.
Thêm kiểm soát kích thước giao dịch để tránh đơn đặt hàng quá lớn.
Thêm các cơ chế lọc để tránh mở các vị trí ở mức không thuận lợi.
Kiểm tra trên các cặp tiền điện tử khác nhau để tìm ra phù hợp nhất.
Chiến lược này đầu tiên xây dựng một chỉ số RSI Stochastic dựa trên chỉ số RSI, sau đó sử dụng chỉ số RVI để xác nhận, để phát hiện các điều kiện mua quá mức / bán quá mức ngắn hạn và các vị trí mở tại các điểm chuyển đổi. Ưu điểm là xác nhận kép có thể lọc ra các tín hiệu sai. Nhược điểm là nguy cơ quá phù hợp các tham số. Nhìn chung, chiến lược này đã đạt được kết quả tốt trên một số cặp giao dịch. Tăng cường hơn có thể đạt được lợi nhuận nhất quán hơn.
/*backtest start: 2022-12-08 00:00:00 end: 2023-12-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Stochastic RSI", shorttitle="Stoch RSI", overlay = true) Per = input(5, title="Length", minval=1) smoothK = input(3, minval=1) smoothD = input(3, minval=1) lengthRSI = input(14, minval=1) lengthStoch = input(14, minval=1) src = input(close, title="RSI Source") rsi1 = rsi(src, lengthRSI) K = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) D = sma(K, smoothD) rvi = sum(swma(close-open), Per)/sum(swma(high-low),Per) sig = swma(rvi) //plot(rvi, color=green, title="RVI") //plot(sig, color=red, title="Signal") //plot(K, title="K") //plot(D, title="D") Dn = K <= D and K > 70 and rvi <= sig and rvi[1] >= sig[1] Up= K >= D and K < 30 and rvi >= sig and rvi[1] <= sig[1] ARROW = Up - Dn plotarrow(ARROW, title="Down Arrow", colordown=red, transp=0, maxheight=10, minheight=10) plotarrow(ARROW, title="Up Arrow", colorup=lime, transp=0, maxheight=10, minheight=10) long = crossover(Up, Dn) short = crossunder(Up, Dn) last_long = long ? time : nz(last_long[1]) last_short = short ? time : nz(last_short[1]) long_signal = crossover(last_long, last_short) short_signal = crossover(last_short, last_long) //plot(long_signal, "BUY", color=green) //plot(short_signal, "SELL", color=red) strategy.entry("BUY", strategy.long, when=long_signal) strategy.entry("SELL", strategy.short, when=short_signal)