Chiến lược giao dịch định lượng dựa trên đường trung bình động đơn giản


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

Chiến lược giao dịch định lượng dựa trên đường trung bình động đơn giản

Tổng quan

Chiến lược chéo trung bình di chuyển là một chiến lược giao dịch định lượng dựa trên trung bình di chuyển đơn giản. Chiến lược này tạo ra tín hiệu mua và bán bằng cách tính toán các trung bình di chuyển đơn giản trong các chu kỳ khác nhau khi chúng giao nhau.

Cụ thể, chiến lược này tính toán trung bình di chuyển đơn giản của đường 9 và đường 45. Khi giá vượt qua đường 9 và đường 45, nó tạo ra tín hiệu mua; Khi giá vượt qua đường 9 và đường 45 dưới đó, nó tạo ra tín hiệu bán.

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

Lập luận cốt lõi của chiến lược này dựa trên nguyên lý “đá chết” của các đường trung bình di chuyển. Đường trung bình di chuyển có thể lọc hiệu quả tiếng ồn thị trường, cho thấy sự thay đổi trong xu hướng lớn. Khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn, giá bắt đầu đi vào xu hướng tăng; khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn, giá bắt đầu đi vào xu hướng giảm.

Cụ thể, chiến lược này sử dụng đường trung bình di chuyển đơn giản của đường 9 và đường 45. Đường 9 đại diện cho xu hướng ngắn hạn và đường 45 đại diện cho xu hướng dài hạn. Khi giá vượt qua đường 9 và đường 45, nó cho thấy giá cổ phiếu đang ở kênh tăng trong ngắn hạn và dài hạn, do đó tạo ra tín hiệu mua; khi giá vượt qua đường 9 và đường 45, nó cho thấy xu hướng tăng của giá cổ phiếu dần dần suy yếu, do đó tạo ra tín hiệu bán.

Về mặt logic mã, chiến lược này đầu tiên tính toán đường trung bình di chuyển đơn giản của đường 9 và đường 45 và sau đó đánh giá hình nét vàng và hình nét chết của đường cân bằng bằng các hàm ta.crossover và ta.crossunder. Khi tạo ra tín hiệu mua và bán, hãy sử dụng hàm plotshape để vẽ biểu đồ tín hiệu hình tam giác và hình tam giác đảo ngược trên biểu đồ đường K.

Ngoài ra, chiến lược này cũng thiết lập logic dừng lỗ cho các vị trí dài và ngắn. Cụ thể, sau khi mở vị trí, giá cao nhất và giá thấp nhất của một đường K trước đó sẽ được lấy làm giá dừng lỗ. Điều này có thể khóa lợi nhuận và tránh thua lỗ quá lớn.

Phân tích lợi thế

  • Sử dụng thiết lập hai đường trung bình, có thể nắm bắt sự thay đổi của xu hướng trung và dài hạn, tránh bị ảnh hưởng bởi tiếng ồn thị trường ngắn hạn, cải thiện chất lượng tín hiệu.
  • Kết hợp với chiến lược dừng lỗ, bạn có thể kiểm soát rủi ro hiệu quả và khóa lợi nhuận.
  • Lập luận của chiến lược rất đơn giản, dễ hiểu và dễ thực hiện.
  • Tỷ lệ sử dụng vốn cao, có thể thu được lợi nhuận đầy đủ.

Phân tích rủi ro

  • Chiến lược hai dòng đồng đều dễ tạo ra tín hiệu đẩy chết, có thể dẫn đến quá nhiều giao dịch vô hiệu.
  • Giá dừng lỗ có thể được thiết lập quá bảo thủ và không thể tiếp tục theo dõi xu hướng.
  • Lựa chọn tham số không đúng có thể dẫn đến tần suất giao dịch quá cao hoặc quá thấp.
  • Không thể thích nghi với sự thay đổi của thế giới.

Phản ứng:

  1. Tối ưu hóa tham số đường trung bình, giảm tỷ lệ giao dịch không hiệu quả
  2. Tối ưu hóa logic dừng lỗ, sử dụng xu hướng theo dõi dừng lỗ
  3. Kết hợp các chỉ số khác để lọc tín hiệu
  4. Sự can thiệp của con người để ngăn chặn sự thay đổi của thảm họa

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

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

  1. Sử dụng đường trung bình di chuyển thích ứng hoặc đường trung bình di chuyển chỉ số để nắm bắt tốt hơn các thay đổi xu hướng.

  2. Tăng các tín hiệu lọc như chỉ số dao động để tránh tín hiệu sai trong trường hợp chấn động.

  3. Sử dụng phương pháp tối ưu hóa tham số để tìm kiếm sự kết hợp tham số tốt nhất.

  4. Thêm một cơ chế theo dõi xu hướng vào logic dừng, cho phép đường dừng theo dõi giá một cách linh hoạt.

  5. Tăng sự phán đoán về mức hỗ trợ kháng cự lớn để tránh tín hiệu sai ở các vùng giá quan trọng.

  6. Hình thức này được kết hợp với mô hình học máy để lọc thêm chất lượng tín hiệu.

Tóm tắt

Chiến lược giao chéo đường thẳng là một chiến lược theo dõi xu hướng đơn giản và thực tế. Nó có thể lọc hiệu quả tiếng ồn, nắm bắt sự thay đổi trong xu hướng trung và dài hạn của giá. Sau khi kết hợp với logic dừng lỗ thích hợp, có thể giao dịch xu hướng trên cơ sở kiểm soát rủi ro.

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

//@version=5
strategy("SMA Crossover Strategy", overlay=true)

// Input parameters
fast_length = input(9, title="Fast SMA Length")
slow_length = input(45, title="Slow SMA Length")

// Calculate moving averages
fast_sma = ta.sma(close, fast_length)
slow_sma = ta.sma(close, slow_length)

// Buy condition
buy_condition = ta.crossover(close, fast_sma) and ta.crossover(close, slow_sma)

// Sell condition
sell_condition = ta.crossunder(close, fast_sma) and ta.crossunder(close, slow_sma)

// Calculate stop loss levels
prev_low = request.security(syminfo.tickerid, "1D", low[1], lookahead=barmerge.lookahead_on)
prev_high = request.security(syminfo.tickerid, "1D", high[1], lookahead=barmerge.lookahead_on)

// Plot signals on the chart
plotshape(buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)

// Strategy exit conditions
long_stop_loss = sell_condition ? prev_low : na
short_stop_loss = buy_condition ? prev_high : na

strategy.exit("Long Exit", from_entry="Long", when=sell_condition, stop=long_stop_loss)
strategy.exit("Short Exit", from_entry="Short", when=buy_condition, stop=short_stop_loss)

strategy.entry("Long", strategy.long, when=buy_condition)
strategy.entry("Short", strategy.short, when=sell_condition)