
Chiến lược này là một hệ thống giao dịch theo dõi xu hướng kết hợp các chỉ số tương đối mạnh (Stochastic RSI) và trung bình di chuyển (Moving Average). Chiến lược này phân tích các tín hiệu chéo của hai chỉ số kỹ thuật để xác định điểm biến của xu hướng thị trường, do đó nắm bắt các cơ hội giao dịch tiềm năng. Chiến lược này sử dụng nhiều phương thức xác minh chéo của các chỉ số, làm giảm hiệu quả nhiễu của tín hiệu giả và tăng độ chính xác của giao dịch.
Lập luận cốt lõi của chiến lược dựa trên hai hệ thống chỉ số chính:
Chiến lược này xây dựng một hệ thống giao dịch theo dõi xu hướng tương đối hoàn chỉnh bằng cách kết hợp các chỉ số tương đối mạnh ngẫu nhiên và hệ thống trung bình di chuyển. Ưu điểm của chiến lược là cơ chế xác minh chéo của nhiều chỉ số có thể làm giảm hiệu quả nhiễu tín hiệu giả.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Quantuan_Research
//@version=6
version=6
strategy("Quantuan Research - Alpha", overlay=true, pyramiding=200, default_qty_value=1)
// Define Stochastic RSI settings
lengthRSI = input(17, title="RSI Length")
lengthStoch = input(20, title="Stochastic Length")
src = input(close, title="Source")
rsi = ta.rsi(src, lengthRSI)
k = ta.stoch(rsi, rsi, rsi, lengthStoch)
d = ta.sma(k, 3)
// Define MA settings
fastMALength = input(10, title="Fast MA Length")
slowMALength = input(20, title="Slow MA Length")
fastMA = ta.sma(close, fastMALength)
slowMA = ta.sma(close, slowMALength)
// Define long and short conditions
longCondition = k < 17 and d < 23 and k > d
shortCondition = k > 99 and d > 90 and k < d
// Create long and short signals
if longCondition//@
strategy.entry("Long", strategy.long)
if shortCondition
strategy.entry("Short", strategy.short)
// Add alerts for long and short signals
alertcondition(longCondition, title="Long Signal", message="Long signal generated")
alertcondition(shortCondition, title="Short Signal", message="Short signal generated")
// Plot Moving Averages with color based on trend
plot(fastMA, color = fastMA > slowMA ? color.new(color.rgb(0, 255, 170), 0) : color.new(color.rgb(255, 0, 0), 0), title = 'Fast MA')
plot(slowMA, color = color.new(color.rgb(255, 255, 0), 0), title = 'Slow MA')