Стратегия комбинирования Super Trend и полос Боллинджера


Дата создания: 2024-03-29 15:18:22 Последнее изменение: 2024-03-29 15:18:22
Копировать: 14 Количество просмотров: 1094
1
Подписаться
1617
Подписчики

Стратегия комбинирования Super Trend и полос Боллинджера

Обзор

Эта стратегия сочетает в себе индикаторы супертенденции и индикаторы бурин-полосы, чтобы поймать тенденционные возможности на рынке. Супертенденционный индикатор используется для определения направления тенденции на текущем рынке, а бурин-полоса используется для измерения рыночной волатильности.

Стратегический принцип

  1. Вычисление истинной волновой amplitude (ATR) и супер трендового показателя, используемого для определения направления тренда на текущем рынке.
  2. Расчетная лента бурин для измерения колебаний на рынке.
  3. Сигнал “сделай больше” появляется, когда цена на закрытии пробивает линию супертенденции и находится в нижней части пояса бурин; сигнал “сделай меньше”, когда цена на закрытии падает линию супертенденции и находится в верхней части пояса бурин.
  4. При владении многоочередными позициями, если цена закрытия опускается ниже линии супертенденции, то это означает ликвидацию; при владении пустыми позициями, если цена закрытия опускается ниже линии супертенденции, то это означает ликвидацию.

Стратегические преимущества

  1. Информация о тенденциях и колебаниях позволяет лучше понимать рыночные возможности.
  2. Возможность своевременного входа в рынок, когда тенденция очевидна, помогает уловить выгоду от трендовых тенденций.
  3. В шокирующем рынке Брин-пояса в сочетании с супер-трендами могут эффективно отфильтровывать ложные прорывные сигналы и снижать риск убытков в шокирующем режиме.
  4. Код имеет четкую логику, меньше параметров, легче понять и реализовать.

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

  1. В условиях односторонней тенденции, из-за частого появления сигналов прорыва, может возникнуть чрезмерная частота торговли, увеличивая стоимость торговли.
  2. Уловка точек прорыва зависит от индикатора сверхтенденции, который является более чувствительным к параметрам, и может влиять на эффективность стратегии.
  3. Пропускная способность Brin изменяется с изменением рыночной волатильности и может быть расширена в условиях высокой волатильности.

Направление оптимизации стратегии

  1. Можно рассмотреть возможность введения более эффективных фильтров, таких как объемы торгов, настроения на рынке и т. д., для дальнейшего повышения надежности сигналов.
  2. Для параметров индикатора супертенденции можно проводить оптимизационные тесты, выбирая оптимальные параметры для повышения стабильности стратегии.
  3. С точки зрения исполнения сделок, могут быть введены более тщательные меры по управлению позициями и контролю риска, такие как установка мобильного стоп-лосса, динамическая корректировка позиций и т. д., чтобы снизить риск вскрытия для одноразовых сделок.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2024-03-21 00:00:00
end: 2024-03-28 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © sabhiv27

//@version=4
strategy("Supertrend & Bollinger Bands Strategy", shorttitle="ST_BB_Strategy", overlay=true)

// Input options
factor = input(3, title="Supertrend Factor")
length = input(10, title="ATR Length")
bollinger_length = input(20, title="Bollinger Bands Length")
bollinger_deviation = input(2, title="Bollinger Bands Deviation")

// Calculate True Range for Supertrend
truerange = rma(tr, length)

// Calculate Supertrend
var float up_trend = na
var float dn_trend = na
var float trend = na
up_signal = hl2 - (factor * truerange)
dn_signal = hl2 + (factor * truerange)
up_trend := close[1] > up_trend[1] ? max(up_signal, up_trend[1]) : up_signal
dn_trend := close[1] < dn_trend[1] ? min(dn_signal, dn_trend[1]) : dn_signal
trend := close > dn_trend ? 1 : close < up_trend ? -1 : nz(trend[1], 1)

// Calculate Bollinger Bands
basis = sma(close, bollinger_length)
dev = stdev(close, bollinger_length)
upper_band = basis + bollinger_deviation * dev
lower_band = basis - bollinger_deviation * dev

// Entry conditions
long_condition = crossover(close, up_trend) and close < lower_band
short_condition = crossunder(close, dn_trend) and close > upper_band

// Exit conditions
exit_long_condition = crossover(close, dn_trend)
exit_short_condition = crossunder(close, up_trend)

// Plot Supertrend
plot(trend == 1 ? up_trend : dn_trend, color=trend == 1 ? color.green : color.red, linewidth=2)

// Plot Bollinger Bands
plot(upper_band, color=color.blue)
plot(lower_band, color=color.blue)

// Generate buy and sell signals
strategy.entry("Long", strategy.long, when=long_condition)
strategy.entry("Short", strategy.short, when=short_condition)
strategy.close("Long", when=exit_long_condition)
strategy.close("Short", when=exit_short_condition)