Xu hướng EMA sau chiến lược giao dịch

Tác giả:ChaoZhang, Ngày: 2023-09-19 19:38:53
Tags:

Tổng quan

Chiến lược này là một chiến lược theo xu hướng EMA điển hình. Nó sử dụng chéo vàng của EMA nhanh và EMA chậm để xác định xu hướng tăng, và chéo chết để xác định xu hướng giảm, cho các giao dịch dài và ngắn tương ứng. Chiến lược theo dõi đáng tin cậy xu hướng trung và dài hạn và phù hợp với giao dịch xoay.

Chiến lược logic

Lý luận cốt lõi là:

  1. Tính toán EMA nhanh, ví dụ như EMA 12 giai đoạn
  2. Tính toán EMA chậm, ví dụ như EMA 26 giai đoạn
  3. Khi EMA nhanh vượt qua EMA chậm, xác định xu hướng tăng cho bước vào dài
  4. Khi EMA nhanh vượt qua dưới EMA chậm, xác định xu hướng giảm cho bước vào ngắn
  5. Khóa vị trí hiện tại khi EMA nhanh vượt qua lại dưới EMA chậm

Sử dụng EMA có tốc độ khác nhau có thể phát hiện hiệu quả những thay đổi xu hướng. EMA nhanh phản ứng nhanh với những thay đổi giá để phát hiện xu hướng sớm, trong khi EMA chậm lọc các tín hiệu sai để đảm bảo xác nhận xu hướng.

Các đường chéo vàng báo hiệu sự bắt đầu của xu hướng tăng cho các đường dài, trong khi các đường chéo chết báo hiệu sự bắt đầu của xu hướng giảm cho các đường ngắn.

Ưu điểm

  • EMA xác định hiệu quả xu hướng trung bình đến dài hạn
  • EMA nhanh và chậm kết hợp để tạo ra hệ thống xu hướng đáng tin cậy
  • Logic đơn giản dễ thực hiện
  • Các thông số EMA có thể cấu hình phù hợp với các công cụ khác nhau
  • Tiêu chuẩn giá trị của các loại chứng khoán

Rủi ro và giảm thiểu

  • Không thể dự đoán các điểm đảo ngược xu hướng trước, một số tổn thất
  • Chọn tham số EMA kém có thể bỏ lỡ các điểm thay đổi xu hướng
  • Các thông số EMA cần điều chỉnh cho những thay đổi về điều kiện thị trường

Hạn chế:

  1. Sử dụng dừng phạm vi để hạn chế tổn thất
  2. Thêm các chỉ số khác để phát hiện sự đảo ngược xu hướng tiềm năng
  3. Tối ưu hóa các tham số để xác định xu hướng tốt hơn

Cơ hội gia tăng

Chiến lược có thể được tăng cường trong các lĩnh vực như:

  1. Học máy để tự động điều chỉnh các thông số EMA để thích nghi tốt hơn

  2. Định dạng vị trí dựa trên biến động để điều chỉnh theo biến động thị trường

  3. Các dao động như RSI để tinh chỉnh các điểm nhập cảnh

  4. Thêm các điểm dừng, dừng lấy lợi nhuận để quản lý rủi ro tốt hơn

  5. Phân tích khối lượng để đo lường dòng chảy/dòng chảy của quỹ để xác minh xu hướng

  6. Sự kết hợp danh mục đầu tư với các chiến lược không tương quan để giảm rút vốn và tăng sự ổn định lợi nhuận

Kết luận

Chiến lược theo xu hướng EMA là một cách đơn giản và thực tế để theo dõi xu hướng trung hạn đến dài hạn. Nó sử dụng đường chéo EMA nhanh và chậm cho thời gian nhập cảnh. Dễ thực hiện, nó cũng có thể được mở rộng trong nhiều chiều để thích nghi hơn. Phù hợp với các thị trường xu hướng giao dịch xoay.


/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-18 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © HomoDeus666

//@version=5

strategy("EMA12/26 with date backtest range (BTCpair)", overlay=true,initial_capital = 1,commission_type = strategy.commission.percent,currency = currency.BTC)

//input date and time
useDateFilter = input.bool(true, title="Filter Date Range of Backtest",
     group="Backtest Time Period")
backtestStartDate = input(timestamp("1 Jan 2021"), 
     title="Start Date", group="Backtest Time Period",
     tooltip="This start date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")
backtestEndDate = input(timestamp("1 Jan 2022"),
     title="End Date", group="Backtest Time Period",
     tooltip="This end date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")
     
//check date and time option
inTradeWindow =  true
/// plot and indicator
fastEMA = ta.ema(close,12), slowEMA=ta.ema(close,26)
plot(fastEMA,color=color.green,linewidth = 2)
plot(slowEMA,color=color.red,linewidth=2)

//entry when condition
longCondition = ta.crossover(fastEMA,slowEMA)
if (longCondition) and inTradeWindow
    strategy.entry("buy", strategy.long)

if ta.crossunder(ta.ema(close, 12), ta.ema(close, 26)) and inTradeWindow
    strategy.close("buy")
    
// trades and cancel all unfilled pending orders
if not inTradeWindow and inTradeWindow[1]
    strategy.cancel_all()
    strategy.close_all(comment="Date Range Exit")

Thêm nữa