
Chiến lược này được gọi là Momentum Trend, nó kết hợp các lợi thế của MACD và Bollinger Bands để thực hiện một chiến lược theo dõi xu hướng. Chiến lược này sử dụng đường nhanh và đường chậm của MACD để xây dựng Bollinger Bands, đường trung tâm của Bollinger Bands là đường tín hiệu của MACD.
Các chỉ số trung tâm của chiến lược này là MACD và Brin. Trong đó, chỉ số MACD bao gồm đường nhanh, đường chậm và chênh lệch MACD. Đường nhanh thường có 12 ngày EMA và đường chậm có 26 ngày EMA. Điểm chênh lệch của chúng là cột MACD.
Khi giá từ dưới lên phá vỡ đường buôn xuống, nó tạo ra tín hiệu mua; khi giá từ trên xuống phá vỡ đường buôn lên, nó tạo ra tín hiệu bán. Để giảm khả năng bị đặt và bỏ lỡ cơ hội đảo ngược, chiến lược này không tham gia ngay lập tức khi phá vỡ đường buôn, mà là chờ đợi giá quay trở lại kiểm tra đường trung tâm của đường buôn.
Ngoài ra, Brin có thể sử dụng đường lên và đường xuống để làm điểm kháng cự và hỗ trợ. Khi giá tăng, đường lên là kháng cự, đường xuống là hỗ trợ; khi giá giảm, đường lên là hỗ trợ, đường xuống là kháng cự.
Chiến lược này kết hợp lợi thế của hai chỉ số MACD và Blink Belt để thực hiện theo dõi xu hướng, với các lợi thế sau:
MACD có khả năng đánh giá xu hướng mạnh mẽ hơn, và Brin có sự điều chỉnh tự điều chỉnh, kết hợp cả hai có thể đánh giá hiệu quả điểm chuyển hướng.
Việc quay trở lại có thể tránh được rủi ro dừng lỗ và theo dõi xu hướng đường dài trung bình.
Sử dụng kháng cự và hỗ trợ trên Brin Belt có thể khóa lợi nhuận hơn nữa.
Các tham số của MACD và Brin có thể được điều chỉnh linh hoạt và áp dụng cho nhiều môi trường thị trường.
Chiến lược này cũng có một số rủi ro cần lưu ý:
Trong xu hướng chấn động, MACD và Brin có thể có nhiều tín hiệu thất bại. Khi đó, cần giảm quy mô vị trí để tránh tổn thất lớn.
Cần thiết lập lệnh dừng lỗ khi quay trở lại, tránh quay trở lại quá sâu dẫn đến tổn thất mở rộng.
Các tham số Brin cần được điều chỉnh theo biến động của thị trường, nếu các tham số được đặt không đúng sẽ làm tăng xác suất phá vỡ giả.
Quản lý rủi ro tốt và kiểm soát vị trí là chìa khóa để chiến lược này có lợi nhuận liên tục.
Chiến lược này cũng có thể được tối ưu hóa theo các hướng sau:
Tối ưu hóa các tham số của MACD, thay đổi thành đường nhanh 8 ngày, đường chậm 20 ngày, điều chỉnh theo các giống và chu kỳ khác nhau, tăng độ nhạy của chỉ số.
Tăng khả năng đánh giá xu hướng đi lên đi xuống, tối ưu hóa các tham số của vùng Brin, giảm tỷ lệ tín hiệu giả của thị trường xung đột.
Tăng chiến lược dừng lỗ, sử dụng đường ray trên và dưới của Brin để thiết lập đường dừng lỗ, kiểm soát rủi ro.
Tham gia vào các chương trình nghiên cứu về các tiêu chí và tiêu chí của chính sách, và tham gia vào các chương trình nghiên cứu về các tiêu chí và tiêu chí.
Chiến lược Momentum Trend dựa trên MACD và Brin Belt, theo dõi xu hướng đường dài trung bình thông qua các chỉ số kết hợp, giảm rủi ro khi quay trở lại. Nó tối ưu hóa các thiết lập tham số, kiểm soát rủi ro, hoạt động tốt trong các giống xu hướng. Nhưng không có chiến lược nào hoàn hảo, cần chúng ta liên tục tối ưu hóa và cải tiến từ nhiều góc độ để thích ứng với môi trường thị trường thay đổi.
/*backtest
start: 2023-02-22 00:00:00
end: 2024-02-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//Simple strategy based on MACD and Bollinger Bands, where BBs are calculatend from macd signal.
strategy("Strategy MACD vs BB", overlay=false)
fast_length = input(title="Fast MA period", type=input.integer, defval=8)
slow_length = input(title="Slow MA period", type=input.integer, defval=21)
src = input(close,"Source")
// ----------MA calculation - ChartArt-------------
smoothinput = input(1, minval=1, maxval=4, title='Moving Average Calculation: (1 = SMA), (2 = EMA), (3 = WMA), (4 = Linear)')
fast_ma = smoothinput == 1 ? sma(src, fast_length):smoothinput == 2 ? ema(src, fast_length):smoothinput == 3 ? wma(src, fast_length):smoothinput == 4 ? linreg(src, fast_length,0):na
slow_ma = smoothinput == 1 ? sma(src, slow_length):smoothinput == 2 ? ema(src, slow_length):smoothinput == 3 ? wma(src, slow_length):smoothinput == 4 ? linreg(src, slow_length,0):na
//----------------------------------------------
macd = fast_ma - slow_ma
p1=plot(macd,"macd signal",color=color.blue)
length = input(40, minval=1)
mult = input(2.0,"BB multiplier")
basis = sma(macd, length)
dev = mult * stdev(macd, length)
plot(basis,"BB basis",color=color.orange)
upper = basis + dev
lower = basis - dev
p2=plot(upper,"BB upper",color=color.red)
p3=plot(lower,"BB basis",color=color.green)
longCondition = crossover(macd, lower)
shortCondition = crossunder(macd, upper)
plotshape(longCondition?lower:na, title="Long", style=shape.xcross, location=location.absolute, text="Long", color=color.green, transp=0, size=size.tiny)
plotshape(shortCondition?upper:na, title="Short", style=shape.xcross, location=location.absolute, text="Short", color=color.red, transp=0, size=size.tiny)
fill(p1,p3,color=macd<lower?color.green:na,transp=90,title="support")
fill(p1,p2,color=macd>upper?color.red:na,transp=90,title="resistance")
if longCondition
strategy.entry("Long",strategy.long)
if shortCondition
strategy.entry("Short",strategy.short)