Комбинированная торговая стратегия на основе облака Ишимоку и полос Боллинджера


Дата создания: 2023-12-27 16:21:28 Последнее изменение: 2023-12-27 16:21:28
Копировать: 1 Количество просмотров: 1416
1
Подписаться
1621
Подписчики

Комбинированная торговая стратегия на основе облака Ишимоку и полос Боллинджера

Обзор

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

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

  1. Облачный график состоит из линии преобразования, линии отсчета, линии задержки, линии опережения. Линия преобразования представляет собой 9-дневную среднюю линию, а линия отсчета представляет собой 26-дневную среднюю линию. Когда линия преобразования находится над линией отсчета, она является многоголовым сигналом, а наоборот - пустым сигналом.

  2. Задержка - это задержка движения цены. Когда задержка находится вверху, она указывает на многостороннюю тенденцию, а внизу - на пустую.

  3. Облачные полосы состоят из двух предшествующих линий, которые представляют собой средние значения 52-дневной средней линии и 26-дневной средней линии соответственно. Цены рассматриваются как плюсовые над облачными полосами, а внизу - как пустые.

  4. Полоса Брин состоит из n среднедневных линий и стандартного отклонения, и является полосой колебаний цен на акции. Посмотрите высоко, когда цена прорывает верхнюю полосу, и смотрите низко, когда она прорывает нижнюю полосу.

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

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

  1. Облачная диаграмма определяет тенденцию четко, линии преобразования и линии задержки могут определять краткосрочную тенденцию, а облачная полоса определяет долгосрочную тенденцию.

  2. Брин-схема, которая определяет, не пересекается ли цена, может эффективно отфильтровывать часть ненужных сделок.

  3. Комбинированные показатели позволяют более четко и надежно передавать торговые сигналы и избегать рисков.

Риск и оптимизация

  1. Неправильная настройка параметров по Бринговой полосе может привести к неточности торгового сигнала. Параметры должны быть настроены осторожно в соответствии с различными стандартами.

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

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

  4. Можно тестировать больше показателей в сочетании с облачным графиком, чтобы сформировать более надежную торговую стратегию.

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

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

Исходный код стратегии
/*backtest
start: 2023-12-19 00:00:00
end: 2023-12-26 00:00:00
period: 10m
basePeriod: 1m
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/
// © Coinrule

//@version=5
strategy("Ichimoku Cloud and Bollinger Bands",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = true
notInTrade = strategy.position_size <= 0


//Ichimoku Cloud
//Inputs
ts_bars = input.int(9, minval=1, title="Tenkan-Sen Bars")
ks_bars = input.int(26, minval=1, title="Kijun-Sen Bars")
ssb_bars = input.int(52, minval=1, title="Senkou-Span B Bars")
cs_offset = input.int(26, minval=1, title="Chikou-Span Offset")
ss_offset = input.int(26, minval=1, title="Senkou-Span Offset")
long_entry = input(true, title="Long Entry")
short_entry = input(true, title="Short Entry")

middle(len) => math.avg(ta.lowest(len), ta.highest(len))

// Components of Ichimoku Cloud
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_bars)

// Plot Ichimoku Cloud
plot(tenkan, color=#0496ff, title="Tenkan-Sen")
plot(kijun, color=#991515, title="Kijun-Sen")
plot(close, offset=-cs_offset+1, color=#459915, title="Chikou-Span")
sa=plot(senkouA, offset=ss_offset-1, color=color.green, title="Senkou-Span A")
sb=plot(senkouB, offset=ss_offset-1, color=color.red, title="Senkou-Span B")
fill(sa, sb, color = senkouA > senkouB ? color.green : color.red, title="Cloud color")

ss_high = math.max(senkouA[ss_offset-1], senkouB[ss_offset-1])
ss_low = math.min(senkouA[ss_offset-1], senkouB[ss_offset-1])

// Entry/Exit Conditions
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = ta.mom(close, cs_offset-1) > 0
cs_cross_bear = ta.mom(close, cs_offset-1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low


//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))

bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(lower, close)
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossover(close, lower)

strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod)
strategy.close('Long', when=bearish and not short_entry)

strategy.entry('Short', strategy.short, when=bearish and short_entry and timePeriod)
strategy.close('Short', when=bullish and not long_entry)


//Works well on BTC 30m/1h (11.29%), ETH 2h (29.05%), MATIC 2h/30m (37.12%), AVAX 1h/2h (49.2%), SOL 45m (45.43%)