
Chiến lược này là một chiến lược giao dịch theo dõi xu hướng và phá vỡ xu hướng dựa trên các chỉ số RSI và EMA. Chiến lược này được gọi là Chiến lược phá vỡ xu hướng RSI-EMA. Nó kết hợp theo dõi xu hướng và chỉ số biến động, nhằm mục đích nắm bắt hướng của xu hướng đường dài và đường dài, để tham gia vào điểm phá vỡ xu hướng.
Chiến lược sử dụng 5 ngày EMA, 20 ngày EMA và 50 ngày EMA để xây dựng khuôn khổ xu hướng nhiều đường trống. Xác định xu hướng nhiều đầu gần đây nhất bị phá vỡ, làm nhiều hơn khi 5 ngày EMA vượt qua 20 ngày EMA và cả hai EMA trên 50 ngày EMA; Xác định xu hướng nhiều đầu gần đây nhất bị phá vỡ, làm nhiều hơn khi 5 ngày EMA vượt qua 20 ngày EMA và cả hai EMA dưới 50 ngày EMA.
Trong khi đó, chiến lược này cũng kết hợp với chỉ số RSI để xác định xem có quá nhiều vùng quá mua hay quá bán hay không. RSI có thể xác định hiệu quả tình huống quá mua và quá bán, tránh tạo ra tín hiệu sai khi xu hướng lên đỉnh hoặc thu hẹp.
Chiến lược này kết hợp với các chỉ số EMA và RSI, có thể nắm bắt xu hướng đường dài và tránh rủi ro ở cuối xu hướng, có đặc điểm lợi nhuận rủi ro rất tốt. Ưu điểm chính của nó là:
Chiến lược này cũng có một số rủi ro, đặc biệt là:
Để giảm thiểu những rủi ro này, chúng ta có thể đặt lệnh dừng giao dịch, điều chỉnh các tham số RSI, hoặc kết hợp với các chỉ số khác để xác nhận.
Chiến lược này có thể được tối ưu hóa hơn nữa:
Chiến lược phá vỡ xu hướng RSI-EMA, kết hợp theo dõi xu hướng và đánh giá thời gian nhập, thu được lợi nhuận xu hướng dựa trên việc kiểm soát rủi ro, là một chiến lược trung bình dài rất thực tế. Chúng ta có thể tăng thêm sự ổn định và lợi nhuận của chiến lược bằng cách tối ưu hóa tham số, thêm các chỉ số khác.
/*backtest
start: 2023-11-19 00:00:00
end: 2023-12-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © BrendanW98
//@version=4
strategy("My Strategy", overlay=true)
ema5 = ema(close, 9)
ema20 = ema(close, 21)
ema50 = ema(close, 55)
//RSI Signals
// Get user input
rsiSource = close
rsiLength = 14
rsiOverbought = 70
rsiOversold = 30
rsiMid = 50
// Get RSI value
rsiValue = rsi(rsiSource, rsiLength)
//See if RSI crosses 50
doBuy = crossover(rsiValue, rsiOversold) and rsiValue < 50
doSell = crossunder(rsiValue, rsiOverbought) and rsiValue > 50
emacrossover = crossover(ema5, ema20) and ema5 > ema50 and ema20 > ema50 and close > ema50
emacrossunder = crossunder(ema5, ema20) and ema5 < ema50 and ema20 < ema50 and close < ema50
//Entry and Exit
longCondition = emacrossover
closelongCondition = doSell
strategy.entry("Long", strategy.long, 1, when=longCondition)
strategy.close("Long", when=closelongCondition)
shortCondition = emacrossunder
closeshortCondition = doBuy
strategy.entry("Short", strategy.short, 1, when=shortCondition)
strategy.close("Short", when=closeshortCondition)