Chiến lược kết hợp đường trung bình động chéo và MACD


Ngày tạo: 2023-10-24 13:51:02 sửa đổi lần cuối: 2023-10-24 13:51:02
sao chép: 1 Số nhấp chuột: 843
1
tập trung vào
1617
Người theo dõi

Chiến lược kết hợp đường trung bình động chéo và MACD

Tổng quan

Chiến lược này sử dụng tổng hợp hệ thống chéo đường trung bình di chuyển và chỉ số MACD để thực hiện chiến lược giao dịch tự động làm nhiều hơn trong giai đoạn ngân hàng xu hướng và dừng lỗ tại điểm chuyển hướng. Chiến lược này được gọi là chiến lược chéo đường trung bình và MACD.

Nguyên tắc

Chiến lược này chủ yếu dựa trên sự kết hợp của hệ thống giao thoa đường trung bình với chỉ số MACD. Cụ thể, khi đường trung bình ngắn hạn đi qua đường trung bình dài hạn, hãy làm nhiều hơn; khi đường trung bình ngắn hạn đi qua đường trung bình dài hạn, hãy làm trống.

Đồng thời, hỗ trợ sử dụng chỉ số MACD để xác nhận tín hiệu giao dịch. Chỉ khi MACD trên đường DIFF xuyên qua đường DEA, tín hiệu được phát ra nhiều lần. Một khi DIFF dưới đường DEA, nhiều lần dừng sẽ được xóa.

Ngoài ra, chiến lược này cũng sử dụng RSI để tránh quá nhiều shorting, chỉ khi RSI thấp hơn 30% thì sẽ mở lệnh shorting.

Về dừng lỗ, chiến lược sử dụng phương pháp theo dõi dừng lỗ với tỷ lệ phần trăm cố định, điểm dừng nhiều đơn giảm 1% giá vào và điểm dừng một đơn tăng 1% giá vào. Đồng thời, chiến lược cũng thực hiện dừng di động, dừng lại khi lợi nhuận nổi nhiều đơn đạt 3% giá vào.

Phân tích lợi thế

Ưu điểm lớn nhất của chiến lược này là sử dụng hệ thống đường trung bình để xác định hướng xu hướng lớn, sau đó sử dụng chỉ số MACD để vào thị trường, có thể lọc hiệu quả các phá vỡ giả. So với việc sử dụng hệ thống chéo đường trung bình đơn lẻ, có thể giảm số lần giao dịch không hiệu quả và tăng khả năng kiếm lợi nhuận.

Ngoài ra, chiến lược sử dụng tỷ lệ dừng cố định và dừng di động có thể kiểm soát lỗ trong phạm vi chấp nhận được, đồng thời dừng lại sớm nhất có thể và khóa lợi nhuận với điều kiện đảm bảo lợi nhuận. Điều này có thể làm giảm rút tiền tài khoản trong giao dịch thực tế và giảm tổn thất do tham lam.

Phân tích rủi ro

Những rủi ro chính trong chiến lược này là:

  1. Các hệ thống chéo đường trung bình có sự chậm trễ, có thể gây ra sự chậm trễ vào điểm và bỏ lỡ điểm vào điểm tốt nhất. Bạn có thể giảm độ chậm trễ bằng cách tối ưu hóa các tham số đường trung bình.

  2. Chỉ số MACD dễ tạo ra tín hiệu giả, cần trợ giúp các chỉ số khác để lọc. Bạn có thể xem xét thêm các chỉ số như KDJ để tối ưu hóa.

  3. Phương pháp dừng lỗ phần trăm cố định đôi khi không thể dừng lỗ kịp thời, có thể được thay đổi thành dừng lỗ theo dõi động.

  4. Chiến lược rút lui có thể lớn hơn, bạn có thể xem xét giảm vị trí tránh rủi ro.

  5. Chiến lược chỉ làm nhiều mà không làm空, có những hạn chế chỉ với xu hướng đa chiều, bạn có thể xem xét tham gia vào cơ chế làm空.

Hướng tối ưu hóa

Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:

  1. Tối ưu hóa tham số đường trung bình để tín hiệu đường trung bình chính xác hơn. Có thể thử nghiệm các loại đường trung bình khác nhau như EMA, SMA.

  2. Thêm các chỉ số khác để lọc các tín hiệu chéo đường trung bình như KDJ, RSI, v.v. để giảm giao dịch sai.

  3. Thử các phương pháp dừng động để kiểm soát rủi ro tốt hơn. Ví dụ như dừng theo dõi, dừng ATR.

  4. Thêm một cơ chế giảm giá để chiến lược có thể kiếm lợi nhuận trong tình huống giảm giá.

  5. Tối ưu hóa quản lý vốn, điều chỉnh kích thước vị trí, giảm tối đa rút tiền.

  6. Thử nghiệm hiệu quả của các hợp đồng khác nhau, mở rộng phạm vi áp dụng chiến lược.

  7. Tăng các thuật toán học máy, sử dụng các thuật toán để tự động tối ưu hóa các tham số, giảm sự can thiệp của con người.

Tóm tắt

Chiến lược này tích hợp các ưu điểm của hệ thống chéo tuyến tính và chỉ số MACD để đạt được tỷ lệ lợi nhuận cao hơn. Bằng cách tối ưu hóa các thiết lập tham số, thêm các chỉ số khác và cải thiện cách dừng lỗ, bạn có thể tăng cường sự ổn định của chiến lược và giảm rút lui.

Mã nguồn chiến lược
/*backtest
start: 2023-10-16 00:00:00
end: 2023-10-23 00:00:00
period: 2m
basePeriod: 1m
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/
// © Toxic_Cat_

//@version=5
// strategy("MA_50_200_CROSS", overlay=true, margin_long=100, margin_short=100)

EMA21 = ta.ema(close, 21)
EMA100 = ta.ema(close, 100)
[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)

plot(EMA21)
plot(EMA100, color = color.orange)

openLong = ta.crossover(EMA21, EMA100) and macdLine > signalLine
openShort = ta.crossunder(EMA21, EMA100) and ta.rsi(close, 14) <= 33

crossunderMACD = ta.crossunder(macdLine, signalLine)


if (strategy.opentrades < 1)
    if openLong 
        strategy.entry("L",strategy.long, 1)

   if openShort
      strategy.entry("S",strategy.short, 1)

// slose long
// if ((strategy.opentrades.entry_price(0) + strategy.opentrades.entry_price(0)*0.03) <= open) 
//     strategy.exit("profit L", "L", limit = close)

// else if strategy.opentrades.entry_price(0) - strategy.opentrades.entry_price(0)*0.01 >= open or crossunderMACD
//     strategy.exit("loss L", "L", stop = close)

// slose short
// if (strategy.opentrades.entry_price(0) - strategy.opentrades.entry_price(0)*0.03) >= open
//     strategy.exit("profit S", "S", limit = (strategy.opentrades.entry_price(0) - strategy.opentrades.entry_price(0)*0.03))

// else if strategy.opentrades.entry_price(0) + strategy.opentrades.entry_price(0)*0.01 <= open
//    strategy.exit("loss S", "S", stop = (strategy.opentrades.entry_price(0) + strategy.opentrades.entry_price(0)*0.01))