
Chiến lược theo dõi tỷ lệ dừng lỗ là một chiến lược để thiết lập và điều chỉnh lệnh dừng lỗ dựa trên tỷ lệ phần trăm của giá của các loại giao dịch. Nó có thể điều chỉnh lệnh dừng lỗ thành giá nhập cảnh sau khi giá đạt đến một mức lợi nhuận nhất định, để thực hiện lệnh dừng bảo đảm.
Chiến lược này đặt tỷ lệ phần trăm của lệnh dừng theo dõi lỗ bằng các tham số đầu vào, chẳng hạn như 3%. Sau khi mở vị trí, nó sẽ tính toán giá dừng theo dõi lỗ trong thời gian thực. Cách tính là:
Khi giá vượt quá giá nhập cảnh*(1+% theo dõi Stop Loss), giá Stop Loss sẽ được điều chỉnh thành giá nhập, để thực hiện bảo đảm.
Khi giá thấp hơn mức trên, giá dừng là giá nhập*(1- theo dõi tỷ lệ dừng lỗ)
Điều này có thể được thực hiện khi giá đạt đến một mức lợi nhuận nhất định, tránh mất toàn bộ lợi nhuận, đồng thời ngăn chặn việc dừng lại quá mạnh mẽ bởi biến động bình thường của giá.
Chiến lược cũng vẽ biểu đồ theo dõi giá dừng để xác nhận và chỉ đặt giao dịch nhiều đầu. Làm nhiều khi Gold Fork, bán khi chết. Sau khi làm nhiều, đặt lệnh dừng theo dõi, thực hiện logic dừng của chiến lược.
Ưu điểm lớn nhất của chiến lược này là có thể thực hiện bảo lãnh sau khi thu lợi nhuận bằng cách theo dõi dừng lỗ, ít nhất có thể giữ nguyên vốn và tránh thua lỗ bất kể thị trường nào. Điều này có ý nghĩa quan trọng đối với nhiều nhà đầu tư.
Ngoài ra, chiến lược dừng lỗ này khá ôn hòa, theo dõi mức dừng lỗ không quá lớn, có thể ngăn chặn biến động bình thường của giá và dừng lỗ. Điều này linh hoạt và thông minh hơn so với các lệnh dừng cố định nói chung.
Rủi ro chính của chiến lược này là thiết lập mức dừng lỗ không phù hợp, nếu thiết lập quá nhỏ, sẽ khó đạt được mức dừng bảo đảm; nếu thiết lập quá lớn, nó dễ bị biến động giá bình thường. Vì vậy, cần phải kiểm tra và đánh giá cẩn thận mức dừng lỗ phù hợp.
Một rủi ro khác là giá đột ngột tăng mạnh trong một thị trường bất thường, khi đó giá dừng có thể không được cập nhật kịp thời, dẫn đến việc dừng lại không có hiệu lực. Tuy nhiên, xác suất này là thấp hơn.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Thêm các điều kiện đặt hàng thắt lưng, chẳng hạn như các quy tắc như dead fork, giá giảm xuống SMA, làm cho chiến lược trở nên toàn diện hơn.
Thêm cơ chế điều chỉnh động của tỷ lệ dừng lỗ, tự động tối ưu hóa mức dừng lỗ trong các môi trường thị trường khác nhau.
Thêm chiến lược ra khỏi sân, ra khỏi sân sau khi giá chạy một khoảng cách nhất định và cố định lợi nhuận.
Có thể nghiên cứu sự khác biệt của các tham số phần trăm dừng của các giống khác nhau, thiết lập các tham số tự thích ứng cơ chế tối ưu hóa.
Theo dõi phần trăm dừng lỗ là một chiến lược rất thực tế cho toàn bộ, có thể thực hiện hiệu quả dừng vốn sau khi kiếm được lợi nhuận và tránh thua lỗ. Chiến lược này có rất nhiều không gian để tối ưu hóa và đáng để nghiên cứu thêm để tăng hiệu quả. Nhìn chung, chiến lược này phù hợp với các nhà đầu tư theo đuổi lợi nhuận đầu tư ổn định.
/*backtest
start: 2023-12-08 00:00:00
end: 2024-01-07 00:00:00
period: 1h
basePeriod: 15m
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/
// © osmaras
// based on https://kodify.net/tradingview/orders/percentage-trail/
//@version=5
strategy("Break even stop loss (% of instrument price)", overlay=true)
// Configure trail stop level with input options (optional)
longTrailPerc = input.float(defval=3.0,step=0.1,title="Trail Long Loss (%)")* 0.01
longCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
// Determine trail stop loss prices
longStopPrice = 0.0
lastEntryPrice = strategy.opentrades.entry_price(strategy.opentrades - 1)
longStopPrice := if (strategy.position_size > 0 and close > (lastEntryPrice * (1 + longTrailPerc)))
stopValue = lastEntryPrice
math.max(stopValue, longStopPrice[1])
else
longStopPrice := if (strategy.position_size > 0)
stopValue = lastEntryPrice * (1 - longTrailPerc)
math.max(stopValue, longStopPrice[1])
else
0
// Plot stop loss values for confirmation
plot(series=(strategy.position_size > 0) ? longStopPrice : na,
color=color.fuchsia, style=plot.style_cross,
linewidth=2, title="Long Trail Stop")
// set strategy only long
strategy.risk.allow_entry_in(strategy.direction.long)
// Submit entry orders
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))
if (shortCondition)
strategy.close("Long")
// Submit exit orders for trail stop loss price
if (strategy.position_size > 0)
strategy.exit(id="Stop Loss", stop=longStopPrice)