Chiến lược chéo Williams % R với bộ lọc trung bình động

Tác giả:ChaoZhang, Ngày: 2023-09-19 21:57:46
Tags:

Tổng quan

Chiến lược này sử dụng các tín hiệu chéo Williams % R và thêm bộ lọc trung bình động để tạo ra một hệ thống giao dịch ngắn hạn linh hoạt.

Chiến lược logic

  1. Tính toán Williams %R và trung bình di chuyển đơn giản 200 thời gian (MA).

  2. Đi dài khi %R vượt qua mức -50 bằng một ngưỡng và đóng là trên MA.

  3. Đi ngắn khi %R vượt qua dưới mức -50 bằng một ngưỡng và đóng là dưới MA.

  4. Nếu dài, đóng vị trí khi gần đạt được lợi nhuận (giá nhập + lấy lợi nhuận pips) hoặc mức dừng lỗ (giá nhập - dừng lỗ pips).

  5. Nếu ngắn, đóng vị trí khi gần đạt được lợi nhuận (giá nhập - lấy lợi nhuận pips) hoặc mức dừng lỗ (giá nhập + dừng lỗ pips).

Chiến lược này tận dụng tính chất quá mua / quá bán của Williams % R và kết hợp bộ lọc xu hướng MA cho các tín hiệu đáng tin cậy hơn.

Phân tích lợi thế

  1. Williams %R xác định hiệu quả mức mua quá mức / bán quá mức với các tín hiệu rõ ràng.

  2. Bộ lọc MA thêm xu hướng thiên vị để tránh whipsaws.

  3. Các tham số có thể tùy chỉnh để linh hoạt.

  4. Chế độ dừng lỗ sẽ giữ được lợi nhuận.

  5. Một logic đơn giản, rõ ràng, dễ hiểu và thực hiện, tốt cho giao dịch ngắn hạn.

  6. Áp dụng cho nhiều sản phẩm với tính linh hoạt.

Phân tích rủi ro

  1. Williams %R có hiệu ứng chậm, có thể bỏ lỡ một số cơ hội.

  2. Bộ lọc MA cũng có một số lag.

  3. Các quy tắc mua/bán quá mức nghiêm ngặt có thể bỏ qua một số xu hướng.

  4. Dừng mất mát quá chặt có thể bị dừng bởi whipsaws.

  5. Stop loss quá rộng có thể hạn chế lợi nhuận.

  6. Các thông số cần điều chỉnh cho môi trường thị trường khác nhau.

Hướng dẫn tối ưu hóa

  1. Tối ưu hóa các thông số cho tỷ lệ chiến thắng cao hơn.

  2. Thêm các bộ lọc khác như MACD, KDJ vv.

  3. Hãy thử các loại MA khác nhau như MA theo hàm số.

  4. Thêm xu hướng thiên vị, chỉ giao dịch theo hướng xu hướng.

  5. Tối ưu hóa các chiến lược dừng lỗ như dừng động, ra khỏi đèn chùm vv

  6. Hãy thử định kích thước vị trí như phân số cố định, Martingale vv

  7. Sử dụng máy học để tối ưu hóa các tham số tốt hơn.

Kết luận

Chiến lược này kết hợp các tín hiệu mua quá nhiều / bán quá nhiều của Williams % R với bộ lọc xu hướng MA thành một hệ thống ngắn hạn đơn giản. Nó có các tín hiệu đầu vào rõ ràng và logic dừng lỗ / lấy lợi nhuận. Có thể cải thiện thêm thông qua điều chỉnh tham số, lựa chọn chỉ số, quản lý dừng lỗ v.v. để tăng độ bền hơn. Dễ thực hiện và mở rộng, chiến lược này phù hợp với các nhà giao dịch ngắn hạn.


/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Williams %R Cross Strategy with MA Filter", overlay=true)

// User Inputs
wrLength = input(14, title="Williams %R Length")
crossPips = input(10, title="Cross Threshold (Pips)")
takeProfitPips = input(30, title="Take Profit (Pips)")
stopLossPips = input(20, title="Stop Loss (Pips)")

// Calculate Williams %R
wrHigh = ta.highest(high, wrLength)
wrLow = ta.lowest(low, wrLength)
wr = (wrHigh - close) / (wrHigh - wrLow) * -100

// Calculate 200-period Simple Moving Average
ma200 = ta.sma(close, 200)

// Entry Conditions
enterLong = ta.crossover(wr, -50 - crossPips) and close > ma200
enterShort = ta.crossunder(wr, -50 + crossPips) and close < ma200

// Exit Conditions
exitLong = close >= (strategy.position_avg_price + (takeProfitPips / syminfo.mintick)) or close <= (strategy.position_avg_price - (stopLossPips / syminfo.mintick))
exitShort = close <= (strategy.position_avg_price - (takeProfitPips / syminfo.mintick)) or close >= (strategy.position_avg_price + (stopLossPips / syminfo.mintick))

// Order Management
if enterLong
    strategy.entry("Long", strategy.long)
    
if enterShort
    strategy.entry("Short", strategy.short)

if exitLong
    strategy.close("Long")

if exitShort
    strategy.close("Short")


Thêm nữa