Xét chéo trung bình chuyển động theo hàm số và trung bình chuyển động với chiến lược chặt chẽ

Tác giả:ChaoZhang, Ngày: 2024-01-19 14:50:50
Tags:

img

Tổng quan

EMA (Exponential Moving Average) và MA (Moving Average) Crossover với Close Strategy tạo ra các tín hiệu giao dịch dựa trên biến động giá của tài sản tương đối với EMA 9 giai đoạn và MA 20 giai đoạn. Nó sử dụng tín hiệu EMA và MA crossover để xác định hướng xu hướng cho các mục nhập và đóng các vị trí khi giá vượt qua lại các đường trung bình động.

Chiến lược logic

EMA và MA tính toán

  • EMA9 tính toán trung bình chuyển động biểu số 9 giai đoạn của giá đóng cửa.
  • ma20 tính trung bình di chuyển đơn giản 20 giai đoạn của giá đóng cửa. MA là mức trung bình của giá đóng cửa trong 20 giai đoạn.

Điều kiện mua và bán

  • buyCondition là true khi close > cả ema9 và ma20.
  • sellCondition là true khi close < cả ema9 và ma20.

Thực hiện giao dịch

  • Khi buyCondition là đúng, thực hiện lệnh nhập dài.
  • Khi sellCondition là đúng, thực hiện lệnh nhập ngắn.
  • Khi giá vượt qua EMA9 hoặc MA20, đóng bất kỳ vị trí mở nào.

Màu nến

  • Nến màu xanh lá cây cho thấy điều kiện mua
  • Nến màu đỏ cho thấy tình trạng bán
  • Các nến khác là mặc định màu trắng

EMA và MA Plotting

Các EMA 9 và 20 MA được vẽ trên biểu đồ để tham khảo trực quan.

Phân tích lợi thế

Chiến lược kết hợp hai chỉ số được sử dụng rộng rãi, tận dụng khả năng theo dõi xu hướng và làm mịn của EMA và MA để tạo ra các tín hiệu đáng tin cậy hơn.

Crossover cung cấp tín hiệu thay đổi xu hướng rõ ràng, tránh giao dịch xấu.

Mã màu nến cho thấy hình ảnh các điều kiện mà không cần tính toán phức tạp.

Thực hiện tự động nhập và xuất tuân thủ nghiêm ngặt các quy tắc đã xác định trước, hỗ trợ quản lý rủi ro.

Phân tích rủi ro

Như các chỉ số theo xu hướng, đường trung bình động có thể tạo ra nhiều tín hiệu sai trong các giai đoạn giới hạn phạm vi. Tránh sử dụng chiến lược này trong các thị trường hỗn loạn, không có xu hướng.

Di chuyển giá nhanh có thể tạo ra sự chậm trễ trong giá trị MA và EMA, gây ra cơ hội bị bỏ lỡ.

Các thông số EMA và MA ảnh hưởng đáng kể đến hiệu suất chiến lược và nên được điều chỉnh cho các sản phẩm và khung thời gian khác nhau.

Các chiến lược tự động không thể thích nghi với các tình huống phức tạp như một thương nhân.

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

Kiểm tra các kết hợp chiều dài EMA và MA khác nhau để tìm các thông số tối ưu tối đa hóa tín hiệu đúng và giảm thiểu tín hiệu sai.

Kết hợp các chỉ số biến động như ATR để lọc các thiết lập rủi ro cao hơn và kiểm soát tổn thất tiềm năng.

Kết hợp với các chỉ số hoặc tín hiệu khác như khối lượng và Bollinger Bands để xác nhận độ tin cậy của tín hiệu.

Thêm stop loss và sử dụng logic lợi nhuận để quản lý chủ động rủi ro giao dịch.

Tóm lại

EMA và MA Crossover với Close Strategy sử dụng EMA và MA crossover để xác định xu hướng và đầu vào tín hiệu. Mặc dù đơn giản và tự động, hiệu suất phụ thuộc nhiều vào điều chỉnh tham số và điều kiện thị trường.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("EMA and MA Crossover with Close Strategy", shorttitle="EMA_MA_Close", overlay=true)

// Define the length of the Exponential Moving Average and Moving Average
lengthEMA = 9
lengthMA = 20

// Calculate the 9 EMA and 20 MA
ema9 = ema(close, lengthEMA)
ma20 = sma(close, lengthMA)

// Define the buy and sell conditions
buyCondition = close > ema9 and close > ma20
sellCondition = close < ema9 and close < ma20

// Define the close position condition
closeCondition = crossover(close, ema9) or crossover(close, ma20)

// Execute buy or sell orders
if (buyCondition)
    strategy.entry("Buy", strategy.long)
else if (sellCondition)
    strategy.entry("Sell", strategy.short)

// Close any position if the close condition is met
if (closeCondition)
    strategy.close_all()

// Coloring the candles based on conditions
barcolor(buyCondition ? color.green : na)
barcolor(sellCondition ? color.red : na)

// Plotting the EMA and MA for reference
plot(ema9, color=color.blue, title="9 EMA")
plot(ma20, color=color.orange, title="20 MA")


Thêm nữa