Chiến lược giao dịch chéo hàng ngày của HMA

Tác giả:ChaoZhang, Ngày: 2023-09-22 17:07:15
Tags:

Tổng quan

Chiến lược này đi vào các giao dịch dựa trên đường HMA và đường chéo nến hàng ngày và quản lý các vị trí bằng cách sử dụng logic dừng lỗ và lấy lợi nhuận.

Chiến lược logic

Các tín hiệu và quy tắc chính:

  • Đường HMA: Tính toán Trung bình Di chuyển Hull để xác định xu hướng trung bình dài hạn.

  • Giá đóng cửa hàng ngày: đánh giá hành động giá ngắn hạn.

  • Tín hiệu nhập cảnh: HMA vượt qua mức đóng cửa hàng ngày trước đó, với giá cao hơn giá ngày trước trong thời gian dài.

  • Stop loss/take profit: Mức cố định để đóng các vị trí khi đạt được.

Ưu điểm

  • Các thông số HMA có thể điều chỉnh để thích nghi.

  • Xem xét các chỉ số nhiều khung thời gian cho tín hiệu chất lượng cao hơn.

  • Dừng lỗ / lấy lợi nhuận tạo điều kiện quản lý rủi ro.

  • Quy tắc nhập cảnh rõ ràng và quản lý vị trí.

  • Các thông số backtest có thể được tối ưu hóa cho các thị trường khác nhau.

Rủi ro

  • HMA lag có thể không đạt được thời điểm tốt nhất.

  • Định giá dừng lỗ / lấy lợi nhuận cố định có thể quá mạnh mẽ hoặc bảo thủ.

  • Thiếu bộ lọc sức mạnh xu hướng, rủi ro giao dịch chống xu hướng.

  • Những quy tắc đơn giản dễ bị tín hiệu sai.

Cải tiến:

  1. Tối ưu hóa các thông số HMA cho sự chậm trễ.

  2. Sử dụng stop loss sau thay vì cố định.

  3. Thêm các chỉ số khối lượng hoặc động lực để đánh giá sức mạnh xu hướng.

  4. Bao gồm các chỉ số khác như MACD để xác nhận tín hiệu.

Tối ưu hóa

Các cách tối ưu hóa chiến lược:

  1. Tối ưu hóa các thông số HMA cho sự kết hợp lý tưởng.

  2. Thêm bộ lọc cường độ xu hướng để tránh xu hướng ngược.

  3. Sử dụng dừng động thay vì mức cố định.

  4. Kết hợp máy học để tối ưu hóa tham số tự động.

  5. Thêm giao dịch mô phỏng để kiểm tra hiệu suất trong thế giới thực.

Tóm lại

Chiến lược logic là rõ ràng nhưng có chỗ để cải thiện. Thêm các bộ lọc xu hướng, dừng động có thể cải thiện sự ổn định. Nhìn chung cung cấp một khuôn khổ hợp lý để nắm bắt xu hướng trung bình dài hạn.


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

//@version=4
// created by SeaSide420       Enters on crossovers, exits Basket when profit $ = TP
// strategy(title="HMA & D1 crossover", overlay=true, currency="BTC", initial_capital=1, default_qty_type=strategy.percent_of_equity, default_qty_value=1, commission_type=strategy.commission.percent,commission_value=0.25,slippage=1)
SL=input(defval=-0.05,title="StopLoss $",type=input.float,step=0.01, maxval=-0.01)
TP=input(defval=0.05,title="TargetPoint $",type=input.float,step=0.01, minval=0.01)
price=input(title="Source",type=input.source,defval=open)
Period=input(14, minval=1)
hma = wma(2*wma(price, Period/2)-wma(price, Period), round(sqrt(Period)))
s1=security(syminfo.tickerid, timeframe.period, price, barmerge.gaps_off, barmerge.lookahead_off)
s2=security(syminfo.tickerid, "D", price, barmerge.gaps_off, barmerge.lookahead_off)
cp=s2<price?color.lime:color.red
cp1=plot((s2),color=color.black,title="DailyCandle1",linewidth=2,transp=0)
cp2=plot((s2[1]),color=color.black,title="DailyCandle2",linewidth=2,transp=0)
cp3=plot(hma,title="HMA",color=color.black)
fill(cp1,cp2,color=cp,transp=1)
fill(cp1,cp3,color=cp,transp=75)
closeall=strategy.openprofit<SL or strategy.openprofit>TP
if closeall
    strategy.close_all(comment = "Close All")
if (hma>hma[1] and s1>s2 and s2[1]>s2[2] and s1>s2[1])
    strategy.order("Buy", strategy.long)
if (hma<hma[1] and s1<s2 and s2[1]<s2[2] and s1<s2[1])
    strategy.order("Sell", strategy.short)

Thêm nữa