Tài nguyên đang được tải lên... tải...

Nhiều khung thời gian với các chiến lược theo dõi xu hướng của bộ lọc 200 EMA - chỉ cần làm nhiều hơn

Tác giả:ChaoZhang, Ngày: 2024-05-23 18:07:50
Tags:EMA

多时间框架与200EMA过滤器的趋势跟踪策略 - 仅做多

Thông tin chi tiết

Chiến lược này là một chiến lược theo dõi xu hướng dựa trên đường trung bình chuyển động của chỉ số đa khung thời gian (EMA) và bộ lọc EMA 200 ngày. Ý tưởng chính của nó là sử dụng EMA của các khung thời gian khác nhau để xác định hướng xu hướng của thị trường và đặt nhiều vị trí khi xu hướng tăng và giá trên EMA 200 ngày. Điều này đảm bảo chỉ giao dịch trong xu hướng tăng mạnh để nắm bắt xu hướng tăng liên tục, đồng thời sử dụng các cơ chế dừng lỗ và ngăn chặn rủi ro.

Chiến lược sử dụng ba khung thời gian 5, 15 và 30 phút để tính toán EMA nhanh và EMA chậm. Bằng cách so sánh EMA nhanh và EMA chậm trong mỗi khung thời gian, bạn có thể xác định hướng xu hướng của khung thời gian đó. Sau đó, tổng các tín hiệu xu hướng của ba khung thời gian sẽ tạo ra một tín hiệu xu hướng tổng hợp.

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

  1. EMA nhanh (định dạng 9 giai đoạn) và EMA chậm (định dạng 21 giai đoạn) được tính theo khung thời gian 5 phút, 15 phút và 30 phút.
  2. Tính toán EMA 200 ngày trên khung thời gian 5 phút, làm bộ lọc xu hướng.
  3. Đối với mỗi khung thời gian, so sánh kích thước EMA nhanh hơn và EMA chậm hơn, nhanh hơn là xu hướng tăng (+1) và chậm hơn là xu hướng giảm (+-1).
  4. Kết hợp các tín hiệu xu hướng của ba khung thời gian để có được một tín hiệu xu hướng tổng hợp trong khoảng [-3, 3].
  5. Khi tín hiệu xu hướng tổng thể bằng 3 (giá tăng mạnh) và giá đóng cửa hiện tại ở trên EMA 200 phút 5 thì mở nhiều hơn.
  6. Khi tín hiệu xu hướng tổng thể nhỏ hơn 3 (trong xu hướng tăng dần) hoặc giá giảm xuống dưới 5 phút EMA 200, giá sẽ ngang hàng.
  7. Khi mở giao dịch, lệnh dừng lỗ được đặt ở mức 1% dưới giá mở và lệnh dừng lỗ được đặt ở mức 3% trên giá mở.

Phân tích ưu thế

  1. Sử dụng các tín hiệu xu hướng trên nhiều khung thời gian, có thể đánh giá xu hướng thị trường một cách toàn diện hơn và giảm các tín hiệu giả.
  2. Bộ lọc EMA 200 đảm bảo giao dịch chỉ trong xu hướng tăng mạnh, tăng tỷ lệ thành công.
  3. Các điều kiện mở thanh toán nghiêm ngặt và ngăn chặn dừng lỗ giúp kiểm soát rủi ro và tăng tỷ lệ lợi nhuận rủi ro.
  4. Các tham số có thể được điều chỉnh, phù hợp với các thị trường và phong cách giao dịch khác nhau.

Phân tích rủi ro

  1. Phản ứng có thể chậm hơn ở thời điểm thay đổi xu hướng và bỏ lỡ thời điểm tốt nhất để xây dựng kho.
  2. Việc mở giao dịch thường xuyên có thể làm tăng chi phí giao dịch.
  3. Các vị trí dừng lỗ được cố định và có thể được dừng lỗ sớm trong các thị trường biến động hơn.
  4. Phương pháp đánh giá xu hướng dựa trên dữ liệu lịch sử, có thể phản ứng không kịp thời với biến động giá do sự kiện bất ngờ.

