Chiến lược này được đặt tên là Chiến lược đột phá dao động dựa trên đường trung bình động. Nó tính toán đường trung bình động của các chu kỳ giá khác nhau để xác định xem giá có vượt qua các đường trung bình động chính cho giao dịch dài và ngắn không. Khi đường trung bình động ngắn hạn vượt qua đường trung bình động dài hạn, đi dài. Khi đường trung bình động ngắn hạn giảm qua đường trung bình động dài hạn, đi ngắn.
Trung bình động là một công cụ phân tích thường được sử dụng trong phân tích kỹ thuật. Nó làm mịn dữ liệu giá bằng cách lọc ra biến động giá ngắn hạn
Chiến lược này sử dụng nguyên tắc này bằng cách thiết lập hai trung bình EMA với các thông số khác nhau, một ngắn hạn là đường nhanh và một dài hạn là đường chậm. Chiến lược thiết lập EMA với chiều dài 9 và 26 để tính toán đường chuyển đổi và đường cơ sở. Khi EMA ngắn hạn vượt qua đường EMA dài hạn, đi dài, cho thấy giá ngắn hạn cao hơn giá dài hạn, tín hiệu tăng giá. Khi EMA ngắn hạn vượt qua đường EMA dài hạn, đi ngắn, cho thấy giá ngắn hạn thấp hơn giá dài hạn, tín hiệu giảm giá.
Do đó, chiến lược này đánh giá các điểm đảo ngược giá có thể thông qua sự đột phá của EMA nhanh và chậm để nắm bắt các cơ hội xu hướng giá ngắn hạn.
Có xu hướng nhiều lỗ nhỏ từ giao dịch về và lại
Có thể nới lỏng phù hợp phạm vi dừng lỗ, chờ cho tín hiệu đảo ngược rõ ràng trước khi nhập vị trí
Đối với cổ phiếu thanh khoản thấp, khoảng cách giá hoặc giá không nhất quán có thể xảy ra Các thông số có thể được tối ưu hóa, điều chỉnh các thông số chu kỳ trung bình động, giao dịch với các thông số tối ưu hóa
Dễ dàng nhận được tín hiệu sai trong thị trường xoáy Có thể kết hợp với các chỉ số khác để xác nhận trước khi nhập vị trí
Khả năng hạn chế để xử lý các tình huống thị trường phức tạp chỉ với các chỉ số trung bình động đơn giản Có thể giới thiệu các chỉ số kỹ thuật khác để cải thiện việc ra quyết định tại các điểm chính
Chiến lược này cũng có thể được tối ưu hóa thêm trong các khía cạnh sau:
Thêm cơ chế định kích thước vị trí để kiểm soát rủi ro vị trí bằng cách thêm/giảm
Thêm cơ chế dừng lỗ để kiểm soát hiệu quả lỗ trên mỗi giao dịch
Bao gồm khối lượng giao dịch, chỉ số khối lượng để tránh sự phá vỡ giá sai
Thêm dự đoán mô hình, sử dụng máy học vv để dự đoán xác suất đảo ngược giá, cải thiện quyết định
Sử dụng học sâu để mô phỏng logic ra quyết định của nhà giao dịch chuyên nghiệp và chọn tín hiệu ở các điểm có khả năng đảo ngược cao
Đây là một chiến lược đảo ngược trung bình ngắn hạn dựa trên các chỉ số trung bình động. Các tham số có thể tùy chỉnh cung cấp sự linh hoạt tốt. Mặc dù sử dụng các chỉ số đơn giản, nó có thể được thích nghi tốt với môi trường thị trường thông qua điều chỉnh tham số. Chiến lược nhằm mục đích nắm bắt các cơ hội trọng tài từ sự đảo ngược giá ngắn hạn. Bằng cách giới thiệu các cơ chế như kích thước vị trí, dừng lỗ v.v, rủi ro có thể được quản lý hiệu quả để cải thiện sự ổn định. Các chỉ số kỹ thuật tiên tiến hơn và các phương pháp học máy cũng có thể được sử dụng để khám phá cải thiện hiệu suất.
/*backtest start: 2023-01-16 00:00:00 end: 2024-01-22 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Juiced Ichimoku Strat", overlay=true) USE_TRADESESSION = input(title='Use Trading Session?', type=bool, defval=true) trade_session = input(title='Trade Session:', defval='0800-1600', confirm=false) istradingsession = not USE_TRADESESSION ? false : not na(time('1', trade_session)) bgcolor(istradingsession?gray:na) varLo = input(title="Fast (Conversion) Line", defval=9, minval=1, maxval=99999) varHi = input(title="Slow (Base) Line", defval=26, minval=1, maxval=99999) emafreq = input(title="Ema on price frequency", defval=2, minval=1, maxval=99999) a = lowest(varLo) b = highest(varLo) c = (a + b ) / 2 d = lowest(varHi) e = highest(varHi) f = (d + e) / 2 //g = ((c + f) / 2)[varHi] //h = ((highest(varHi * 2) + lowest(varHi * 2)) / 2)[varHi] z = ema(close, emafreq) bgcolor(z > c and z > f ? green : z < c and z < f ? red : yellow, transp=70) plot(z, title="ema on Price", color=black) plot(c, title="Fast (Conversion) Line", color=green) plot(f, title="Slow (Base) Line", color=red) long = z > c and z > f and (USE_TRADESESSION ? istradingsession : true) short = z < c and z < f and (USE_TRADESESSION ? istradingsession : true) //exit = z < c and z > f or z > c and z < f closelong = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true) if (closelong) strategy.close("Long") closeshort = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true) if (closeshort) strategy.close("Short") strategy.entry("long", strategy.long, when=long) strategy.entry("short", strategy.short, when=short)