Chiến lược giao dịch định lượng dựa trên dải đường trung bình động 5 ngày và tín hiệu mua/bán GBS

Tác giả:ChaoZhang, Ngày: 2024-02-05 10:50:35
Tags:

img

Tổng quan

Chiến lược này kết hợp dải trung bình động 5 ngày và tín hiệu mua / bán GBS để xác định hướng xu hướng và tạo ra tín hiệu giao dịch. Dải trung bình động được sử dụng để đánh giá hướng xu hướng và mức hỗ trợ / kháng cự chính, trong khi các tín hiệu mua / bán GBS được sử dụng để tìm thời gian nhập chính xác theo hướng xu hướng. Chiến lược này phù hợp với giao dịch xu hướng trung hạn và có thể đạt được lợi nhuận vượt quá trong các thị trường giới hạn phạm vi.

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

  1. Tính toán trung bình di chuyển đơn giản của giá cao và thấp 5 ngày để có được dải trung bình di chuyển 5 ngày
  2. Khi giá đóng phá vỡ dải trung bình động, nó cho thấy một sự đảo ngược xu hướng
  3. Khi một xu hướng tăng được xác định, các vị trí dài được thực hiện nếu tín hiệu mua của GBS được kích hoạt; Khi một xu hướng giảm được xác định, các vị trí ngắn được thực hiện nếu tín hiệu bán của GBS được kích hoạt
  4. Thiết lập các cơ chế dừng lỗ / lấy lợi nhuận, thoát khi rút tiền vượt quá ngưỡng nhất định

Ưu điểm của Chiến lược

  1. Phạm vi trung bình động đánh giá chính xác hướng xu hướng chính
  2. Các tín hiệu mua/bán của GBS có tỷ lệ thắng tương đối cao
  3. Cơ chế dừng lỗ kiểm soát hiệu quả rủi ro và hạn chế lỗ

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

  1. Sự phá vỡ giả có thể xảy ra thường xuyên trên các thị trường giới hạn phạm vi, gây ra các lỗi giao dịch
    • Giải pháp: Mở rộng dải trung bình động để đảm bảo hoạt động chỉ trong các xu hướng rõ ràng
  2. Rủi ro dựa trên chỉ số duy nhất
    • Giải pháp: Thêm xác nhận từ các chỉ số khác chẳng hạn như MACD, RSI để tránh mất tín hiệu đảo ngược
  3. Rủi ro quá phù hợp với Backtest
    • Giải pháp: Mở rộng khung thời gian backtest, so sánh kết quả trên các sản phẩm và thông số khác nhau

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

  1. Tối ưu hóa tham số để tìm kết hợp tham số tối ưu
  2. Thêm tín hiệu xác nhận từ các chỉ số khác
  3. Phát triển các cơ chế trung bình động thích nghi
  4. Điều chỉnh mức dừng lỗ dựa trên điều kiện thị trường
  5. Thêm thuật toán học máy để tự động tối ưu hóa chiến lược

Kết luận

Chiến lược này tích hợp dải trung bình động và tín hiệu mua / bán GBS, hoạt động với độ tin cậy cao sau khi xác định một hướng xu hướng rõ ràng để lọc ra tiếng ồn thị trường. Nó có thể khóa lợi nhuận trung hạn và thoát kịp thời. Chiến lược đơn giản và hiệu quả trong việc sử dụng vốn, cung cấp lợi nhuận ổn định cho các nhà giao dịch lượng.


/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("5MABAND + GBS Buy & Sell Strategy", overlay=true)

// Command 1 - 5MABAND Calculation
length = input(5, title="Number of Candles for Average")
avgHigh = ta.sma(high, length)
avgLow = ta.sma(low, length)

// Plotting 5MABAND Bands
plot(avgHigh, color=color.green, title="5MABAND High Line", linewidth=1)
plot(avgLow, color=color.red, title="5MABAND Low Line", linewidth=1)

// Command 2 - GBS concept Buy Entry
gbsBuyCondition = close > open and high - close < close - open and open - low < close - open and close - open > close[1] - open[1] and close - open > close[2] - open[2] and close - open > close[3] - open[3] and close[1] < avgHigh and close[2] < avgHigh and close[3] < avgHigh and open[1] < avgHigh and open[2] < avgHigh and open[3] < avgHigh

// Command 3 - GBS Concept Sell Entry
gbsSellCondition = open - close > open[1] - close[1] and open - close > open[2] - close[2] and open - close > open[3] - close[3] and open[1] > avgLow and open[2] > avgLow and open[3] > avgLow and open - close > open - low and open - close > high - open

// Command 6 - 5MABAND Exit Trigger
exitTriggerCandle_5MABAND_Buy = low < avgLow
exitTriggerCandle_5MABAND_Sell = high > avgHigh

// Exit Signals for 5MABAND
exitBuySignal_5MABAND = close < avgLow
exitSellSignal_5MABAND = close > avgHigh

// Execute Buy and Sell Orders
strategy.entry("Buy", strategy.long, when = gbsBuyCondition)
strategy.close("Buy", when = exitBuySignal_5MABAND)

strategy.entry("Sell", strategy.short, when = gbsSellCondition)
strategy.close("Sell", when = exitSellSignal_5MABAND)

// Exit Buy and Sell Orders for 5MABAND
strategy.close("Buy", when = exitTriggerCandle_5MABAND_Buy)
strategy.close("Sell", when = exitTriggerCandle_5MABAND_Sell)


Thêm nữa