Chiến lược giao dịch tùy chọn chéo EMA/MA

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

img

Tổng quan

Đây là một chiến lược giao dịch tùy chọn ngắn hạn dựa trên đường chéo trung bình động nhân tố (EMA) và trung bình động (MA) để tạo ra tín hiệu giao dịch. Nó tạo ra tín hiệu mua khi EMA nhanh vượt qua MA chậm từ dưới, và bán tín hiệu khi EMA nhanh vượt qua dưới MA chậm.

Chiến lược logic

Chiến lược sử dụng hai EMA / MA với các thông số khác nhau, một EMA nhanh và một MA chậm. Thời gian EMA nhanh được đặt thành 50 và thời gian MA chậm được đặt thành 100.

Khi sự gia tăng giá ngắn hạn tăng tốc, EMA nhanh sẽ xuyên qua MA chậm từ dưới, tạo ra tín hiệu mua. Điều này cho thấy tâm lý tăng trưởng, làm cho nó phù hợp để xem xét mua hoặc mua các tùy chọn mua.

Khi giảm giá ngắn hạn tăng tốc, EMA nhanh sẽ phá vỡ dưới MA chậm, tạo ra tín hiệu bán. Điều này cho thấy tâm lý giảm mạnh, cho thấy cơ hội bán hoặc mua các tùy chọn bán.

Bằng cách nắm bắt các giao dịch chéo giữa EMA / MA nhanh và chậm để xác định xu hướng ngắn hạn và cảm xúc của thị trường, các giao dịch quyền chọn có thể được thực hiện kịp thời để kiếm lợi nhuận từ biến động giá tương đối ngắn hạn.

Phân tích lợi thế

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

  1. Phản ứng nhanh để nắm bắt biến động ngắn hạn.

  2. Đơn giản để thực hiện. Chỉ cần theo dõi chéo của hai trung bình động mà không cần tính toán phức tạp.

  3. Ứng dụng linh hoạt để giao dịch tùy chọn hoặc cổ phiếu. Có thể đi dài / ngắn dựa trên tín hiệu, hoặc giao dịch tùy chọn tương ứng.

  4. Rủi ro có thể kiểm soát được với điểm dừng lỗ rõ ràng.

Phân tích rủi ro

Một số rủi ro cần lưu ý:

  1. Các tín hiệu whipsaw tiềm năng và các thị trường dao động có thể gây ra giao dịch quá mức và tăng chi phí. Có thể mở rộng stop loss để tránh giao dịch quá mức.

  2. Thử xem xét chiến lược tạm dừng trong giai đoạn giảm kéo dài để bảo vệ vốn.

  3. Giá tăng từ các sự kiện tin tức quan trọng có thể dừng các vị trí sớm hoặc làm tăng đáng kể tổn thất.

Cơ hội gia tăng

Một số cách để tăng cường chiến lược:

  1. Đặt dừng lỗ động dựa trên biến động. Điều chỉnh dừng lỗ trong thời gian thực theo mức biến động giá để giảm thiểu khả năng thoát buộc.

  2. Tích hợp nhiều khung thời gian EMA. Thêm EMA hàng ngày và hàng tuần để đánh giá xu hướng tổng thể để tránh giao dịch ngược xu hướng.

  3. Sử dụng chỉ số RSI để xác định mức mua quá mức và bán quá mức để lọc ra một số tín hiệu tiếng ồn.

  4. Dự đoán biến động học máy. Sử dụng các mô hình LSTM để dự đoán biến động giá và rủi ro, điều chỉnh động kích thước vị trí và dừng lỗ.

Kết luận

Chiến lược chéo EMA / MA ngắn hạn này nắm bắt những thay đổi xu hướng ngắn hạn và cảm xúc của thị trường cho các giao dịch kịp thời bằng cách theo dõi EMA nhanh và chéo MA chậm. Mặc dù dễ dàng thực hiện, rủi ro bao gồm thổi phồng quá mức và rút tiền kéo dài.


/*backtest
start: 2023-01-09 00:00:00
end: 2024-01-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Backtest single EMA cross", overlay=true)

qty = input(100000, "Buy quantity")

testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testStartMin = input(0, "Backtest Start Minute")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, testStartMin)
testStopYear = input(2099, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? 
   #00FF00 : na
testPeriod() => true


ema1 = input(50, title="Select EMA 1")
ema2 = input(100, title="Select EMA 2")

expo = ema(close, ema1)
ma = ema(close, ema2)

avg_1 = avg(expo, ma)
s2 = cross(expo, ma) ? avg_1 : na
//plot(s2, style=plot.style_line, linewidth=3, color=color.red, transp=0)

p1 = plot(expo, color=#00FFFF, linewidth=2, transp=0)
p2 = plot(ma, color=color.orange, linewidth=2, transp=0)
fill(p1, p2, color=color.white, transp=80)


longCondition = crossover(expo, ma)

shortCondition = crossunder(expo, ma)

exitlongCondition = crossunder(expo, ma)

exitshortCondition = crossover(expo, ma) 


if testPeriod()
    strategy.entry("Long", strategy.long, when=longCondition)
    strategy.entry("Short", strategy.short, when=shortCondition)

plotshape(longCondition, title = "Buy Signal", text ="BUY", textcolor = #FFFFFF , style=shape.labelup, size = size.normal, location=location.belowbar, color = #1B8112, transp = 0)
plotshape(shortCondition, title = "Sell Signal", text ="SELL", textcolor = #FFFFFF, style=shape.labeldown, size = size.normal, location=location.abovebar, color = #FF5733, transp = 0)




Thêm nữa