Chiến lược theo xu hướng dựa trên chỉ báo EVWMA


Ngày tạo: 2023-12-12 16:00:37 sửa đổi lần cuối: 2023-12-12 16:00:37
sao chép: 0 Số nhấp chuột: 682
1
tập trung vào
1621
Người theo dõi

Chiến lược theo xu hướng dựa trên chỉ báo EVWMA

Tổng quan

Chiến lược này dựa trên chỉ số EVWMA để thiết kế một chiến lược theo dõi xu hướng đơn giản. Chiến lược này sử dụng đường nhanh và đường chậm để xây dựng chỉ số EVWMA, làm nhiều hơn khi đi qua đường chậm trên đường nhanh và làm trống khi đi qua đường chậm dưới đường nhanh, để thực hiện theo dõi xu hướng.

Nguyên tắc chiến lược

Chỉ số cốt lõi của chiến lược này là EVWMA, tức là trung bình di chuyển có trọng lượng linh hoạt. Nó phản ánh xu hướng thị trường một cách động, kết hợp với thông tin về giá cả và khối lượng giao dịch bằng cách tính toán chiều dài chu kỳ của chính nó.

Cụ thể, độ dài của chu kỳ tính toán của đường nhanh là tổng số giao dịch của 10 đường K gần nhất, và độ dài của chu kỳ tính toán của đường chậm là tổng số giao dịch của 20 đường K gần nhất. EVWMA của mỗi đường K được tính theo công thức cuộn ((EVWMA ngày trước × (dài chu kỳ - khối lượng đường K hiện tại) + giá đóng cửa đường K hiện tại × khối lượng đường K hiện tại) / cuộn chiều dài chu kỳ). Như vậy, thông tin về giá cả và khối lượng giao dịch được kết hợp đồng thời.

Khi đường nhanh đi qua đường chậm, nó có nghĩa là mua tăng cường, làm nhiều hơn; khi đường nhanh đi qua đường chậm, nó có nghĩa là bán tăng cường, làm trống. Bằng cách kết hợp đường nhanh như vậy, bạn có thể nắm bắt xu hướng thị trường một cách động, thực hiện chiến lược theo dõi xu hướng.

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 thiết kế chu kỳ động của chỉ số EVWMA để phản ứng nhanh hơn với sự thay đổi giá cả và khối lượng giao dịch, nắm bắt xu hướng thị trường trong thời gian thực, điều này rất phù hợp với chiến lược theo dõi xu hướng. Ngoài ra, nó kết hợp thông tin về giá cả và khối lượng giao dịch, so với các chỉ số truyền thống như trung bình di chuyển, có thể lọc các đột phá giả.

Rủi ro và giải pháp

Rủi ro chính của chiến lược này là các vấn đề về thiết lập tham số chỉ số EVWMA. Nếu các chu kỳ đường nhanh và đường chậm được thiết lập không đúng cách, có thể dẫn đến việc tạo ra một lượng lớn tín hiệu giả. Ngoài ra, chiến lược theo dõi xu hướng tự nó chỉ có những hậu quả theo xu hướng trong trường hợp đảo ngược xu hướng của thị trường.

Để giải quyết các vấn đề này, bạn có thể tìm ra sự kết hợp tối ưu của các tham số bằng cách tối ưu hóa các tham số, điều chỉnh chu kỳ tính toán của đường nhanh và đường chậm. Đồng thời, bạn có thể thiết lập dừng lỗ để kiểm soát rủi ro mất mát.

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

Chiến lược này cũng có không gian để tối ưu hóa hơn nữa. Ví dụ, bạn có thể xem xét thêm các chỉ số khác, chẳng hạn như phá vỡ khối lượng giao dịch, Brin và các tín hiệu xác nhận khác để tăng sự ổn định của chiến lược. Ngoài ra, giá trị tối ưu của các tham số khác nhau cho các giống khác nhau và các bộ tham số khác nhau trong thời gian có thể khác nhau, và bạn có thể thiết lập cơ chế tối ưu hóa tự thích ứng cho tham số, điều chỉnh tham số dựa trên dữ liệu thời gian thực.

Từ mặt giao dịch, bạn cũng có thể thiết kế các phương pháp như dừng động, theo dõi dừng để kiểm soát rủi ro. Ngoài ra, giá trị tối ưu của các tham số khác nhau và các tham số khác nhau có thể khác nhau, bạn có thể thiết lập cơ chế tối ưu hóa tự thích ứng tham số, điều chỉnh tham số dựa trên dữ liệu thời gian thực.

Tóm tắt

Chiến lược này sử dụng thiết kế chu kỳ động của chỉ số EVWMA và xem xét thông tin về khối lượng giao dịch để xây dựng một chiến lược theo dõi xu hướng đơn giản và hiệu quả. Nó có thể phản ứng nhanh chóng với sự thay đổi giá và nắm bắt xu hướng thị trường.

Mã nguồn chiến lược
/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("QuantNomad - EVWMA Cross Strategy", shorttitle="EVWMA Cross", overlay=true)

// Inputs
fast_sum_length = input(10, title = "Fast Sum Length", type = input.integer)
slow_sum_length = input(20, title = "Slow Sum Length", type = input.integer)

// Calculate Volume Period
fast_vol_period = sum(volume, fast_sum_length)
slow_vol_period = sum(volume, slow_sum_length)

// Calculate EVWMA
fast_evwma = 0.0
fast_evwma := ((fast_vol_period - volume) * nz(fast_evwma[1], close) + volume * close) / (fast_vol_period)

// Calculate EVWMA
slow_evwma = 0.0
slow_evwma := ((slow_vol_period - volume) * nz(slow_evwma[1], close) + volume * close) / (slow_vol_period)

// Plot 
plot(fast_evwma, title = "EVWMA Fast", linewidth = 2, color = color.red)
plot(slow_evwma, title = "EVWMA Slow", linewidth = 2, color = color.green)

// Strategy
strategy.entry("Long",   true, when = crossover(fast_evwma, slow_evwma))
strategy.entry("Short", false, when = crossunder(fast_evwma, slow_evwma))