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

Автор:Чао Чжан, Дата: 2023-09-18 22:13:18
Тэги:

Все содержание на английском языке

Обзор

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

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

Стратегия основывается в первую очередь на двух показателях:

  1. Индикатор RSI, оценивающий перекупленность/перепроданность

Он рассчитывает индекс рентабельности за определенный период и определяет, входит ли он в зоны перекупа или перепродажи в соответствии с заранее установленными параметрами, такими как порог перекупа в 40 и порог перепродажи в 45.

  1. Диапазоны колебаний цен

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

Исходя из вышеизложенного, правила торговли следующие:

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

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

Преимущества сочетания RSI и полос Боллинджера включают:

  1. RSI определяет уровни перекупленности/перепроданности, полосы Боллинджера определяют направление тренда цен, дополняя друг друга.

  2. Болинджерские полосы могут служить уровнем стоп-лосса для контроля риска.

  3. Простые параметры облегчают реализацию и обратное тестирование.

  4. Параметры RSI могут быть оптимизированы для определения наилучшего диапазона перекупа/перепродажи.

  5. Для адаптации к различным рыночным условиям можно использовать различные цены.

Риски и решения

Эта стратегия также сопряжена с некоторыми рисками:

  1. Чрезмерная ширина полос Боллинджера приводит к плохим ожиданиям стоп-лосса.

    • Настройка параметра ширины полос Боллинджера для оптимизации диапазона стоп-лосса.
  2. Неправильное установление параметра RSI, вызывающее неправильное суждение о уровне перекупленности/перепроданности.

    • Оптимизировать параметры RSI путем обратного тестирования для определения оптимального диапазона торговли.
  3. Неспособность точно определить точки переворота тренда, риск отсутствия сигналов.

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

    • Добавьте движущиеся или динамические стоп-лосс для оптимизации методов стоп-лосса.

Направления к улучшению

Некоторые способы оптимизации стратегии:

  1. Оптимизировать параметры RSI для определения идеального диапазона перекупленности/перепродажи.

  2. Оптимизировать параметр ширины полос Боллинджера для контроля диапазона остановки потери.

  3. Добавьте другие показатели, чтобы определить обратные тенденции и избежать пропущенных сигналов.

  4. Применение моделей машинного обучения для определения сроков торговли.

  5. Использовать различные наборы параметров на основе различных рыночных условий.

  6. Добавить динамические механизмы остановки потерь.

  7. Разработка программ для автоматической оптимизации параметров.

Заключение

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


/*backtest
start: 2023-08-18 00:00:00
end: 2023-09-17 00:00:00
period: 2h
basePeriod: 15m
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/
// © Mdemoio


//@version=4
strategy("Madri", shorttitle="Madri", overlay=true)


// Version 1.1


///////////// RSI
RSIlength = input(2,title="A") 
RSIoverSold = 45
RSIoverBought = 40
price = close
vrsi = rsi(price, RSIlength)


///////////// Bollinger Bands
BBlength = input(150, minval=1,title="B")
BBmult = 2// input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)


///////////// Colors
//switch1=input(true, title="Enable Bar Color?")
//switch2=input(true, title="Enable Background Color?")
//TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) and BBbasis < BBbasis[1] ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) and BBbasis > BBbasis[1] ? green : na
//barcolor(switch1?TrendColor:na)
//bgcolor(switch2?TrendColor:na,transp=50)


///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))

    if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
        strategy.entry("RSI_BB_L", strategy.long, stop=BBlower,  comment="Buy")
    else
        strategy.cancel(id="RSI_BB_L")
        
    if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
        strategy.entry("RSI_BB_S", strategy.short, stop=BBupper, comment="Sell")
    else
        strategy.cancel(id="RSI_BB_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Больше