Chiến lược này sử dụng các đường trung bình động kép để tạo ra một kênh và nắm bắt hướng xu hướng. Các tín hiệu giao dịch được tạo ra khi giá phá vỡ kênh. Chỉ số RSI cũng được kết hợp để lọc các đột phá sai. Nó chỉ giao dịch trong phiên London với tối đa 5 giao dịch mỗi ngày và tối đa 2% lỗ hàng ngày.
Chiến lược này sử dụng hai đường trung bình động có chiều dài 5, một được tính từ giá cao nhất và giá thấp nhất, để tạo thành kênh giá.
Để tránh phá vỡ sai, chỉ số RSI được thêm vào để đo mức mua quá mức / bán quá mức. Chỉ mua dài nếu RSI trên 80, và chỉ mua ngắn nếu RSI dưới 20.
Ngoài ra, chiến lược chỉ giao dịch trong phiên London (3 giờ sáng - 11 giờ sáng), với tối đa 5 lệnh mỗi ngày và tối đa 2% mất vốn mỗi ngày.
Kênh MA kép có thể phát hiện hiệu quả hướng xu hướng giá.
Sử dụng bộ lọc mua quá mức / bán quá mức RSI làm giảm một số tín hiệu phá vỡ sai do biến động giá.
Giao dịch chỉ trong phiên chính và có lệnh tối đa mỗi ngày giới hạn tần suất giao dịch.
Sự biến động giá đáng kể có thể gây ra một số tín hiệu phá vỡ sai, dẫn đến tổn thất không cần thiết. Các thông số có thể được tối ưu hóa và thêm các bộ lọc để giảm rủi ro như vậy.
Sử dụng pips cố định cho SL / TP có nguy cơ dừng lại / mất lợi nhuận trong thị trường biến động.
Mở các vị trí chỉ trong các phiên cố định có nguy cơ bỏ lỡ các giao dịch tiềm năng trong các giờ khác.
Tối ưu hóa các thông số như chiều dài MA, số liệu RSI, các điểm SL / TP cố định vv để tìm sự kết hợp tốt nhất.
Thêm thêm các chỉ số hoặc điều kiện để xác minh tín hiệu, ví dụ: âm lượng cao hơn, chiều rộng BB giảm, v.v., để tránh sự đột phá sai.
Sử dụng stop loss / take profit dựa trên tỷ lệ phần trăm hoặc động thay vì pips cố định để xử lý tốt hơn các chuyển động thị trường một chiều.
Hướng tay kiểm tra tín hiệu, hoặc chỉ vào khi xác nhận thoát để tránh bị mắc kẹt.
Chiến lược này khá đơn giản và thực tế nói chung, sử dụng kênh MA kép để xác định xu hướng và RSI để lọc các đột phá sai. Quản lý rủi ro thông qua giờ giao dịch và giới hạn lỗ cũng xác định khả năng dung nạp rủi ro. Vẫn còn nhiều chỗ để cải thiện, ví dụ như điều chỉnh tham số, cơ chế SL / TP tốt hơn vv.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-16 23:59:59 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/ // © SoftKill21 //@version=4 strategy(title="Moving Average", shorttitle="MA", overlay=true) timeinrange(res, sess) => time(res, sess) != 0 len = input(5, minval=1, title="Length") src = input(high, title="Source") offset = input(title="Offset", type=input.integer, defval=0, minval=-500, maxval=500) out = sma(src, len) plot(out, color=color.white, title="MA", offset=offset) len2 = input(5, minval=1, title="Length") src2 = input(low, title="Source") offset2 = input(title="Offset", type=input.integer, defval=0, minval=-500, maxval=500) out2 = sma(src2, len2) plot(out2, color=color.white, title="MA", offset=offset2) length = input( 5 ) overSold = input( 10 ) overBought = input( 80 ) price = input(close, title="Source RSI") vrsi = rsi(price, length) longcond= close > out and close > out2 and vrsi > overBought shortcont = close < out and close < out2 and vrsi < overSold tp=input(150,title="tp") sl=input(80,title="sl") strategy.entry("long",1,when=longcond) //strategy.close("long",when= close < out2) strategy.exit("long_exit","long",profit=tp,loss=sl) strategy.entry("short",1,when=shortcont) //strategy.close("short",when=close >out) strategy.exit("short_exit","short",profit=tp,loss=sl) // maxOrder = input(6, title="max trades per day") // maxRisk = input(2,type=input.float, title="maxrisk per day") // strategy.risk.max_intraday_filled_orders(maxOrder) // strategy.risk.max_intraday_loss(maxRisk, strategy.percent_of_equity) // strategy.close_all(when =not timeinrange(timeframe.period, "0300-1100"))