
Chiến lược này dựa trên việc tạo ra tín hiệu giao dịch dựa trên các đường Brin và đường hai chiều, kết hợp với lọc xu hướng, với mục tiêu theo đuổi tỷ lệ thắng cao và tỷ lệ thua lỗ tốt.
Sử dụng đường ray trên, đường ray giữa và đường ray dưới của Brin để xác định tín hiệu đa không gian. Khi giá chạm vào đường ray trên thì nhìn lên, khi chạm vào đường ray dưới thì nhìn lên.
Sử dụng đường trung bình ngắn hạn dài 20 và đường trung bình dài 60 để đánh giá xu hướng. Khi đường trung bình ngắn hạn trên đường trung bình dài hạn, nó là giá thịnh soạn và khi đi xuống thì giảm giá.
Điều chỉnh vị trí dừng lỗ theo chiều rộng của băng thông Brin. Khi băng thông Brin rộng hơn 0,5%, vị trí dừng lỗ là đường ray dưới; Khi chiều rộng nhỏ hơn 0,5%, vị trí dừng lỗ giảm xuống một nửa đường ray dưới.
Điều kiện nhập cảnh: Giá phá vỡ đường ray xuống khi giá lên là tín hiệu giảm giá và giá phá vỡ đường ray lên khi giá xuống là tín hiệu giảm giá.
Điều kiện xuất phát: dừng khi chạm vào đường ray trên hoặc đường trung bình ngắn hạn của dây chuyền burin khi làm nhiều; dừng khi chạm vào đường ray dưới hoặc đường trung bình ngắn hạn của dây chuyền burin khi làm trống.
Điều kiện dừng lỗ: dừng lỗ khi giá giảm xuống khu vực chuyển động dưới đường dây Brin; dừng lỗ khi giá phá vỡ đường dây trên đường dây Brin.
Sử dụng đường hai chiều để đánh giá xu hướng, có thể lọc hiệu quả các xu hướng không rõ hoặc tổng hợp tiếng ồn thị trường.
Đường ray trung tâm của dây đai Brin là kháng cự hỗ trợ, đường ray trên và dưới là điểm dừng động, có thể kiểm soát rủi ro.
Chuyển đổi stop loss theo băng thông Brin, giảm khả năng stop loss được kích hoạt và đảm bảo vị trí stop loss là hợp lý.
Theo dõi xu hướng giao dịch, tỷ lệ thắng cao hơn.
Đường trung bình đôi tạo ra khả năng phá vỡ giả cao hơn, có thể bỏ lỡ điểm chuyển hướng. Các chu kỳ trung bình có thể được rút ngắn thích hợp.
Binance dễ bị mắc kẹt trong xu hướng dao động. Có thể tránh được bằng cách giảm tần suất giao dịch.
Vị trí dừng lỗ dễ bị phá vỡ khi gần với kháng cự hỗ trợ.
Cơ hội không thể nắm bắt hiệu quả sự hồi phục đường ngắn.
Tối ưu hóa tham số chu kỳ trung bình để tìm môi trường thị trường phù hợp với chiến lược.
Tối ưu hóa tham số nhân của dải Brin, cân bằng xác suất bị phá vỡ.
Thêm các chỉ số khác để xác thực đa yếu tố, cải thiện chất lượng tín hiệu.
Trong khi đó, các nhà đầu tư khác cũng đang tìm kiếm các giải pháp khác để giảm bớt sự mất cân bằng trong thị trường.
Tối ưu hóa quản lý tài chính, chẳng hạn như phần cố định, dừng cố định, kiểm soát tổn thất đơn lẻ.
Phản ứng với cú sốc giá, ví dụ như một lỗ hổng lớn.
Chiến lược này là toàn bộ khá ổn định, bằng cách đánh giá xu hướng xu hướng bằng hai đường cân bằng, Brin cung cấp hỗ trợ mức kháng cự và thiết lập động dừng lỗ. Nhưng cũng có một số hạn chế, chẳng hạn như sai lầm xu hướng, dừng lỗ quá gần và các vấn đề khác.
/*backtest
start: 2022-10-18 00:00:00
end: 2023-10-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title="yuthavithi BB Scalper 2 strategy", overlay=true)
len = input(20, minval=1, title="Length")
multiplier = input(4, minval=1, title="multiplier")
trendTimeFrame = input(60, minval=1, title="Trend Time Frame")
useTrendFilter = input(true, type=bool, title = "Use Trend Filter")
src = input(close, title="Source")
out = sma(src, len)
//plot(out, title="SMA", color=blue)
stdOut = stdev(close, len)
bbUpper = out + stdOut * multiplier
bbLower = out - stdOut * multiplier
bbUpper2 = out + stdOut * (multiplier / 2)
bbLower2 = out - stdOut * (multiplier / 2)
bbUpperX2 = out + stdOut * multiplier * 2
bbLowerX2 = out - stdOut * multiplier * 2
bbWidth = (bbUpper - bbLower) / out
closeLongTerm = request.security(syminfo.tickerid, tostring(trendTimeFrame), close)
smaLongTerm = request.security(syminfo.tickerid, tostring(trendTimeFrame), sma(close,20))
//plot(smaLongTerm, color=red)
trendUp = useTrendFilter ? (closeLongTerm > smaLongTerm) : true
trendDown = useTrendFilter? (closeLongTerm < smaLongTerm) : true
bearish = ((cross(close,bbUpper2) == 1) or (cross(close,out) == 1)) and (close[1] > close) and trendDown
bullish = ((cross(close,bbLower2) == 1) or (cross(close,out) == 1)) and (close[1] < close) and trendUp
closeBuy = (high[1] > bbUpper[1]) and (close < bbUpper) and (close < open) and trendUp
closeSell = (((low[1] < bbLower[1]) and (close > bbLower)) or ((low[2] < bbLower[2]) and (close[1] > bbLower[1]))) and (close > open) and trendDown
cutLossBuy = iff(bbWidth > 0.005, (low < bbLower) and (low[1] > bbLower[1]) and trendUp, (low < bbLowerX2) and (low[1] > bbLowerX2[1]) and trendUp)
cutLossSell = iff(bbWidth > 0.005, (high > bbUpper) and (high[1] < bbUpper[1]) and trendDown, (high > bbUpperX2) and (high[1] < bbUpperX2[1]) and trendDown)
if (bullish)
strategy.entry("Buy", strategy.long, comment="Buy")
if (bearish)
strategy.entry("Sell", strategy.short, comment="Sell")
strategy.close("Buy", closeBuy or cutLossBuy)
strategy.close("Sell", closeSell or cutLossSell)