Chiến lược này sử dụng hai đường EVWMA với các giai đoạn khác nhau để tạo ra các dấu chéo và tạo ra tín hiệu mua và bán. Khi đường ngắn vượt qua đường dài, nó tạo ra tín hiệu mua. Khi đường ngắn vượt qua đường dài, nó tạo ra tín hiệu bán.
Chiến lược xác định sự thay đổi xu hướng bằng cách tính toán và vượt qua hai đường EVWMA với các giai đoạn khác nhau.
Cụ thể, nó đầu tiên tính toán hai đường EVWMA:
Đường dài hạn ngắn m1, với thời gian dài1, mặc định là 5
Đường dài thời gian m2, với thời gian dài2, mặc định là 40
Sau đó nó sử dụng các chức năng chéo và chéo để xác định các tình huống chéo giữa m1 và m2:
Nếu m1 vượt qua m2, nó tạo ra một tín hiệu mua và thực hiện hoạt động dài
Nếu m1 vượt dưới m2, nó tạo ra một tín hiệu bán và thực hiện hoạt động ngắn
Lưu ý rằng EVWMA cho trọng lượng nhiều hơn cho dữ liệu gần đây so với trung bình di chuyển đơn giản.
data = (nz(data[1]) * (nb_floating_shares - volume)/nb_floating_shares) + (volume_price/nb_floating_shares)
Trong đó nz ((data[1]) là giá trị EVWMA của giai đoạn trước, nb_floating_shares là tổng khối lượng của giai đoạn, khối lượng là khối lượng của giai đoạn hiện tại và khối lượng_giá là doanh thu của giai đoạn hiện tại.
Những lợi thế của chiến lược này bao gồm:
EVWMA phản ứng nhanh hơn với sự thay đổi giá và cải thiện cơ hội lợi nhuận
Crossover của hai đường EVWMA xác định điểm chuyển đổi kịp thời
Logic đơn giản và dễ thực hiện
Thời gian tùy chỉnh để thích nghi với môi trường thị trường khác nhau
Không cần tối ưu hóa tham số phức tạp và dễ dàng giao dịch trực tiếp
Ngoài ra còn có một số rủi ro với chiến lược này:
Crossover có thể tạo ra các tín hiệu không hợp lệ quá mức mà không lọc tiếng ồn thị trường
Khó xác định các điểm đảo ngược xu hướng và rủi ro thiếu đảo ngược
Không dừng lỗ hoặc kiếm lợi nhuận, không thể kiểm soát rủi ro hiệu quả
Tối ưu hóa tham số không đủ dẫn đến cài đặt thời gian không đúng
Một số hướng để cải thiện chiến lược:
Thêm dừng lỗ và lấy lợi nhuận để kiểm soát nghiêm ngặt rủi ro
Tối ưu hóa thời gian dài để tìm các thông số tốt nhất
Thêm bộ lọc khối lượng để giảm các giao dịch không hợp lệ
Kết hợp với các chỉ số đảo ngược để tránh bỏ lỡ đảo ngược
Tối ưu hóa các thông số năng động dựa trên những thay đổi trên thị trường
Phân biệt thị trường bò và thị trường gấu và sử dụng các thông số khác nhau
Đưa ra các mô hình học máy để xác định thời gian giao dịch dựa trên dữ liệu lớn
Tóm lại, chiến lược chéo EVWMA này có thể xác định hiệu quả những thay đổi xu hướng và tạo ra các tín hiệu giao dịch bằng cách tính toán và vượt qua hai đường EVWMA. Logic rất đơn giản nhưng có những rủi ro và hướng cải thiện. Bằng cách tối ưu hóa dừng lỗ, lựa chọn tham số, tích hợp các chỉ số khác vv, chiến lược có thể được tăng cường cho giao dịch trực tiếp. Nhìn chung, đây là một khám phá có lợi về các chiến lược chéo trung bình động và đáng nghiên cứu và áp dụng thêm.
/*backtest start: 2023-08-18 00:00:00 end: 2023-08-26 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Elastic Volume Weighted Moving Average Cross Strategy", shorttitle="EVWMA Cross", overlay=true) length1=input(5, title="EVWMA Short") length2=input(40, title="EVWMA Long") nbfs1=sum(volume, length1) nbfs2=sum(volume, length2) medianSrc=close calc_evwma(price, length, nb_floating_shares) => data = (nz(data[1]) * (nb_floating_shares - volume)/nb_floating_shares) + (volume*price/nb_floating_shares) data m1=calc_evwma(medianSrc, length1, nbfs1) m2=calc_evwma(medianSrc, length2, nbfs2) if (crossover(m1, m2)) strategy.entry("MA2CrossLE", strategy.long, comment="MA2CrossLE") if (crossunder(m1, m2)) strategy.entry("MA2CrossSE", strategy.short, comment="MA2CrossSE") p1=plot(m1,color=orange,linewidth=2, title="evwma") p2=plot(m2,color=orange,linewidth=2, title="evwma")