Торговая стратегия Bollinger Band Downward Crossover RSI Pullback


Дата создания: 2023-12-26 12:08:44 Последнее изменение: 2023-12-26 12:08:44
Копировать: 1 Количество просмотров: 588
1
Подписаться
1621
Подписчики

Торговая стратегия Bollinger Band Downward Crossover RSI Pullback

Обзор

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

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

Эта стратегия основана на следующих принципах:

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

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

Эта стратегия имеет следующие преимущества:

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

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

В этой стратегии есть следующие риски:

  1. Продолжение роста после прорыва на рельсы привело к дальнейшему расширению убытков
  2. RSI не отступил вовремя, убытки расширились
  3. Односторонние позиции, которые не позволяют торговать на рынке

Риски можно снизить следующими способами:

  1. Соответствующая корректировка стоп-пойнтов, своевременная остановка убытков
  2. Комбинация других индикаторов для определения RSI обратный сигнал
  3. В сочетании с показателями равной линии, чтобы определить, входит ли в скорректировку

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

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

  1. Оптимизация параметров Брин-полосы для большего количества торговых сортов
  2. Оптимизация параметров RSI для повышения эффективности показателя
  3. Добавить другие пакеты показателей, чтобы определить переломный момент
  4. Добавление многоголосной логики транзакций
  5. Динамическая коррекция стоп-пойнтов в сочетании с стратегией стоп-поста

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

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

Исходный код стратегии
/*backtest
start: 2023-11-01 00:00:00
end: 2023-11-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule


strategy("Bollinger Band Below Price with RSI",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=70,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0

//Bollinger Bands Indicator
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))

// RSI inputs and calculations
lengthRSI = 14
RSI = ta.rsi(close, lengthRSI)



// Configure trail stop level with input options
longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01
shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01

// Determine trail stop loss prices
//longStopPrice = 0.0
shortStopPrice = 0.0

//longStopPrice := if strategy.position_size > 0
    //stopValue = close * (1 - longTrailPerc)
    //math.max(stopValue, longStopPrice[1])
//else
    //0

shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + shortTrailPerc)
    math.min(stopValue, shortStopPrice[1])
else
    999999


//Entry and Exit
strategy.entry(id="short", direction=strategy.short, when=ta.crossover(close, upper) and RSI < 70 and timePeriod and notInTrade)

if (ta.crossover(upper, close) and RSI > 70 and timePeriod)
    strategy.exit(id='close', limit = shortStopPrice)