Chiến lược dấu vết dừng lỗ động tính toán phạm vi trung bình thực sự (ATR) của cổ phiếu như một điểm chuẩn, kết hợp với các hệ số ATR được thiết lập bởi người dùng để thiết lập động các đường dừng lỗ và các đường mòn để đạt được mục đích của dấu vết dừng lỗ. Khi giá cổ phiếu vượt qua đường mòn, một vị trí dài được thiết lập bằng cách sử dụng một chiến lược theo dõi xu hướng truyền thống; khi giá cổ phiếu giảm xuống dưới đường dừng lỗ, một vị trí ngắn được thiết lập bằng cách sử dụng một chiến lược đảo ngược để kiếm lợi nhuận thông qua giao dịch hai chiều.
Chiến lược này chủ yếu sử dụng chỉ số kỹ thuật ATR để tính toán phạm vi trung bình thực sự của giá cổ phiếu, và kết hợp các hệ số ATR được nhập bởi người dùng làm điểm chuẩn cho mua cổ phiếu và bán dừng lỗ. Cụ thể, chiến lược đầu tiên tính giá trị ATR của cổ phiếu trong 120 ngày qua, sau đó nhân với hệ số ATR bán được thiết lập bởi người dùng để có được giá tham khảo bán dừng lỗ, tức là đường dừng lỗ; nhân với hệ số ATR mua để có được giá tham khảo mua, tức là đường mòn. Khi giá cao nhất ngày hôm nay vượt qua đường mòn, một vị trí dài được thiết lập bằng cách sử dụng chiến lược theo dõi xu hướng; khi giá thấp nhất ngày hôm nay giảm xuống dưới đường lỗ và giữ một vị trí dừng dài, một vị trí ngắn được thiết lập bằng cách sử dụng chiến lược đảo ngược.
Chỉ số ATR có thể phản ánh tốt hơn phạm vi biến động trung bình thực sự của một cổ phiếu. Sử dụng chỉ số ATR để thiết lập các đường stop loss trail có thể giúp tránh thiệt hại do biến động cổ phiếu lớn đến một mức độ nào đó.
Tóm lại, đây là một chiến lược stop loss trail điển hình. Ý tưởng cốt lõi là thiết lập các đường stop loss và đường trail dựa trên các chỉ số ATR để theo dõi xu hướng. Lợi thế của chiến lược này là giao dịch hai chiều được kích hoạt và các vị trí linh hoạt; Các chỉ số ATR giúp kiểm soát rủi ro, làm cho nó phù hợp với các cổ phiếu biến động cao. Tuy nhiên, có một số rủi ro theo dõi mù do các quy tắc giao dịch khá đơn giản; cài đặt tham số không đúng cũng ảnh hưởng đến hiệu quả chiến lược.
/*backtest start: 2022-11-14 00:00:00 end: 2023-11-20 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © phobo3s //@version=4 strategy("ATR Stop Buy Strategy",shorttitle="ATR-ST",initial_capital=1000, overlay = true, default_qty_type = strategy.percent_of_equity, pyramiding = 5, default_qty_value = 20, commission_type = strategy.commission.cash_per_order, commission_value = 1, calc_on_every_tick = true) daysBack = input(defval=120, title="Days Back", type=input.integer) sellCoeff = input(defval=1.5, title="Selling Coefficent For ATR", type=input.float, minval= 0.01, step=0.1) buyCoeff = input(defval=1.2, title = "Buying Coefficent For ATR", type=input.float, minval= 0.01, step=0.1) fromDate = timenow - (daysBack*24*60*60*1000) toDate = timenow ATR = atr(14) stopLossPoint = ATR * sellCoeff buyPoint = ATR * buyCoeff StoplossLine = close[1] - stopLossPoint[1] BuyLine = close[1] + buyPoint[1] if (high > BuyLine and time >= fromDate and time <= toDate ) strategy.entry("GG", strategy.long, comment="Gir") if (low < StoplossLine and strategy.position_avg_price < close and time >= fromDate and time <= toDate ) strategy.entry("GG", strategy.short, comment="Çık") //longFlags = close < StoplossLine //shortFlags = close > BuyLine //plotshape(shortFlags, style=shape.triangledown, location=location.abovebar, color=color.red) //plotshape(longFlags, style=shape.triangleup, location=location.belowbar, color=color.blue) plot(StoplossLine) plot(BuyLine)