
Chiến lược này sử dụng chiến lược chỉ số chậm ngẫu nhiên cổ điển kết hợp với chiến lược chỉ số tương đối mạnh, tạo thành một chiến lược kép. Khi chỉ số ngẫu nhiên vượt quá 80, nó đi quá xa 20; đồng thời khi RSI vượt quá 70 và đi quá xa 30, chỉ khi cả hai kích hoạt cùng một lúc, vị trí sẽ được mở.
Chiến lược này chủ yếu dựa trên hai chỉ số cổ điển - chỉ số chậm ngẫu nhiên và chỉ số RSI, và đặt ngưỡng để đánh giá tình trạng quá mua quá bán.
Các phần khác của chỉ số này là:
% K và % D được tính toán trong mã được đặt tên là k và d.
Khi đường %K từ dưới lên vượt qua đường %D, đó là tín hiệu xem quá. Khi nó vượt qua từ trên xuống, đó là tín hiệu xem quá.
Phần RSI:
Chỉ số RSI được tính được gọi là vrsi。
Khi chỉ số RSI tăng lên trên 70 là tín hiệu mua quá mức và giảm xuống dưới 30 là tín hiệu bán quá mức.
Điều kiện kích hoạt chiến lược kép:
Chiến lược này sẽ mở vị trí chỉ khi cả chỉ số ngẫu nhiên và chỉ số RSI đều cho thấy tín hiệu quá mua hoặc quá bán, tức là cả hai đều vượt quá ngưỡng thấp của mỗi người.
Sự kết hợp này sử dụng hai chỉ số bổ sung để giảm tín hiệu giả và tăng độ tin cậy của tín hiệu.
Sự kết hợp của hai chiến lược này, kết hợp cả hai chiến lược cổ điển của chỉ số RSI và chỉ số chậm ngẫu nhiên, có những lợi thế sau:
Chiến lược này cũng có một số rủi ro, bao gồm:
Thiết lập tham số ngưỡng không đúng có thể dẫn đến thất bại hoặc tạo ra tín hiệu sai. Các tham số tối ưu có thể được tìm thấy thông qua tối ưu hóa và thử nghiệm lặp lại.
Do chiến lược kép, tín hiệu sẽ được tạo ra với tần số thấp hơn, tỷ lệ sử dụng vị trí không cao. Các tham số có thể được nới lỏng thích hợp, tăng số tín hiệu.
Chỉ số ngẫu nhiên và chỉ số RSI đều bị tụt hậu, có thể bỏ lỡ cơ hội thay đổi nhanh chóng. Nó có thể được kết hợp với các chỉ số nhạy cảm hơn để hỗ trợ.
Chiến lược này phù hợp hơn với một số giống tương đối ổn định, biến động mạnh mẽ hơn, chẳng hạn như chỉ số cổ phiếu, kim loại quý, v.v. Có thể không phù hợp với một số giống biến động nhỏ hơn.
Chính sách này cũng có thể được tối ưu hóa theo các khía cạnh sau:
Các tham số có thể được tối ưu hóa tự động hoặc bằng tay thông qua thuật toán để tìm ra sự kết hợp tham số tối ưu nhất.
Có thể thiết lập dừng di chuyển hoặc dừng phần trăm để kiểm soát tổn thất đơn lẻ.
Các chỉ số năng lượng, trung bình di chuyển, v.v. có thể được đưa vào để hỗ trợ đánh giá chất lượng tín hiệu.
Có thể nới lỏng thích hợp giới hạn kích hoạt chiến lược kép, tăng số tín hiệu.
Chiến lược này sử dụng sự kết hợp kép của chỉ số chậm ngẫu nhiên và chỉ số RSI, được kích hoạt khi cả hai cùng lúc hiển thị tín hiệu mua bán quá mức, có lợi thế như tín hiệu chính xác cao, phong cách giao dịch bảo vệ. Ngoài ra, có một số tham số thiết lập rủi ro, số lượng tín hiệu ít hơn. Chúng tôi có thể cải tiến và tối ưu hóa bằng cách tối ưu hóa tham số, thiết lập dừng lỗ và giới thiệu các chỉ số khác để làm cho chiến lược ổn định và đáng tin cậy hơn.
/*backtest
start: 2023-12-19 00:00:00
end: 2023-12-26 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Stochastic + RSI, Double Strategy (by ChartArt)", shorttitle="CA_-_RSI_Stoch_Strat", overlay=true)
// ChartArt's Stochastic Slow + Relative Strength Index, Double Strategy
//
// Version 1.0
// Idea by ChartArt on October 23, 2015.
//
// This strategy combines the classic RSI
// strategy to sell when the RSI increases
// over 70 (or to buy when it falls below 30),
// with the classic Stochastic Slow strategy
// to sell when the Stochastic oscillator
// exceeds the value of 80 (and to buy when
// this value is below 20).
//
// This simple strategy only triggers when
// both the RSI and the Stochastic are together
// in overbought or oversold conditions.
//
// List of my work:
// https://www.tradingview.com/u/ChartArt/
///////////// Stochastic Slow
Stochlength = input(14, minval=1, title="lookback length of Stochastic")
StochOverBought = input(80, title="Stochastic overbought condition")
StochOverSold = input(20, title="Stochastic oversold condition")
smoothK = input(3, title="smoothing of Stochastic %K ")
smoothD = input(3, title="moving average of Stochastic %K")
k = sma(stoch(close, high, low, Stochlength), smoothK)
d = sma(k, smoothD)
///////////// RSI
RSIlength = input( 14, minval=1 , title="lookback length of RSI")
RSIOverBought = input( 70 , title="RSI overbought condition")
RSIOverSold = input( 30 , title="RSI oversold condition")
RSIprice = close
vrsi = rsi(RSIprice, RSIlength)
///////////// Double strategy: RSI strategy + Stochastic strategy
if (not na(k) and not na(d))
if (crossover(k,d) and k < StochOverSold)
if (not na(vrsi)) and (crossover(vrsi, RSIOverSold))
strategy.entry("LONG", strategy.long, comment="StochLE + RsiLE")
if (crossunder(k,d) and k > StochOverBought)
if (crossunder(vrsi, RSIOverBought))
strategy.entry("SHORT", strategy.short, comment="StochSE + RsiSE")
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)WQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