
Chiến lược này là một hệ thống giao dịch theo dõi xu hướng dựa trên nhiều chỉ số đường trung bình, MACD và RSI. Nó xác định xu hướng thị trường thông qua sự giao thoa của chỉ số di chuyển nhanh (EMA) và EMA chậm, và kết hợp tín hiệu mua bán quá mức RSI với xác nhận xu hướng MACD để tìm thời gian vào. Chiến lược được thiết kế chủ yếu cho thị trường ngoại hối, tăng độ chính xác và độ tin cậy của giao dịch bằng cách kết hợp nhiều chỉ số kỹ thuật.
Chiến lược sử dụng hệ thống EMA kép 50 chu kỳ và 200 chu kỳ làm cơ sở đánh giá xu hướng chính. Khi EMA nhanh ((50 chu kỳ) vượt qua EMA chậm ((200 chu kỳ), nó được đánh giá là xu hướng tăng; ngược lại là xu hướng giảm. Sau khi xác nhận hướng xu hướng, chiến lược sử dụng chỉ số RSI 14 chu kỳ và MACD với tham số 12 / 26 / 9 làm tín hiệu xác nhận phụ.
Đây là một chiến lược theo dõi xu hướng được thiết kế hợp lý, logic và rõ ràng, có thể nắm bắt được xu hướng thị trường tốt hơn thông qua việc sử dụng nhiều chỉ số kỹ thuật. Ưu điểm của chiến lược là khả năng theo dõi xu hướng vững chắc và hệ thống tín hiệu rõ ràng, nhưng đồng thời cũng có vấn đề về tín hiệu chậm trễ và phụ thuộc vào môi trường thị trường.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-10 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/
// © YDMykael
//@version=6
//@version=5
strategy("TrendScalp Bot", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// Inputs for indicators
fastEMA = input.int(50, title="Fast EMA")
slowEMA = input.int(200, title="Slow EMA")
rsiPeriod = input.int(14, title="RSI Period")
macdFast = input.int(12, title="MACD Fast Length")
macdSlow = input.int(26, title="MACD Slow Length")
macdSignal = input.int(9, title="MACD Signal Length")
// Indicators
fastEMAValue = ta.ema(close, fastEMA)
slowEMAValue = ta.ema(close, slowEMA)
rsiValue = ta.rsi(close, rsiPeriod)
[macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignal)
// Trend detection
isUptrend = fastEMAValue > slowEMAValue
isDowntrend = fastEMAValue < slowEMAValue
// Entry conditions
longCondition = isUptrend and rsiValue > 55 and macdLine > signalLine
shortCondition = isDowntrend and rsiValue < 45 and macdLine < signalLine
// Plot EMA
plot(fastEMAValue, color=color.blue, title="Fast EMA")
plot(slowEMAValue, color=color.red, title="Slow EMA")
// Buy/Sell signals
if (longCondition)
strategy.entry("Buy", strategy.long)
if (shortCondition)
strategy.entry("Sell", strategy.short)
// Exit on opposite signal
if (not isUptrend or not (macdLine > signalLine))
strategy.close("Buy")
if (not isDowntrend or not (macdLine < signalLine))
strategy.close("Sell")
// Alerts
alertcondition(longCondition, title="Buy Alert", message="TrendScalp Bot: Buy Signal")
alertcondition(shortCondition, title="Sell Alert", message="TrendScalp Bot: Sell Signal")