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

Автор:Чао Чжан, Дата: 2024-02-04 15:09:35
Тэги:

img

Обзор

Это комбинация торговых стратегий с использованием полос Боллинджера и индекса относительной силы (RSI).

Наименование стратегии

Стратегия торговли комбинацией BB-RSI

Принцип стратегии

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

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

Когда RSI меньше низкой точки (неполноценность 30), это означает, что рынок перепродан. Когда RSI больше высокой точки (неполноценность 70), это означает, что рынок перекуплен.

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

Анализ преимуществ

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

Другим преимуществом является гибкое настройка параметров.

Анализ рисков

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

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

Руководство по оптимизации

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

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

Резюме

Комбинированная стратегия BB-RSI использует полосы Боллинджера для определения поддержки и сопротивления, а RSI для определения состояния перекупленности и перепроданности, генерируя сигналы в точках переворота. Она может эффективно идентифицировать поворотные моменты на рынке и является типичной обратной торговой стратегией.


/*backtest
start: 2023-01-28 00:00:00
end: 2024-02-03 00:00:00
period: 1d
basePeriod: 1h
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/
// © samuelarbos


//@version=4
strategy("Estrategia de Bandas de Bollinger y RSI", overlay=true)

// Definimos los parámetros de las bandas de Bollinger
source = input(close, title="Precio base")
length = input(20, minval=1, title="Longitud")
mult = input(2.0, minval=0.001, maxval=50, title="Desviación estándar")

// Calculamos las bandas de Bollinger
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev

// Definimos el RSI y sus parámetros
rsi_source = input(close, title="RSI Fuente")
rsi_length = input(14, minval=1, title="RSI Longitud")
rsi_overbought = input(70, minval=0, maxval=100, title="RSI Sobrecompra")
rsi_oversold = input(30, minval=0, maxval=100, title="RSI Sobrevendido")

// Calculamos el RSI
rsi = rsi(rsi_source, rsi_length)

// Definimos las señales de compra y venta
buy_signal = crossover(close, lower) and rsi < rsi_oversold
sell_signal = crossunder(close, upper) and rsi > rsi_overbought

// Compramos cuando se da la señal de compra
if (buy_signal)
    strategy.entry("Buy", strategy.long)
    
// Vendemos cuando se da la señal de venta
if (sell_signal)
    strategy.entry("Sell", strategy.short)

Больше