Chiến lược chéo trung bình di chuyển

Tác giả:ChaoZhang, Ngày: 2024-02-04 16:00:31
Tags:

img

Tổng quan

Chiến lược chuyển động trung bình là một chiến lược giao dịch chứng khoán phổ biến. Nó tạo ra tín hiệu mua và bán bằng cách tính toán trung bình chuyển động nhanh và chậm và phát hiện các điểm chéo của chúng. Cụ thể, khi trung bình chuyển động nhanh vượt trên trung bình chuyển động chậm từ dưới, nó tạo ra tín hiệu mua; khi trung bình chuyển động nhanh vượt dưới trung bình chuyển động chậm từ trên, nó tạo ra tín hiệu bán.

Chiến lược logic

Lý thuyết cốt lõi của chiến lược này là: trung bình di chuyển nhanh đại diện cho xu hướng ngắn hạn của một cổ phiếu, trong khi trung bình di chuyển chậm đại diện cho xu hướng dài hạn của nó. Khi xu hướng ngắn hạn tăng lên (vạch vàng), nó chỉ ra rằng cổ phiếu có thể bước vào khu vực mua; khi xu hướng ngắn hạn giảm xuống (vạch chết), nó chỉ ra rằng cổ phiếu có thể bước vào khu vực bán.

Trong chiến lược này, trung bình di chuyển nhanh maFast và trung bình di chuyển chậm maSlow được xác định. maFast có khoảng thời gian 9 đại diện cho xu hướng ngắn hạn 9 ngày của một cổ phiếu. maSlow có khoảng thời gian 18 đại diện cho xu hướng dài hạn 18 ngày. Chiến lược phát hiện sự chéo chéo của chúng để xác định những thay đổi trong xu hướng ngắn hạn và dài hạn. Nó tạo ra tín hiệu mua khi maFast vượt trên maSlow, và tín hiệu bán khi maFast vượt dưới maSlow.

Phân tích lợi thế

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

  1. Lý luận của nó rất đơn giản và dễ hiểu và thực hiện.
  2. Mức trung bình động có thể lọc tiếng ồn giá hiệu quả và tạo ra các tín hiệu giao dịch đáng tin cậy.
  3. Các MAs nhanh và chậm kết hợp xu hướng ngắn hạn và dài hạn, làm cho các tín hiệu ổn định.
  4. Các thông số MA có thể được điều chỉnh linh hoạt để thích nghi với các cổ phiếu khác nhau.
  5. Việc tối ưu hóa thêm các thông số về thời gian MA có thể dẫn đến hiệu suất giao dịch tốt hơn.

Phân tích rủi ro

Ngoài ra còn có một số rủi ro với chiến lược này:

  1. Nhiều tín hiệu không chính xác và giao dịch quá mức có thể xảy ra khi biến động giá cao.
  2. Cài đặt tham số không chính xác có thể gây ra giao dịch quá thường xuyên hoặc sự chậm trễ tín hiệu.
  3. Nó không thể theo dõi thị trường và cổ phiếu cá nhân thay đổi nhanh chóng một cách hiệu quả.
  4. Có thể có một số thời gian trễ, có thể gây ra mất điểm nhập hoặc xuất quan trọng.

Những rủi ro này có thể được giảm bằng cách điều chỉnh các tham số MA, thiết lập các chiến lược dừng lỗ v.v.

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

Có thêm không gian tối ưu hóa cho chiến lược này:

  1. Kết hợp các chỉ số kỹ thuật khác để lọc tín hiệu, ví dụ: khối lượng giao dịch, STOCH.
  2. Thêm cơ chế xác định xu hướng để tránh bỏ lỡ các xu hướng chính.
  3. Tối ưu hóa các thông số MA để tìm ra sự kết hợp tốt nhất.
  4. Thiết lập các chiến lược dừng lỗ để kiểm soát lỗ giao dịch duy nhất.
  5. Kết hợp các mô hình học sâu để dự đoán biến động giá.

Kết luận

Kết luận, chiến lược chéo trung bình động là một chiến lược rất cổ điển và thực tế nói chung. Nó có logic đơn giản và ứng dụng rộng trong giao dịch thực tế. Bằng cách điều chỉnh tham số và kết hợp các chỉ số kỹ thuật khác, nó có thể được cải thiện hơn nữa để đạt được tỷ lệ rủi ro-lợi nhuận tốt hơn. Nói chung, nó là một nền tảng quan trọng của giao dịch định lượng và xứng đáng nghiên cứu và áp dụng sâu sắc.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Moving Average Cross", overlay=true, initial_capital=10000, currency='USD')



// === GENERAL INPUTS ===
// short ma
maFastSource   = input(defval = close, title = "Fast MA Source")
maFastLength   = input(defval = 9, title = "Fast MA Period", minval = 1)
// long ma
maSlowSource   = input(defval = close, title = "Slow MA Source")
maSlowLength   = input(defval = 18, title = "Slow MA Period", minval = 1)


// === SERIES SETUP ===
/// a couple of ma's..
maFast = ema(maFastSource, maFastLength)
maSlow = ema(maSlowSource, maSlowLength)



// === PLOTTING ===
fast = plot(maFast, title = "Fast MA", color = red, linewidth = 2, style = line, transp = 30)
slow = plot(maSlow, title = "Slow MA", color = green, linewidth = 2, style = line, transp = 30)



// === LOGIC ===
enterLong = crossover(maFast, maSlow)
exitLong = crossover(maSlow, maFast)



// Entry //
strategy.entry(id="Long Entry", long=true, when=enterLong)
strategy.entry(id="Short Entry", long=false, when=exitLong)


// === FILL ====

fill(fast, slow, color = maFast > maSlow ? green : red)

Thêm nữa