Định hướng tối ưu

  1. Tạo thêm khung thời gian hoặc tối ưu hóa các khung thời gian hiện có để tăng độ chính xác và kịp thời của việc đánh giá xu hướng.
  2. Tối ưu hóa vị trí dừng lỗ và dừng đòn, ví dụ như giới thiệu dừng lỗ theo dõi hoặc dừng đòn động để phù hợp với các tình huống thị trường khác nhau.
  3. Ngoài các tín hiệu xu hướng, việc đưa ra các tín hiệu khác như khối lượng giao dịch, động lực, v.v. tạo ra nhiều yếu tố để mở các điều kiện giao dịch, cải thiện tính ổn định của chiến lược.
  4. Tối ưu hóa các tham số để tìm ra sự kết hợp các tham số phù hợp nhất với thị trường hiện tại.
  5. Theo đó, các nhà nghiên cứu cho biết: "Chúng tôi đang xem xét tham gia vào cơ chế làm trống và mở rộng phạm vi áp dụng".

Tóm lại

Chiến lược này xác định hướng xu hướng bằng cách so sánh EMA trên nhiều khung thời gian, đồng thời sử dụng EMA 200 ngày như một bộ lọc xu hướng, tạo ra nhiều vị trí để nắm bắt xu hướng tăng mạnh khi xu hướng rõ ràng tăng và giá trên đường trung bình dài hạn. Các điều kiện mở ngang hạn chặt chẽ và nắp dừng lỗ cố định giúp kiểm soát rủi ro. Tuy nhiên, chiến lược này có thể phản ứng chậm hơn ở các điểm biến đổi xu hướng và giữ vị trí dừng lỗ cố định, có giới hạn khi đối phó với biến động đột ngột của thị trường. Trong tương lai, các chiến lược có thể được cải thiện tính linh hoạt và ổn định bằng cách giới thiệu nhiều khung thời gian hơn, tối ưu hóa stop-loss, thêm nhiều tín hiệu giao dịch, tối ưu hóa các tham số, để có thể nắm bắt tốt hơn cơ hội thị trường và kiểm soát rủi ro.


/*backtest
start: 2023-05-17 00:00:00
end: 2024-05-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Multi-Timeframe Trend Following with 200 EMA Filter - Longs Only", shorttitle="MTF_TF_200EMA_Longs", overlay=true, initial_capital=1000, default_qty_type=strategy.fixed, default_qty_value=1)

// Inputs
fast_length = input.int(9, title="Fast EMA Length", minval=1)
slow_length = input.int(21, title="Slow EMA Length", minval=1)
filter_length_200 = input.int(200, title="200 EMA Length", minval=1)
stop_loss_perc = input.float(1.0, title="Stop Loss Percentage", minval=0.1) / 100
take_profit_perc = input.float(3.0, title="Take Profit Percentage", minval=0.1) / 100

// Calculate EMAs for 5-minute, 15-minute, and 30-minute timeframes
ema_fast_5min = request.security(syminfo.tickerid, "5", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_5min = request.security(syminfo.tickerid, "5", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)

ema_fast_15min = request.security(syminfo.tickerid, "15", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_15min = request.security(syminfo.tickerid, "15", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)

ema_fast_30min = request.security(syminfo.tickerid, "30", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_30min = request.security(syminfo.tickerid, "30", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)

// Calculate 200 EMA for the 5-minute timeframe
ema_200_5min = ta.ema(close, filter_length_200)

// Determine the trend for each timeframe
trend_5min = ema_fast_5min > ema_slow_5min ? 1 : -1
trend_15min = ema_fast_15min > ema_slow_15min ? 1 : -1
trend_30min = ema_fast_30min > ema_slow_30min ? 1 : -1

// Combine trend signals
combined_trend = trend_5min + trend_15min + trend_30min

// Define entry and exit conditions with 200 EMA filter
enter_long = combined_trend == 3 and close > ema_200_5min
exit_long = combined_trend < 3 or close < ema_200_5min

// Plot EMAs for the 5-minute timeframe
plot(ema_fast_5min, color=color.blue, linewidth=2, title="Fast EMA 5min")
plot(ema_slow_5min, color=color.red, linewidth=2, title="Slow EMA 5min")
plot(ema_200_5min, color=color.green, linewidth=2, title="200 EMA 5min")

// Strategy execution
if (enter_long)
    strategy.entry("Long", strategy.long, stop=close * (1 - stop_loss_perc), limit=close * (1 + take_profit_perc))
if (exit_long)
    strategy.close("Long")


Nội dung liên quan

Nhiều hơn nữa