Mua biến động thấp VS Mua chiến lược biến động cao

Tác giả:ChaoZhang, Ngày: 2024-01-08 11:33:58
Tags:

img

Tổng quan

Chiến lược này nhằm mục đích nghiên cứu sự khác biệt giữa việc mua tài sản khi biến động thấp và khi nó cao. Nó cho phép người dùng chọn mua trong thời gian biến động thấp hoặc cao bằng cách thay đổi biến nhập chế độ.

Chiến lược logic

Chiến lược này xác định độ biến động bằng cách tính toán ATR và SMA của nó. Cụ thể, nó tính toán SMA của ATR, và sau đó tính toán tỷ lệ giữa ATR và SMA của nó. Nếu tỷ lệ này cao hơn tỷ lệ biến động ngưỡng được xác định bởi người dùngTargetRatio, độ biến động được coi là cao. Nếu thấp hơn ngưỡng, độ biến động được coi là thấp.

Tùy thuộc vào chế độ được người dùng chọn, chiến lược tạo ra tín hiệu mua khi biến động cao hoặc thấp. Một khi mua, chiến lược sẽ giữ cho một số thanh được xác định bởi sellAfterNBarsLength, và sau đó đóng vị trí.

Phân tích lợi thế

Những lợi thế chính của chiến lược này là:

  1. Có thể trực quan so sánh hiệu suất của các chiến lược mua trong thời gian biến động thấp và cao.
  2. Sử dụng SMA để làm mịn ATR có thể lọc các sự đột phá giả.
  3. Có thể kiểm tra các mức độ biến động khác nhau bằng cách điều chỉnh các thông số.

Phân tích rủi ro

Những rủi ro chính của chiến lược này là:

  1. Có thể bỏ lỡ cơ hội xu hướng tăng giá nếu chỉ mua biến động thấp.
  2. Có thể làm tăng rủi ro hệ thống nếu chỉ mua biến động cao.
  3. Các thiết lập tham số không phù hợp có thể dẫn đến việc bỏ lỡ cơ hội mua hoặc đóng các vị trí quá sớm.

Các rủi ro trên có thể được giảm thiểu bằng cách điều chỉnh các tham số và kết hợp các giao dịch mua từ các mức biến động khác nhau.

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

Chiến lược này có thể được tối ưu hóa thêm bằng cách:

  1. Kiểm tra các thông số chiều dài ATR khác nhau.
  2. Thêm các chiến lược dừng lỗ.
  3. Kết hợp các chỉ số khác để lọc các sự đột phá sai.
  4. Tối ưu hóa các tiêu chí nhập và xuất.

Kết luận

Chiến lược này có thể so sánh hiệu quả hiệu suất của chiến lược mua biến động thấp và chiến lược mua biến động cao. Nó sử dụng SMA để làm mịn ATR và tạo ra các tín hiệu giao dịch dựa trên mức biến động. Chiến lược có thể được cải thiện thông qua điều chỉnh tham số và tối ưu hóa điều kiện. Nhìn chung, chiến lược này cung cấp một công cụ hiệu quả để nghiên cứu các chiến lược dựa trên biến động.


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 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/
// © I11L

//@version=5
strategy("I11L - Better Buy Low Volatility or High Volatility?", overlay=false)

mode = input.string("Buy low Volatility",options = ["Buy low Volatility","Buy high Volatility"])
volatilityTargetRatio = input.float(1,minval = 0, maxval = 100,step=0.1, tooltip="1 equals the average atr for the security, a lower value means that the volatility is lower")
atrLength = input.int(14)

atr = ta.atr(atrLength) / close
avg_atr = ta.sma(atr,atrLength*5)
ratio = atr / avg_atr

sellAfterNBarsLength = input.int(5, step=5, minval=0)


var holdingBarsCounter = 0

if(strategy.opentrades > 0)
    holdingBarsCounter := holdingBarsCounter + 1


isBuy = false

if(mode == "Buy low Volatility")
    isBuy := ratio < volatilityTargetRatio
else
    isBuy := ratio > volatilityTargetRatio

isClose = holdingBarsCounter > sellAfterNBarsLength



if(isBuy)
    strategy.entry("Buy",strategy.long)

if(isClose)
    holdingBarsCounter := 0
    strategy.exit("Close",limit=close)

plot(ratio, color=isBuy[1] ? color.green : isClose[1] ? color.red : color.white)
plot(1, color=color.white)



Thêm nữa