Chiến lược này là một hệ thống giao dịch tổng hợp kết hợp chỉ số sức mạnh tương đối Stochastic (Stochastic RSI) với xác nhận mô hình nến. Hệ thống tạo ra các tín hiệu giao dịch tự động bằng cách phân tích mức mua quá mức và bán quá mức của chỉ số SRSI cùng với xác nhận hành động giá thông qua các mô hình nến. Chiến lược sử dụng các kết hợp chỉ số kỹ thuật tiên tiến, kết hợp cả các đặc điểm giao dịch theo xu hướng và đảo ngược, chứng minh khả năng thích nghi thị trường mạnh mẽ.
Logic cốt lõi của chiến lược được xây dựng trên một số yếu tố chính:
Chiến lược này xây dựng một hệ thống giao dịch mạnh mẽ bằng cách kết hợp các chỉ số Stochastic RSI với các mẫu nến. Trong khi duy trì tính đơn giản của hoạt động, hệ thống đạt được kiểm soát rủi ro hiệu quả. Thông qua tối ưu hóa tham số thích hợp và lọc tín hiệu, chiến lược có thể thích nghi với các môi trường thị trường khác nhau. Các nhà giao dịch được khuyên nên tiến hành kiểm tra lại dữ liệu lịch sử kỹ lưỡng và điều chỉnh các tham số theo các đặc điểm thị trường cụ thể trước khi thực hiện trực tiếp.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Stochastic RSI Strategy with Candlestick Confirmation", overlay=true) // Input parameters for Stochastic RSI rsiPeriod = input.int(14, title="RSI Period") stochRsiPeriod = input.int(14, title="Stochastic RSI Period") kPeriod = input.int(3, title="K Period") dPeriod = input.int(3, title="D Period") // Overbought and Oversold levels overboughtLevel = input.int(80, title="Overbought Level", minval=50, maxval=100) oversoldLevel = input.int(20, title="Oversold Level", minval=0, maxval=50) // Calculate RSI rsi = ta.rsi(close, rsiPeriod) // Calculate Stochastic RSI stochRSI = ta.stoch(rsi, rsi, rsi, stochRsiPeriod) // Stochastic RSI calculation using the RSI values // Apply smoothing to StochRSI K and D lines k = ta.sma(stochRSI, kPeriod) d = ta.sma(k, dPeriod) // Plot Stochastic RSI on separate panel plot(k, title="StochRSI K", color=color.green, linewidth=2) plot(d, title="StochRSI D", color=color.red, linewidth=2) hline(overboughtLevel, "Overbought", color=color.red, linestyle=hline.style_dashed) hline(oversoldLevel, "Oversold", color=color.green, linestyle=hline.style_dashed) // Buy and Sell Signals based on both Stochastic RSI and Candlestick patterns buySignal = ta.crossover(k, oversoldLevel) and close > open // Buy when K crosses above oversold level and close > open (bullish candle) sellSignal = ta.crossunder(k, overboughtLevel) and close < open // Sell when K crosses below overbought level and close < open (bearish candle) // Plot Buy/Sell signals as shapes on the chart plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", size=size.small) plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", size=size.small) // Background color shading for overbought/oversold conditions bgcolor(k > overboughtLevel ? color.new(color.red, 90) : na) bgcolor(k < oversoldLevel ? color.new(color.green, 90) : na) // Place actual orders with Stochastic RSI + candlestick pattern confirmation if (buySignal) strategy.entry("Long", strategy.long) if (sellSignal) strategy.entry("Short", strategy.short) // Optionally, you can add exit conditions for closing long/short positions // Close long if K crosses above the overbought level if (ta.crossunder(k, overboughtLevel)) strategy.close("Long") // Close short if K crosses below the oversold level if (ta.crossover(k, oversoldLevel)) strategy.close("Short")