Chiến lược biến động ATR đột phá động lượng


Ngày tạo: 2024-01-12 13:50:44 sửa đổi lần cuối: 2024-01-12 13:50:44
sao chép: 0 Số nhấp chuột: 732
1
tập trung vào
1617
Người theo dõi

Chiến lược biến động ATR đột phá động lượng

Tổng quan

Chiến lược này sử dụng chiến lược hai đường trung bình kết hợp đường trung bình di chuyển đơn giản, hỗ trợ bởi chỉ số tỷ lệ dao động ATR để xác định tỷ lệ dao động của thị trường. Khi thị trường ngắn hạn vượt qua đường trung bình dài hạn trên đường trung bình ngắn hạn, đánh giá là thị trường nhiều đầu, tham gia nhiều. Khi thị trường dài hạn vượt qua đường trung bình ngắn hạn dưới đường trung bình ngắn hạn, đánh giá là thị trường trống, tham gia.

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

Một phần cốt lõi là chiến lược đường hai. Chiến lược đường hai thường chọn đường trung bình ngắn hạn và đường trung bình dài hạn, chẳng hạn như đường trung bình 50 ngày và đường trung bình 200 ngày. Khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn, nó tạo ra tín hiệu mua.

Trong chiến lược này, đường trung bình 50 ngày được chọn là đường trung bình ngắn hạn, đường trung bình 200 ngày là đường trung bình dài hạn. Sự tin cậy của tín hiệu đường trung bình được đánh giá bởi tổng hợp VWAP với trung bình trọng lượng tổng hợp. Đó là chỉ khi tín hiệu đường trung bình và VWAP đồng bộ.

Ngoài ra, thêm các chỉ số RSI để tránh mua quá mức và bán quá mức. Khi RSI cao hơn 70, tránh mua và khi RSI thấp hơn 30, tránh bán.

Cuối cùng, tính toán mức độ biến động và rủi ro của thị trường bằng chỉ số độ biến động trung bình của ATR. ATR được xác định là biến động cao khi lớn hơn 1.18 và khi đó, bạn có thể tạm thời tránh giao dịch bằng cách thay đổi màu nền để báo hiệu rủi ro cao hơn và chờ đợi thời gian sau khi biến động giảm xuống.

Phân tích lợi thế

Những lợi thế của chiến lược này được thể hiện qua ba khía cạnh:

  1. Binary Equity nắm bắt các điểm biến của xu hướng trung và dài hạn của thị trường, và sử dụng các giao dịch xu hướng để kiếm tiền.

  2. Kết hợp với VWAP lọc tín hiệu giả, tăng độ tin cậy của tín hiệu.

  3. Việc đưa ra chỉ số RSI tránh giao dịch ngược thị trường có thể làm giảm tổn thất.

  4. Sử dụng chỉ số biến động ATR để đánh giá tình trạng rủi ro của thị trường, tránh thời gian biến động cao, có thể giảm tổn thất.

  5. Các công cụ chỉ số khác nhau được sử dụng một cách đơn giản, dễ hiểu và phù hợp với giao dịch định lượng.

Phân tích rủi ro

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

Khi hai đường trung bình tạo ra tín hiệu, giá có thể đã thay đổi nhiều, có nguy cơ bị đánh giá. Giải pháp là giảm chu kỳ đường trung bình, tăng tốc độ phản ứng của chỉ số.

  1. VWAP có thể bị lỗi, dẫn đến việc lọc các tín hiệu giao dịch chính xác. Giải pháp được xác nhận bổ sung bằng các chỉ số khác.

  2. Vào cuối xu hướng, RSI có thể ở khu vực quá mua quá bán trong một thời gian dài, dẫn đến việc bỏ lỡ điểm đảo ngược xu hướng. Giải pháp là kết hợp với các chỉ số khác để xác nhận, chẳng hạn như MACD.

  3. ATR có thể có sự chậm trễ trong việc đánh giá biến động thị trường. Giải pháp là kết hợp giá cao nhất, giá thấp nhất để đánh giá biến động thị trường.

  4. Lợi nhuận có thể không đạt được mong đợi, cần điều chỉnh các tham số thích hợp.

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

Có rất nhiều cách để tối ưu hóa chiến lược này:

  1. Thử nghiệm nhiều kết hợp đường trung bình hơn để tìm tham số tối ưu.

  2. Thêm thêm các chỉ số phụ để lọc tín hiệu. Ví dụ MACD, KDJ, v.v.

  3. Tối ưu hóa các tham số dừng lỗ, giảm tổn thất, tăng lợi nhuận.

Đánh giá sự khác biệt trong chiến lược giao dịch giữa cổ phiếu mạnh và cổ phiếu yếu, mô hình phân loại.

  1. Kết hợp các thuật toán học máy như RNN, để thực hiện tối ưu hóa tự động của tham số và đánh giá chiến lược.

  2. Phát triển hệ thống giao dịch tự động, kết nối đĩa trục để kiểm tra lại.

Tóm tắt

Chiến lược này nói chung là một chiến lược theo dõi xu hướng đơn giản hơn. Cốt lõi sử dụng hai đường ngang để đánh giá xu hướng ngắn hạn. Kết hợp với VWAP và RSI để xử lý tín hiệu, áp dụng ATR để đánh giá rủi ro.

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

//@version=5
strategy("Simple Moving Averages", overlay=true)

sma50 = ta.sma(close, 50)
sma200 = ta.sma(close, 200)
vwap = ta.vwap(close)
rsi = ta.rsi(close, 14)
[diPlus, diMinus, adx_val] = ta.dmi(14, 14)
atr_val = ta.atr(14)

plot(sma50, color=color.new(color.green, 0))
plot(sma200, color=color.new(color.red, 0))
plot(vwap)

longCondition = ta.crossover(sma50, sma200) and vwap > close
shortCondition = ta.crossunder(sma50, sma200) and vwap < close

if (longCondition)
    strategy.entry("Long", strategy.long)
    
if (shortCondition)
    strategy.entry("Short", strategy.short)

barcolor = sma50 > sma200 ? (vwap < close ? (rsi < 70 ? color.green : color.blue) : color.yellow) : (sma50 < sma200 ? (vwap > close ? (rsi > 30 ? color.red : color.orange) : color.yellow) : na)
barcolor(barcolor)
bgcolor(adx_val > 25 and atr_val > 1.18 ? color.new(color.gray, 50) : color.new(color.black, 50), transp=90)

// ADX and ATR Label Box
// label.new(bar_index, high, "ADX: " + str.tostring(adx_val, "#.##") + "\nATR: " + str.tostring(atr_val, "#.##"), color=color.new(color.white, 0), textcolor=color.new(color.black, 0), style=label.style_labeldown, yloc=yloc.price, xloc=xloc.bar_index, size=size.small, textalign=text.align_left)

// Exit conditions (optional)
strategy.close("Long", when = ta.crossunder(sma50, sma200))
strategy.close("Short", when = ta.crossover(sma50, sma200))

// Take Profit and Stop Loss
takeProfitPercentage = 5
stopLossPercentage = 3

strategy.exit("Take Profit / Stop Loss", "Long", profit = takeProfitPercentage, loss = stopLossPercentage)
strategy.exit("Take Profit / Stop Loss", "Short", profit = takeProfitPercentage, loss = stopLossPercentage)