Chiến lược đánh giá trung tâm cao nhất thấp nhất


Ngày tạo: 2023-12-28 15:42:10 sửa đổi lần cuối: 2023-12-28 15:42:10
sao chép: 0 Số nhấp chuột: 648
1
tập trung vào
1623
Người theo dõi

Chiến lược đánh giá trung tâm cao nhất thấp nhất

Tổng quan

Chiến lược quay trở lại trung tâm cao nhất thấp nhất là một chiến lược theo dõi xu hướng. Ý tưởng chính của nó là tính giá trung tâm của giá cao nhất và giá thấp nhất trong một khoảng thời gian nhất định trước đây làm giá chuẩn, sau đó dựa trên giá chuẩn này và kết hợp với tỷ lệ biến động để tính toán vùng bồi đắp và vùng bồi đắp.

Nguyên tắc chiến lược

Chiến lược này được thực hiện thông qua các bước sau:

  1. Tính giá h cao nhất và giá l thấp nhất trong chu kỳ lookback_length trước và sử dụng EMA làm mịn
  2. Tính giá trung bình của giá cao nhất và giá thấp nhất như giá chuẩn
  3. Volatility theo ATR và ATR multiplier
  4. Xác định vùng kho xây dựng upper và vùng kho hòa bình lower
  5. Khi giá tăng lên, bạn sẽ làm nhiều hơn; khi giá giảm xuống, bạn sẽ làm bình thường.

Bằng cách này, bạn có thể theo dõi xu hướng khi giá đi vào trạng thái xu hướng; đồng thời bạn có thể kiểm soát rủi ro bằng tỷ lệ biến động.

Phân tích lợi thế

Chiến lược này có một số ưu điểm:

  1. Có thể theo dõi xu hướng một cách hiệu quả và bắt kịp sự thay đổi giá
  2. Sử dụng giá trung bình của giá thấp nhất cao nhất làm giá chuẩn, có thể làm giảm khả năng phá vỡ giả
  3. Tỷ lệ biến động có thể tự động điều chỉnh để kiểm soát rủi ro
  4. Thời gian nắm giữ ngắn hạn, có cơ hội giao dịch tần suất cao hơn
  5. Đơn giản, dễ hiểu và tối ưu hóa

Phân tích rủi ro

Chiến lược này cũng có một số rủi ro:

  1. Có thể sẽ có nhiều giao dịch vô nghĩa hơn trong thời kỳ khủng hoảng.
  2. Thiết lập kích thước và nhân ATR ảnh hưởng đến hiệu suất chiến lược, cần được kiểm tra cẩn thận và tối ưu hóa
  3. Có thể có sự điều chỉnh lại sau khi phá giá trung bình dẫn đến dừng lỗ
  4. Nếu xu hướng thay đổi quá nhanh, sẽ gây ra tổn thất lớn hơn

Để kiểm soát những rủi ro này, có thể tối ưu hóa theo các cách sau:

  1. Điều chỉnh tham số ATR, giảm biến động, lọc rung
  2. Thêm các điều kiện lọc để tránh giao dịch vô nghĩa
  3. Sử dụng dừng di chuyển để khóa lợi nhuận
  4. Kết hợp các chỉ số xu hướng để xác định sự bắt đầu và kết thúc của xu hướng thực sự

Hướng tối ưu hóa

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

  1. Có thể kiểm tra hiệu quả của các tham số cho các thị trường khác nhau và các chu kỳ khác nhau
  2. Các tham số tự động tối ưu hóa có thể kết hợp với thuật toán học máy
  3. Bạn có thể kết hợp nhiều chỉ số khác để đánh giá xu hướng bắt đầu và kết thúc.
  4. Có thể xem xét động điều chỉnh tỷ lệ đặt hàng
  5. Có thể kết hợp các chỉ số cảm xúc để tránh bị ảnh hưởng bởi những cảm xúc cực đoan

Với những cải tiến này, chúng ta có thể mong đợi sẽ cải thiện hơn nữa tính ổn định và lợi nhuận của chiến lược.

Tóm tắt

Chiến lược xem lại trung tâm tối đa thấp nhất là một chiến lược theo dõi xu hướng đơn giản và thực tế. Nó có thể nắm bắt sự thay đổi giá, theo dõi xu hướng, đồng thời có thể kiểm soát rủi ro thông qua tỷ lệ biến động. Chiến lược này dễ thực hiện, phù hợp cho người mới bắt đầu học và thực hành giao dịch định lượng.

Mã nguồn chiến lược
/*backtest
start: 2023-11-27 00:00:00
end: 2023-12-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Highest/Lowest Center Lookback Strategy", overlay=true)

lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length")
smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length")
atr_length = input(10, type=input.integer, minval=1, title="ATR Length")
atr_multiplier = input(1.5, type=input.float, minval=0.5, title="ATR Multiplier")

vola = atr(atr_length) * atr_multiplier
price = sma(close, 3)

l = ema(lowest(low, lookback_length), smoother_length)
h = ema(highest(high, lookback_length), smoother_length)
center = (h + l) * 0.5
upper = center + vola
lower = center - vola
trend = price > upper ? true : (price < lower ? false : na)

bull_cross = crossover(price, upper)
bear_cross = crossunder(price, lower)

strategy.entry("Buy", strategy.long, when=bull_cross)
strategy.close("Buy", when=bear_cross)

plot(h, title="High", color=color.red, transp=75, linewidth=2)
plot(l, title="Low", color=color.green, transp=75, linewidth=2)

pc = plot(center, title="Center", color=color.black, transp=25, linewidth=2)
pu = plot(upper, title="Upper", color=color.green, transp=75, linewidth=2)
pl = plot(lower, title="Lower", color=color.red, transp=75, linewidth=2)

fill(pu, pc, color=color.green, transp=85)
fill(pl, pc, color=color.red, transp=85)

bgcolor(trend == true ? color.green : (trend == false ? color.red : color.gray), transp=85)