
Chiến lược này dựa trên các chỉ số Bollinger Bands, kết hợp với các chỉ số động lực, để thực hiện chiến lược giao dịch kết hợp để thực hiện sự trở lại của Bollinger Bands và phá vỡ động lực. Khi giá vượt qua đường trung bình từ bên dưới Bollinger Bands, hãy làm cho nó trống khi giá vượt qua đường trung bình từ phía trên Bollinger Bands, và theo dõi các lệnh dừng lỗ, sau khi đạt được tỷ lệ thua lỗ mục tiêu.
Chiến lược này sử dụng đường trung tâm của băng thông Brin là đường trung bình, băng thông thông qua tham số mult*Điều chỉnh động lực stdev. Khi giá phá vỡ đường trung bình từ bên dưới, cho thấy giá có hành động lên, khi đó làm nhiều; Khi giá phá vỡ đường trung bình từ phía trên, cho thấy giá có hành động xuống, khi đó làm trống. Sau khi làm trống nhiều, thiết lập tham số dừng lỗ để theo dõi lợi nhuận và kiểm soát rủi ro.
Cụ thể, tính toán của Brin được thực hiện thông qua hai tham số length và mult, length length quyết định chu kỳ của đường trung tâm, mult quyết định kích thước của băng thông. EnterLong và enterShort xác định thời gian đột phá, exitLong và exitShort tính toán giá dừng lỗ dựa trên giá vào và tỷ lệ dừng lỗ mục tiêu.
Chiến lược này kết hợp sự hồi phục đường trung bình và các chỉ số động lực, có thể nắm bắt được tình hình lớn hơn trong giai đoạn bắt đầu xu hướng. So với chỉ đơn giản theo dõi đường trung bình, tăng phán đoán động lực dựa trên băng thông Brin, có thể lọc một số phá vỡ giả.
Có thể được tối ưu hóa bằng cách điều chỉnh chu kỳ đường trung tâm của Brin, tham số băng thông và phạm vi dừng để chiến lược phù hợp hơn với các tình huống thị trường khác nhau.
Chiến lược này tích hợp các ưu điểm của chỉ số hồi phục và động lực của Brin, có thể bắt một phần của thị trường khi xu hướng bắt đầu, có thể thích ứng với thị trường ở các giai đoạn khác nhau thông qua điều chỉnh tham số, là một hệ thống đột phá phổ biến hơn. Cài đặt dừng lỗ trực tiếp từ tính toán giá có thể giảm sự can thiệp của con người. Chiến lược này cũng có một số không gian cải tiến, chẳng hạn như thêm các chỉ số phán quyết hỗ trợ, v.v., sẽ được hoàn thiện hơn trong nghiên cứu và tối ưu hóa tiếp theo.
/*backtest
start: 2023-11-13 00:00:00
end: 2023-11-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("BURATINO", overlay=true)
// Входные параметры
length = input(20, minval=1, title="Length")
mult = input(2.0, minval=0.1, maxval=5, title="Multiplier")
target_percent = input(0.5, minval=0.1, title="Target Percent")
stop_loss_percent = input(95, minval=0.1, title="Stop Loss Percent")
// Расчет полос Боллинджера
basis = sma(close, length)
dev = mult * stdev(close, length)
upper = basis + dev
lower = basis - dev
// Переворот снизу вверх через среднюю линию Боллинджера для открытия лонга
enterLong = cross(close, basis) and close[1] < basis[1]
// Переворот сверху вниз через среднюю линию Боллинджера для открытия шорта
enterShort = cross(basis, close) and close[1] > basis[1]
// Закрытие лонга после роста цены на указанный процент или падения на указанный процент
exitLong = close >= strategy.position_avg_price * (1 + (target_percent / 100)) or close <= strategy.position_avg_price * (1 - (stop_loss_percent / 100))
// Закрытие шорта после падения цены на указанный процент или роста на указанный процент
exitShort = close <= strategy.position_avg_price * (1 - (target_percent / 100)) or close >= strategy.position_avg_price * (1 + (stop_loss_percent / 100))
// Управление позициями и ограничениями на открытие противоположных позиций
strategy.entry("Long", strategy.long, when = enterLong and strategy.position_size == 0)
strategy.entry("Short", strategy.short, when = enterShort and strategy.position_size == 0)
strategy.close("Long", when = exitLong)
strategy.close("Short", when = exitShort)
// Визуализация полос Боллинджера
plot(basis, color=color.blue, title="Basis")
plot(upper, color=color.red, title="Upper")
plot(lower, color=color.green, title="Lower")