Chiến lược này tính toán đường trung bình động của phạm vi thực để phản ánh biến động thị trường. Nó xác định hướng xu hướng dựa trên mối quan hệ giữa biến động và đường trung bình động của nó. Nó đi ngắn khi biến động vượt qua đường trung bình động, và đi dài khi vượt qua đường trung bình động, với dừng lỗ.
Chức năng ATR được sử dụng để tính toán phạm vi thực sự trong một khoảng thời gian nhất định. Mức trung bình di chuyển đơn giản của ATR sau đó được tính như đường trung bình di chuyển của biến động. Khi ATR vượt quá mức trung bình di chuyển của nó, biến động thị trường được coi là tăng và một chiến lược ngắn được áp dụng. Khi ATR vượt dưới mức trung bình di chuyển của nó, biến động thị trường được coi là giảm và một chiến lược dài được áp dụng.
Khi ở trong một vị trí, một tỷ lệ dừng lỗ bị kéo dài được thiết lập để điều chỉnh dừng lỗ một cách năng động dựa trên sự thay đổi giá, để bảo vệ lợi nhuận trong khi tránh bị dừng sớm.
Chiến lược này đánh giá xu hướng thị trường thông qua chỉ số biến động, tránh nhiễu nhiễu tiếng ồn. Nó đi ngắn khi biến động tăng và đi dài khi biến động giảm, thực hiện các hoạt động phòng ngừa rủi ro.
Chiến lược này chỉ dựa trên một chỉ số biến động, với một số chậm trễ. Stop loss sau chỉ xem xét các biến động giá bất lợi, không thể ngăn chặn sự đảo ngược lợi nhuận. Nếu giá dao động mạnh mẽ, stop loss có thể bị tấn công, gây ra tổn thất lớn.
Điều chỉnh tham số trên ATR và thời gian trung bình động có thể giúp ích, cũng như kết hợp các chỉ số khác để đánh giá toàn diện. Phương pháp dừng lỗ cũng có thể chuyển sang dừng động, điều chỉnh tỷ lệ dừng lỗ dựa trên biến động thị trường.
Kiểm tra các kết hợp tham số khác nhau của ATR và trung bình động để tìm các tham số tối ưu.
Kết hợp các chỉ số khác để đánh giá để tạo thành một tập hợp chiến lược, cải thiện độ chính xác.
Dùng các chiến lược dừng lỗ năng động, điều chỉnh tỷ lệ dừng lỗ dựa trên biến động thị trường.
Tối ưu hóa các mô hình kích thước vị trí cho các sản phẩm khác nhau.
Áp dụng máy học để giúp xác định các điểm biến động.
Kết hợp với các đường trung bình động khung thời gian cao hơn để xác định hướng xu hướng lớn hơn.
Chiến lược đánh giá xu hướng thị trường đơn giản và trực tiếp thông qua biến động, nhưng một chỉ số duy nhất có những hạn chế.
/*backtest start: 2023-08-20 00:00:00 end: 2023-09-19 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 20/08/2018 // The Volatility function measures the market volatility by plotting a // smoothed average of the True Range. It returns an average of the TrueRange // over a specific number of bars, giving higher weight to the TrueRange of // the most recent bar. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Volatility Backtest", shorttitle="Volatility") Length = input(10, minval=1) LengthMA = input(26, minval=1) reverse = input(false, title="Trade reverse") xATR = atr(Length) nRes = ((Length - 1) * nz(nRes[1], 0) + xATR) / Length xMARes = sma(nRes, LengthMA) pos = iff(nRes < xMARes, 1, iff(nRes > xMARes, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=blue, title="Volatility") plot(xMARes, color=red, title="MA")