Тенденционная стратегия на основе полос Боллинджера

Автор:Чао Чжан, Дата: 2024-02-22 17:21:42
Тэги:

img

Обзор

Эта стратегия - это стратегия, основанная на индикаторе Болинджерских полос. Она использует верхние и нижние полосы Болинджерских полос для определения направления тренда и реализации отслеживания тренда. Она длится, когда цена проходит через верхнюю полосу, и становится короткой, когда цена проходит через нижнюю полосу. Стоп-лосс устанавливается на средней полосе Болинджерских полос.

Логика стратегии

Эта стратегия использует индикатор полос Боллинджера для определения тренда цен. Полосы Боллинджера содержат три линии - верхнюю полосу, нижнюю полосу и среднюю полосу. Верхняя полоса представляет собой верхнюю границу цены, нижняя полоса представляет собой нижнюю границу цены, а средняя полоса представляет собой движущуюся среднюю линию цены. Когда цена проходит через верхнюю полосу из нижней полосы, это сигнализирует о начале восходящего тренда. Когда цена проходит через нижнюю полосу из верхней полосы, это сигнализирует о начале нисходящего тренда.

В частности, условия длинного входа в эту стратегию следуют: 1) цена закрытия текущей свечи выше верхней полосы; 2) цена закрытия предыдущей свечи ниже верхней полосы. Это сигнализирует о том, что цена прорвалась и начинается восходящий тренд, поэтому идти на длинный срок является целесообразным. Условия короткого входа похожи: цена закрытия текущей свечи ниже нижней полосы и цена закрытия предыдущей свечи выше нижней полосы, что указывает на то, что идти на короткий срок готово.

Механизм стоп-лосса этой стратегии устанавливает уровень стоп-лосса на средней полосе как для длинных, так и для коротких позиций.

Сильные стороны стратегии

Наибольшая сила этой стратегии заключается в ее способности четко идентифицировать ценовые тенденции, используя функции индикатора Болинджерских полос для отслеживания тенденций, избегая ошибочного руководства колебаниями рынка.

Кроме того, эта стратегия устанавливает правила входа как для длинной, так и для короткой сторон, позволяя двусторонней торговле максимально улавливать колебания цен. Принятие средней полосы в качестве уровня остановки потери может улучшить точность сокращения потерь. Своевременная остановка потери имеет решающее значение для прибыльности стратегии.

Стратегические риски

Основной риск этой стратегии заключается в конфигурации параметров Болинджеровских полос. Период скользящей средней и размер стандартного отклонения Болинджеровских полос напрямую повлияют на положение верхних и нижних полос. Неправильное настройка параметров может привести к увеличению уровня ложных прорывов.

Кроме того, использование среднего диапазона в качестве уровня остановки потери также сопряжено с риском. Когда рынок испытывает резкие колебания, цена может внезапно прорваться через средний диапазон, вызвав остановку потери. Затем нам нужно оценить, есть ли серьезное изменение тренда, и расширить диапазон остановки по мере необходимости.

Улучшение стратегии

Эта стратегия может быть улучшена в следующих аспектах:

  1. Оптимизируйте параметры полос Боллинджера, накапливайте эмпирические данные с различными периодами, чтобы найти лучшую комбинацию параметров.

  2. Добавить правила проверки объема, чтобы избежать ложного прорыва в условиях легких сценариев объема торговли.

  3. Усовершенствовать механизм стоп-лосса путем динамической корректировки уровня стоп-лосса на основе степени волатильности рынка.

  4. Включить суждение от большего количества индикаторов, таких как MACD, KDJ, чтобы помочь определить время входа, повышая точность операции.

Резюме

В заключение, это практический тренд, следующий за стратегией в целом. Он определяет направление тренда с использованием индикатора Болинджерских полос и запускает заказы, когда цена прорывается через верхние или нижние полосы. Двусторонняя торговля помогает максимально улавливать движения цен.


/*backtest
start: 2024-01-22 00:00:00
end: 2024-02-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © Valente_F
//@version=4
strategy(title="Strategy: Trend Following Bollinger Bands", shorttitle="Strategy: Trend Following Bollinger Bands", overlay = true, pyramiding = 0, default_qty_type = strategy.percent_of_equity)

//Inputs
//Bollinger Bands Parameters
length = input(defval=20, minval=1, title= "Length")
stddev = input(defval=2, minval=0.5, title= "StdDev")

// STRATEGY INPUTS
//Entry and Exit Parameters
checkbox1 = input(true, title="Enable Long Entrys")
checkbox2 = input(true, title="Enable Short Entrys")


//Bollinger Bands Calculation

[middle, upper, lower] = bb(close, length, stddev)

//Long Conditions

bulls1 = close > upper
bulls2 = close[1] < upper[1]
bulls = bulls1 and bulls2

//Short Conditions

bears1 = close < lower
bears2 = close[1] > lower[1]
bears = bears1 and bears2

// Plots of Bollinger Bands
plot(upper, title = "Upper Band", color = color.aqua)//, display = display.none)
plot(middle, title = "MA", color = color.red)//, display = display.none)
plot(lower, title = "Lower Band", color = color.aqua)//, display = display.none)

neutral_color = color.new(color.black, 100)
barcolors = bulls ? color.green : bears ? color.red : neutral_color

//Paint bars with the entry colors
barcolor(barcolors)

//Strategy


//STRATEGY LONG
long_entry = bulls and checkbox1

long_entry_level = high

strategy.entry("Long", true, stop = long_entry_level, when = long_entry)
strategy.cancel("Long", when = not long_entry)

strategy.exit("Stop Long", "Long", stop = middle)

//STRATEGY SHORT
short_entry = bears and checkbox2

short_entry_level = low

strategy.entry("Short", false, stop = short_entry_level, when = short_entry)
strategy.cancel("Short", when = not short_entry)

strategy.exit("Stop Short", "Short", stop = middle)


Больше