Chiến lược giao dịch đảo ngược đường trung bình động kép


Ngày tạo: 2023-11-10 11:18:38 sửa đổi lần cuối: 2023-11-10 11:18:38
sao chép: 0 Số nhấp chuột: 650
1
tập trung vào
1621
Người theo dõi

Chiến lược giao dịch đảo ngược đường trung bình động kép

Tổng quan

Chiến lược này được thiết kế dựa trên nguyên tắc giao dịch vàng và vàng của đường trung bình di chuyển nhanh và chậm. Khi đường trung bình nhanh đi qua đường trung bình chậm từ phía dưới, hãy làm nhiều; Khi đường trung bình nhanh đi qua đường trung bình chậm từ phía trên xuống, hãy làm trống.

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

Chiến lược này sử dụng phương tiện di chuyển theo cấp số nhân để tính toán đường trung bình nhanh và chậm. Chiều dài của đường trung bình nhanh là 10 chu kỳ và đường trung bình chậm là 30 chu kỳ. Chiến lược này đầu tiên tính toán EMA nhanh và EMA chậm, sau đó vẽ đường trung bình và hiển thị nền màu khác nhau để chỉ định hướng xu hướng đường trung bình.

Khi giá đóng cửa hôm nay cao hơn đường trung bình nhanh và đường trung bình nhanh cao hơn đường trung bình chậm, hiển thị nền màu xanh lá cây cho thấy xu hướng tăng. Khi giá đóng cửa hôm nay thấp hơn đường trung bình nhanh và đường trung bình nhanh thấp hơn đường trung bình chậm, hiển thị nền màu đỏ cho thấy xu hướng giảm.

Trong xu hướng tăng, nếu có một đường K màu đỏ ((giá đóng cửa thấp hơn giá mở cửa) và ngày hôm qua cũng là đường K màu đỏ, hãy tham gia thêm. Thiết lập điểm dừng lỗ 300, dừng lỗ là vị trí trống.

Trong xu hướng giảm, nếu có đường K màu xanh lá cây ((giá đóng cửa cao hơn giá mở cửa) và ngày hôm qua cũng là đường K màu xanh lá cây, hãy tham gia vào lệnh nhượng quyền. Thiết lập điểm dừng lỗ 300, dừng lại để giữ vị trí bằng phẳng.

Sau mỗi giao dịch mở vị trí, nếu nắm giữ hơn 1008000000 msec (khoảng 2 tuần), hãy bắt buộc giữ vị trí bằng phẳng, để ngăn chặn tình trạng chết.

Phân tích lợi thế

  • Sử dụng hệ thống EMA kép, có thể lọc hiệu quả tiếng ồn thị trường, nhận diện các điểm đảo ngược xu hướng
  • Đánh giá màu sắc của vật thể K-line, tín hiệu nhập cảnh là đáng tin cậy hơn
  • Thiết lập chiến lược dừng lỗ để giảm tổn thất của các giao dịch cá nhân
  • Cần có một cơ chế thanh toán bắt buộc để tránh thiệt hại khổng lồ từ tình trạng ngưng trệ

Phân tích rủi ro

  • Hệ thống EMA không nhạy cảm với các thị trường bên ngoài, có thể bỏ lỡ một số cơ hội giao dịch
  • Các tham số đường trung bình nhanh và đường trung bình chậm được thiết lập không chính xác, có thể dẫn đến tín hiệu sai
  • Đi quá sâu có thể gây ra tổn thất không cần thiết
  • Không đúng cách thiết lập thời gian tháo lỗ có thể dẫn đến tháo lỗ quá sớm hoặc giữ quá lâu

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

  • Có thể kiểm tra lợi nhuận của hệ thống EMA theo các tham số khác nhau, tối ưu hóa chiều dài của đường trung bình chậm
  • Có thể xem xét thêm các chỉ số khác như MACD để xác nhận, tăng độ chính xác tín hiệu
  • Bạn có thể kết hợp các biến động của khối lượng giao dịch trong ngày để quyết định điểm dừng lỗ
  • Có thể điều chỉnh thời gian bắt buộc theo sự biến động của thị trường

Tóm tắt

Chiến lược này tổng thể là cân bằng hơn, sử dụng hai EMA nhận dạng xu hướng và kết hợp với các thực thể K-line hợp tác với các quy tắc bổ sung để giao dịch, có thể lọc hiệu quả các tín hiệu giả. Tuy nhiên, hệ thống EMA và các thiết lập tham số vẫn cần được tối ưu hóa, cơ chế dừng lỗ cũng cần phải điều chỉnh theo thị trường, nói chung là một chiến lược giao dịch xu hướng đáng tin cậy.

Mã nguồn chiến lược
/*backtest
start: 2023-10-10 00:00:00
end: 2023-11-09 00:00:00
period: 1h
basePeriod: 15m
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/
// © yeainshukla

//@version=5


strategy('BuyRedSellGreen4H', overlay = true)
greenCandle = close > open
redCandle = open > close

start  = timestamp(2023,9,18,0,00)
end = timestamp(2023,12,31,0,00)


fastLength = input.int(10, title="Fast Average Length")
slowLength = input.int(30, title="Slow Average Length")

averageData = input.source(close, title="Average Data Source")

// Calculate exponential moving averages
fastAverage = ta.ema(averageData, fastLength)
slowAverage = ta.ema(averageData, slowLength)

// Plot averages
plot(fastAverage, color=color.navy, title="Fast EMA")
plot(slowAverage, color=color.fuchsia, linewidth=2, title="Slow EMA")

// Show the moving average trend with a coloured background
backgroundColor = if close > fastAverage and fastAverage > slowAverage
    color.new(color.green, 85)
else if close < fastAverage and fastAverage < slowAverage
    color.new(color.red, 85)
else
    color.new(color.orange, 90)

bgcolor(backgroundColor, title="EMA Background")


if time >= start and time < end
    if(close < open) 
        if(close[1] < open[1])
            strategy.entry("Enter Long", strategy.long)
            strategy.exit("Exit Long", from_entry="Enter Long")
            strategy.close("Enter Short")

    else
        if(close[1] > open[1])
            strategy.entry("Enter Short", strategy.short)
            strategy.exit("Exit Short", from_entry="Enter Short")
            strategy.close("Enter Long")
    if strategy.position_size < 0 or strategy.position_size > 0// short and long is opened.
        if((time - strategy.opentrades.entry_time(strategy.opentrades - 1)) > 1008000000)
            strategy.close("Enter Short")
            strategy.close("Enter Long")