Chiến lược theo đường trung bình di chuyển kép là một chiến lược theo xu hướng dựa trên đường trung bình di chuyển. Nó xác định hướng xu hướng bằng cách tính toán đường trung bình di chuyển của các giai đoạn khác nhau và tạo ra các tín hiệu giao dịch phù hợp. Nó đi dài khi đường trung bình di chuyển ngắn hạn vượt qua đường trung bình di chuyển dài hạn, và đi ngắn khi đường trung bình di chuyển ngắn hạn vượt qua đường trung bình di chuyển dài hạn. Chiến lược theo xu hướng để kiếm lợi nhuận.
Đường trung bình di chuyển kép sau chiến lược đánh giá hướng xu hướng bằng cách tính toán đường trung bình di chuyển đơn giản (SMA) 14 giai đoạn và 28 giai đoạn của giá đóng cửa. Cụ thể, nó tính toán đường trung bình di chuyển đơn giản (SMA) 14 giai đoạn và đường trung bình di chuyển đơn giản (SMA) 28 giai đoạn của giá đóng cửa vào cuối mỗi giai đoạn. Khi đường trung bình di chuyển 14 giai đoạn vượt qua đường trung bình di chuyển 28 giai đoạn, nó gửi tín hiệu dài và mở một vị trí dài. Khi đường trung bình di chuyển đơn giản (SMA) 14 giai đoạn vượt dưới đường trung bình di chuyển 28 giai đoạn, nó gửi tín hiệu ngắn và mở một vị trí ngắn.
Sau khi nhập vị trí, nó quản lý rủi ro bằng cách thiết lập mức lợi nhuận và dừng lỗ. Các điểm lợi nhuận và dừng lỗ được chuyển đổi thành giá dựa trên các thông số đầu vào. Nó cũng vẽ đường lợi nhuận, đường dừng lỗ và đường giá trung bình vào biểu đồ để đánh giá thị giác lợi nhuận và rủi ro.
Phương pháp theo dõi đường trung bình động kép có những lợi thế sau:
Phương pháp chuyển động hai lần sau đây cũng có một số rủi ro:
Các rủi ro có thể được quản lý từ các khía cạnh sau:
Trung bình di chuyển kép theo chiến lược sau có thể được tối ưu hóa theo các cách sau:
Thêm các chỉ số biến động cho điểm dừng lỗ động. Ví dụ, kết hợp với ATR để mở rộng dừng lỗ khi biến động tăng để tránh thoát sớm.
Tối ưu hóa các thông số chu kỳ trung bình động bằng cách thử nghiệm nhiều kết hợp hơn và chọn các khoảng thời gian phù hợp với tần suất giao dịch phù hợp.
Thêm chỉ số lọc xu hướng, chẳng hạn như MACD, DMI để tránh tín hiệu sai gần các điểm chuyển hướng xu hướng, giảm các giao dịch không cần thiết.
Tăng các mô hình học máy để dự đoán xu hướng giá và thay thế các quy tắc truyền thống.
Đa dạng hóa các loại giao dịch sử dụng tương quan thấp để giảm tổng số thu hút.
Tóm lại, chiến lược theo dõi đường trung bình động kép là một hệ thống theo xu hướng đơn giản và thực tế. Nó di chuyển dọc theo xu hướng do đó có rủi ro rút vốn thấp hơn và dễ thực hiện. Chúng ta có thể tối ưu hóa nó bằng cách điều chỉnh các tham số chu kỳ, đặt dừng lỗ và lấy lợi nhuận, thêm các chỉ số đánh giá xu hướng, để thích nghi với nhiều môi trường thị trường hơn và kiếm được lợi nhuận ổn định hơn.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m 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/ // © coinilandBot // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © adolgov // @description // //@version=4 strategy("coiniland copy trading platform", overlay=true) // random entry condition longCondition = crossover(sma(close, 14), sma(close, 28)) if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = crossunder(sma(close, 14), sma(close, 28)) if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) moneyToSLPoints(money) => strategy.position_size !=0 ? (money / syminfo.pointvalue / abs(strategy.position_size)) / syminfo.mintick : na p = moneyToSLPoints(input(200, title = "Take Profit $$")) l = moneyToSLPoints(input(100, title = "Stop Loss $$")) strategy.exit("x", profit = p, loss = l) // debug plots for visualize SL & TP levels pointsToPrice(pp) => na(pp) ? na : strategy.position_avg_price + pp * sign(strategy.position_size) * syminfo.mintick pp = plot(pointsToPrice(p), style = plot.style_linebr ) lp = plot(pointsToPrice(-l), style = plot.style_linebr ) avg = plot( strategy.position_avg_price, style = plot.style_linebr ) fill(pp, avg, color = color.green) fill(avg, lp, color = color.red)