Xu hướng EMA kết hợp với chiến lược giao dịch đột phá chu kỳ

EMA SL TP ROI
Ngày tạo: 2025-01-17 16:17:10 sửa đổi lần cuối: 2025-01-17 16:17:10
sao chép: 4 Số nhấp chuột: 466
1
tập trung vào
1617
Người theo dõi

Xu hướng EMA kết hợp với chiến lược giao dịch đột phá chu kỳ

Tổng quan

Đây là chiến lược giao dịch định lượng kết hợp xu hướng EMA, đột phá chu kỳ và lọc phiên giao dịch. Chiến lược này chủ yếu dựa trên phán đoán hướng xu hướng của đường trung bình động và sử dụng mô hình đột phá của giá tại vị trí chu kỳ quan trọng làm tín hiệu giao dịch. Đồng thời, giới thiệu bộ lọc thời gian giao dịch để cải thiện chất lượng giao dịch. Chiến lược này sử dụng phương pháp dừng lỗ và chốt lời theo phần trăm để kiểm soát rủi ro.

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

Logic cốt lõi của chiến lược bao gồm các yếu tố chính sau:

  1. Sử dụng đường EMA 20 ngày như một công cụ phát hiện xu hướng và chỉ mua vào khi giá cao hơn đường EMA và bán ra khi giá thấp hơn đường EMA.
  2. Tìm kiếm các mô hình nhấn chìm gần mức xoay vòng quan trọng (số tròn 5 USD) làm tín hiệu giao dịch
  3. Chỉ mở các vị thế trong phiên giao dịch London và New York để tránh những giai đoạn biến động thấp
  4. Tín hiệu dài hạn phải đáp ứng đồng thời các điều kiện sau: Mô hình nhấn chìm tăng giá, giá trên EMA và trong phiên giao dịch hợp lệ
  5. Tín hiệu bán phải đáp ứng đồng thời các điều kiện sau: Mô hình Bearish Engulfing, Giá dưới EMA và trong phiên giao dịch hợp lệ
  6. Sử dụng tỷ lệ rủi ro-lợi nhuận 1% và dừng lỗ 1,5% để quản lý giao dịch

Lợi thế chiến lược

  1. Cơ chế xác nhận tín hiệu đa dạng cải thiện đáng kể độ tin cậy của giao dịch
  2. Kết hợp phân tích kỹ thuật và tâm lý giá để cải thiện tỷ lệ chiến thắng của bạn
  3. Lọc theo thời gian đảm bảo giao dịch trong thời gian thị trường hoạt động và tránh đột phá sai
  4. Tỷ lệ dừng lỗ và chốt lời cố định giúp quản lý rủi ro dễ dàng hơn
  5. Logic chiến lược rõ ràng, dễ hiểu và dễ thực hiện
  6. Phù hợp với môi trường thị trường biến động

Rủi ro chiến lược

  1. Có thể tạo ra quá nhiều tín hiệu sai trong thị trường đi ngang
  2. Lệnh dừng lỗ và chốt lời cố định không đủ linh hoạt và có thể bỏ lỡ các xu hướng lớn của thị trường
  3. Chỉ dựa vào các chỉ số kỹ thuật mà không xem xét các yếu tố cơ bản
  4. Bạn có thể phải đối mặt với rủi ro trượt giá khi có tin tức quan trọng được công bố
  5. Các hạn chế trong phiên giao dịch có thể dẫn đến việc bỏ lỡ các cơ hội tốt trong các phiên giao dịch khác

Hướng tối ưu hóa chiến lược

  1. Giới thiệu cơ chế dừng lỗ và chốt lời thích ứng, điều chỉnh linh hoạt theo biến động của thị trường
  2. Thêm các chỉ số xác nhận khối lượng để cải thiện độ tin cậy đột phá
  3. Thêm bộ lọc sức mạnh xu hướng để tránh giao dịch theo xu hướng yếu
  4. Hãy cân nhắc việc giới thiệu các chỉ số tâm lý thị trường để tối ưu hóa thời điểm tham gia
  5. Phát triển một thuật toán thông minh hơn để xác định vị trí quay

Tóm tắt

Chiến lược này xây dựng một hệ thống giao dịch logic chặt chẽ bằng cách kết hợp nhiều cơ chế như xu hướng trung bình động, mô hình giá và lọc theo thời gian. Mặc dù có một số hạn chế nhất định, nhưng hy vọng rằng tính ổn định và lợi nhuận của chiến lược sẽ được nâng cao hơn nữa thông qua quá trình tối ưu hóa và cải tiến liên tục. Chiến lược này phù hợp làm khuôn khổ cơ bản của hệ thống theo dõi xu hướng trung và dài hạn, đồng thời có thể tùy chỉnh và cải thiện theo nhu cầu giao dịch thực tế.

Mã nguồn chiến lược
/*backtest
start: 2024-12-17 00:00:00
end: 2025-01-16 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/


//@version=6
strategy("The Gold Box Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200)

// Inputs
roundNumberInterval = input.int(5, title="Round Number Interval ($)", minval=1)
useEMA = input.bool(true, title="Use 20 EMA for Confluence")
emaLength = input.int(20, title="EMA Length")

// Session times for London and NY
londonSession = input("0300-1200", title="London Session (NY Time)")
nySession = input("0800-1700", title="New York Session (NY Time)")

// EMA Calculation
emaValue = ta.ema(close, emaLength)

// Plot Round Number Levels
roundLow = math.floor(low / roundNumberInterval) * roundNumberInterval
roundHigh = math.ceil(high / roundNumberInterval) * roundNumberInterval

// for level = roundLow to roundHigh by roundNumberInterval
//     line.new(x1=bar_index - 1, y1=level, x2=bar_index, y2=level, color=color.new(color.gray, 80), extend=extend.both)

// Session Filter
inLondonSession = not na(time("1", londonSession))
inNYSession = not na(time("1", nySession))
inSession = true

// Detect Bullish and Bearish Engulfing patterns
bullishEngulfing = close > open[1] and open < close[1] and close > emaValue and inSession
bearishEngulfing = close < open[1] and open > close[1] and close < emaValue and inSession

// Entry Conditions
if bullishEngulfing
    strategy.entry("Long", strategy.long, comment="Bullish Engulfing with EMA Confluence")
if bearishEngulfing
    strategy.entry("Short", strategy.short, comment="Bearish Engulfing with EMA Confluence")

// Stop Loss and Take Profit
stopLossPercent = input.float(1.0, title="Stop Loss (%)", minval=0.1) / 100
takeProfitPercent = input.float(1.5, title="Take Profit (%)", minval=0.1) / 100

strategy.exit("Exit Long", "Long", stop=close * (1 - stopLossPercent), limit=close * (1 + takeProfitPercent))
strategy.exit("Exit Short", "Short", stop=close * (1 + stopLossPercent), limit=close * (1 - takeProfitPercent))