
Chiến lược này dựa trên chỉ số tương đối mạnh mẽ (RSI) để xác định tín hiệu mua và bán sau khi mịn. Đây là một chiến lược theo dõi xu hướng điển hình. Bằng cách tính toán mức độ biến động của giá cổ phiếu trong một khoảng thời gian nhất định, nó giúp nhà đầu tư đánh giá thị trường đang ở trạng thái quá mua hoặc quá bán để đưa ra quyết định đầu tư.
Điểm mấu chốt của chiến lược này là việc đặt các chỉ số RSI bằng phẳng. Chỉ số RSI có thể phản ánh tình huống mua bán quá mức của giá cổ phiếu. Tuy nhiên, chỉ số RSI nguyên bản cũng có thể dao động mạnh theo giá, không tạo ra tín hiệu giao dịch. Do đó, chiến lược này đã xử lý nó bằng phẳng, sử dụng trung bình di chuyển đơn giản 5 ngày, có thể lọc một số tiếng ồn một cách hiệu quả, làm cho tín hiệu giao dịch rõ ràng và đáng tin cậy hơn.
Chiến lược này có lợi thế là tín hiệu ổn định và đáng tin cậy hơn so với chiến lược RSI ban đầu. Tuy nhiên, có một số không gian cải tiến, nhà đầu tư có thể tăng cường chiến lược bằng cách tối ưu hóa tham số, thêm các chỉ số khác để có thể thích ứng với môi trường thị trường phức tạp hơn.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Smoothed RSI Strategy", overlay=true)
// Calculate the RSI
length = 5
rsiValue = ta.rsi(close, length)
// Smooth the RSI using a moving average
smoothedRsi = ta.sma(rsiValue, length)
// Define overbought and oversold thresholds
overbought = 80
oversold = 40
// Buy signal when RSI is in oversold zone
buyCondition = ta.crossover(smoothedRsi, oversold)
// Sell signal when RSI is in overbought zone
sellCondition = ta.crossunder(smoothedRsi, overbought)
// Plotting the smoothed RSI
// Plotting the smoothed RSI in a separate pane
plot(smoothedRsi, color=color.blue, title="Smoothed RSI", style=plot.style_line, linewidth=2)
//plot(smoothedRsi, color=color.blue, title="Smoothed RSI")
hline(overbought, "Overbought", color=color.red)
hline(oversold, "Oversold", color=color.green)
// Strategy logic for buying and selling
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.close("Buy")