Chiến lược theo dõi trung bình di chuyển hàng ngày cho giá trị vàng

Tác giả:ChaoZhang, Ngày: 2024-01-12 11:54:21
Tags:

img

Tổng quan

Chiến lược này sử dụng sự kết hợp của giá mở và đóng của ngày trước, đường EMA nhanh và đường EMA chậm để xác định hướng giá trị thị trường trong khoảng thời gian giao dịch được xác định bởi người dùng, và thực hiện các mục dài hoặc ngắn tương ứng.

Chiến lược logic

Chiến lược chủ yếu dựa trên đánh giá của nó về hướng giá vàng trên hai khía cạnh:

  1. Sự gia tăng và giảm giá đóng cửa ngày trước so với giá mở. Nếu giá đóng cửa cao hơn giá mở, nó cho thấy tổng giá trị đã tăng trong ngày đó. Nếu giá đóng cửa thấp hơn giá mở, nó cho thấy tổng giá trị đã giảm trong ngày đó.

  2. Quan hệ vị trí giữa đường EMA nhanh 50 giai đoạn và đường EMA chậm 200 giai đoạn. Nếu đường nhanh nằm trên đường chậm, có nghĩa là tốc độ tăng giá trị ngắn hạn lớn hơn xu hướng dài hạn. Nếu đường nhanh nằm dưới đường chậm, có nghĩa là tốc độ tăng giá trị ngắn hạn thấp hơn xu hướng dài hạn.

Khi điều kiện dài được kích hoạt, nếu kết thúc ngày trước cao hơn mở, giá hiện tại cao hơn mở ngày trước, EMA nhanh hơn EMA chậm, và trong giờ giao dịch được xác định bởi người dùng, chiến lược sẽ mua vàng.

Khi điều kiện bán ngắn được kích hoạt, nếu ngày trước đó đóng cửa thấp hơn mở, giá hiện tại thấp hơn ngày trước đó mở, EMA nhanh thấp hơn EMA chậm, và nó trong giờ giao dịch được xác định bởi người dùng, chiến lược sẽ bán vàng.

Ngoài ra, chiến lược này sử dụng trailing stop loss để khóa lợi nhuận hoặc giới hạn lỗ.

Phân tích lợi thế

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

  1. Sử dụng nhiều chỉ số để xác định hướng giá vàng làm giảm khả năng giao dịch xấu.

  2. Chặn theo dõi có thể khóa hiệu quả lợi nhuận và thoát ra kịp thời khi xu hướng đảo ngược, giảm rủi ro.

  3. Người dùng có thể chọn các cửa sổ giao dịch phù hợp dựa trên thời gian giao dịch của riêng họ để tránh bị mắc kẹt trong các hoạt động của tổ chức.

  4. Các giá trị thời gian EMA có thể được điều chỉnh và tối ưu hóa theo sự thay đổi của thị trường, làm cho chiến lược linh hoạ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. Các sự kiện đột ngột có thể gây ra tổn thất lớn đòi hỏi sự can thiệp bằng tay hoặc khoảng cách dừng mất mát thoải mái hơn.

  2. EMA không thể lọc hoàn toàn tiếng ồn thị trường. Các tín hiệu sai có thể kích hoạt các giao dịch không cần thiết. Các thông số có thể được tối ưu hóa hoặc thêm nhiều bộ lọc.

  3. Cài đặt khoảng cách dừng phía sau không đúng cũng làm tăng rủi ro - quá chặt chẽ có xu hướng bị dừng sớm trong khi quá rộng không kiểm soát được tổn thất hiệu quả.

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

Chiến lược cũng có thể được tối ưu hóa trong các khía cạnh sau:

  1. Thêm các chỉ số kỹ thuật khác để lọc tín hiệu, như MACD, Bollinger Bands vv để giảm tín hiệu EMA sai.

  2. Chuyển sang dừng thích nghi điều chỉnh khoảng cách dừng thông minh dựa trên biến động thị trường.

  3. Thêm các quy tắc về kích thước vị trí để cho phép thoát một phần để kiểm soát rủi ro tốt hơn và giảm tác động của tổn thất giao dịch duy nhất.

  4. Thêm các mô hình học máy để xác định hướng xu hướng, cải thiện độ chính xác bằng cách sử dụng nhiều dữ liệu lịch sử hơn.

  5. Tối ưu hóa lựa chọn cửa sổ thời gian giao dịch bằng cách sử dụng phân bố Gaussian để nhắm mục tiêu khoảng thời gian tham gia chiến lược cao hơn.

Kết luận

Tóm lại, đây là một chiến lược theo xu hướng điển hình. Nó kết hợp nhiều chỉ số để xác định xu hướng giá trị tăng hoặc giảm và được coi là mạnh mẽ. Ứng dụng dừng lại cũng cho phép kiểm soát lỗ hiệu quả. Việc tối ưu hóa thêm các chỉ số và các quy tắc dừng lỗ có thể đạt được sự cân bằng tốt hơn giữa lợi nhuận và quản lý rủi ro. Nó phù hợp với các nhà đầu tư có một số kiến thức đầu tư định lượng muốn tham gia giao dịch tiền điện tử.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("My Strategy", overlay=true)

// Inputs for user to modify
startHour = input(11, title="Start Hour")
endHour = input(16, title="End Hour")
trailingStop = input(100, title="Trailing Stop Start (pips)")
trailingStep = input(10, title="Trailing Step (pips)")

// Define the EMAs
longEma = ema(close, 200)
shortEma = ema(close, 50)

// Calculate daily open, high, low, close
daily_open = security(syminfo.tickerid, "D", open[1])
daily_close = security(syminfo.tickerid, "D", close[1])

// Time conditions
timeAllowed = (hour >= startHour) and (hour <= endHour)

// Define long condition based on your criteria
longCondition = (daily_close > daily_open) and (close > daily_open) and (shortEma > longEma) and timeAllowed

// Define short condition based on your criteria
shortCondition = (daily_close < daily_open) and (close < daily_open) and (shortEma < longEma) and timeAllowed

// Enter the trade
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// Trailing Stop Loss
strategy.exit("Exit Long", "Long", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)
strategy.exit("Exit Short", "Short", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)

// Plotting
plot(daily_open, color=color.red, title="Daily Open")
plot(longEma, color=color.blue, title="200 EMA")
plot(shortEma, color=color.orange, title="50 EMA")


Thêm nữa