Индикатор Ишимоку

  • Облачный индикатор Ишимоку: использование
  • Реализация торговой стратегии Ишимоку на Python
  • Осциллятор Ишимоку со стратегией индекса стохастического импульса

Облачный индикатор Ишимоку: использование

В этом руководстве мы покажем вам, как использовать популярную торговую систему, следующую за трендом: облачный индикатор Ichimoku.

Ichimoku Kinko Hyo — это торговая система, следующая за трендом, выпущенная японским журналистом Гоити Хосодой в конце 1960-х годов, что означает «график равновесия с первого взгляда». Западные трейдеры начали понимать эту мощную технику только в 1990-х годах после того, как были правильно переведены на английский язык.

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

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

Перейдите в «Индикаторы», затем найдите «Облако Ишимоку», чтобы добавить этот индикатор на свой график при торговле на Perp v2:

Обзор

  • Базовая линия
  • Строка преобразования
  • Запаздывающая линия
  • Облако
  • Объединение компонентов Ишимоку: полная торговая система
  • Сводка

Базовая линия

Базовая линия (также известная как Kijun-sen) выступает в качестве индикатора будущего движения цены. Он рассчитывается следующим образом:

(Самый высокий максимум + самый низкий минимум)/ 2за последние 26 периодов.

Приведенное выше уравнение показывает, что базовая линия похожа на скользящую среднюю, но она учитывает среднюю точку самых высоких и самых низких цен за последние 26 периодов (вместо отслеживания средней цены).

Есть четыре ключевые вещи, которые нужно знать о базовой линии:

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

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

Приведенный ниже пример для ETH-USD показывает, как базовая линия указывает на тренд и как кроссы Kijun могут быть использованы в качестве сигналов входа. В начале апреля цена ETH закрылась ниже базовой линии, после чего установилась нисходящая тенденция. Как только базовая линия выровнялась, это указывало на то, что нисходящий тренд теряет импульс и разворот был подтвержден, при этом цена закрылась выше базовой линии.

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

Во время нисходящего тренда мы видим, что базовая линия оказывала сопротивление, в то время как в восходящих трендах она часто выступает в качестве поддержки. Существует также тенденция цены колебаться вокруг базовой линии, когда она сгладилась и предполагает, что нет краткосрочного тренда, который известен как «эффект резиновой ленты» (показанный ценовым действием в начале марта с графика ниже).

Строка преобразования

Линия конвертации (также известная как Tenkan-sen) выступает в качестве индикатора будущего движения цены. Он рассчитывается следующим образом:

(Самый высокий максимум + самый низкий минимум)/ 2за последние 9 периодов.

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

Как показано ниже, поскольку линия конверсии учитывает только последние 9 периодов, она быстрее базовой линии и быстрее выделяет краткосрочный тренд. Подобно базовой линии, линия конвертации также идентифицирует краткосрочный тренд, подает сигналы, когда цена закрывается выше или ниже нее (известная как кросс Tenkan).

Например, мы видим бычий Tenkan-кросс по цене около 2 800 долларов, а ETH-USD в конечном итоге достигает максимумов около 3 400 долларов. Но в апреле мы увидели медвежий переход Tenkan, где цена упала с $3 200 и вошла в сильный нисходящий тренд.

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

«Эффект резинки»

Подобно базовой линии, когда линия конверсии выравнивается, цена часто притягивается к этой зоне, либо находя поддержку или сопротивление вокруг этой зоны, либо колеблясь вокруг нее до тех пор, пока не будет установлен новый краткосрочный тренд.

На приведенной выше диаграмме приведен пример. Это известно как «эффект резиновой ленты», когда цена притягивается к линии преобразования (или базовой линии).

Эмпирическое правило (2.5*ATR)

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

На приведенном ниже графике показан пример, когда минимум с 13 июня был ниже, чем линия преобразования минус (2,5* ATR) = 1 281,63. Поскольку минимум был ниже $1,281.63, это дало нам признак того, что нисходящее движение может быть чрезмерно растянутым, и цена выходит из равновесия, предполагая, что она в конечном итоге вернется к линии конверсии.

К 18 июня цена закрытия означала, что цена двигалась обратно в следующем диапазоне: [линия конверсии — (2,5*ATR)], и в конечном итоге вернулась в линию конверсии. Использование этого эмпирического правила может помочь вам определить, когда ценовые авансы или снижение стали чрезмерно растянутыми и когда может произойти разворот.

Крест Tenkan-Kijun

Поскольку базовая и конверсионная линии похожи на скользящие средние, еще один сигнал, подаваемый индикатором облака Ишимоку, — это пересечение этих линий, что похоже на золотой крест / крест смерти для скользящих средних. Этот сигнал известен как крест Tenkan-Kijun.

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

Некоторые примеры приведены на диаграмме выше.

Запаздывающая линия

Отстающая линия (также известная как пролет Чикоу) используется для определения поддержки и сопротивления.

Запаздывающая линия вычисляется следующим образом:

Цена закрытия последнего периодапрогнозируемая на графике на 26 временных периодов.

Есть две основные вещи, о которых говорит нам отстающая линия:

  • Является ли текущая цена выше или ниже цены 26 периодов назад
  • Уровни поддержки и сопротивления

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

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

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

Облако

Облако (также известное как «Kumo») является последним компонентом, который мы рассмотрим, который состоит из двух линий, известных как Senkou span A и Senkou span B.

Senkou span A рассчитывается как:

(Тенкан-сен + Кидзюн-сен)/2построен на 26 периодов вперед.

Senkou span B рассчитывается как:

Самый высокий максимум + самый низкий минимум)/2, за последние 52 периода, построен на 26 периодов впереди.

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

Существует четыре основных применения Kumo:

  1. Выявление долгосрочных тенденций
  2. Определение поддержки и сопротивления
  3. Выявление прорывов с прорывом Kumo
  4. Выявление изменений тренда с помощью поворота Kumo

Выявление долгосрочных тенденций

В то время как базовая и конверсионная линии определяют краткосрочный тренд, облако помогает вам определить долгосрочный тренд в зависимости от его цвета и того, в каком направлении он движется (вверх или вниз).

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

Также важно учитывать текущую цену по отношению к облаку.

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

Облако как поддержка/сопротивление

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

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

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

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

Kumo Breakout

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

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

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

Kumo Twist

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

Ниже приведен пример, где цвет облака меняется с зеленого на красный, прогнозируя нисходящий тренд. Помните, что облако прогнозируется на 26 периодов в будущем, поэтому мы выделили Kumo Twist и в какой ценовой точке был дан сигнал Kumo Twist.

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

Объединение компонентов Ишимоку: полная торговая система

Теперь мы рассмотрели основные вещи, на которые следует обратить внимание при использовании облачного индикатора Ichimoku, важно подчеркнуть, что все сигналы, упомянутые выше, должны быть приняты в надлежащем контексте.

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

  • Когда цена находится выше облакалюбые бычьи сигналы будут сильнее, а медвежьи – слабее.
  • И наоборот, когда цена торгуется ниже облакамедвежьи сигналы сильнее, в то время как бычьи сигналы слабее.
  • Если цена находится в пределах облака, любые сигналы, подаваемые индикатором, следует считать нейтральными.

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

  • Чтобы полностью проанализировать облако Ишимоку, лучше всего начать с рассмотрения цены и ее отношения к облаку (текущая цена выше, ниже или внутри облака?)
  • Затем мы можем посмотреть на область, в которой облако находится для потенциальных зон поддержки или сопротивления, и его цвет / наклон для текущего тренда / импульса.
  • Проанализировав облако и его отношение к цене, мы можем изучить базовую и конверсионную линии, чтобы определить краткосрочный тренд и найти потенциальные области поддержки и сопротивления.
  • Наконец, мы должны посмотреть на отстающую линию, чтобы измерить импульс, подтвердить тенденции и определить другие области поддержки и сопротивления. Например, запаздывающая линия подтверждает тренд, когда он движется выше или ниже облака Ишимоку.

Пример торговой идеи: бычий

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

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

Некоторые стратегии выхода из лонга включают в себя:

  • В ожидании пересечения Tenkan, где цена закрывается ниже линии конвертации (как выделено на графике),
  • Фиксация прибыли на уровне сопротивления, выделенном пиком в запаздывающей линии,
  • Используя эмпирическое правило 2.5* ATR для фиксации прибыли, когда восходящий тренд чрезмерно расширился,
  • В ожидании поворота Кумо (облако меняет цвет с зеленого на красный).

Пример торговой идеи: медвежий

Для медвежьего примера первое, что мы ищем, это кросс Tenkan (когда цена закрывается ниже линии конверсии) во время восходящего тренда. Следующим сигналом, который нужно искать, является крест Киджун (где цена закрывается ниже базовой линии). Оба сигнала являются слабыми медвежьими сигналами, так как цена по-прежнему торгуется выше облака. На графике ниже также показаны другие медвежьи сигналы (пронумерованные от 1 до 5).

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

Другие стратегии выхода в этом сценарии включают:

  • Ожидание первого слабого бычьего сигнала, когда под облаком будет крест Тенкана (как показано выше),
  • В ожидании поворота Kumo (где цвет облака меняется с красного на зеленый),
  • Использование правила 2.5*ATR для выхода из короткой позиции, где нисходящий тренд предлагается чрезмерно растянуть.

Итоги

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

Таким образом, важными сигналами, которые следует знать, являются:

Бычьи сигналы (которые считаются сильными, когда цена выше облака, или слабыми, когда цена ниже облака)

  • Кросс Тенкан-Киджун: когда линия конверсии пересекается выше базовой линии, импульс смещается с медвежьего на бычий.
  • Тенкан кросс: цена закрывается выше линии конвертации.
  • Крест Киджун: цена закрывается выше базовой линии.
  • «Эффект резинки»: цена часто находит поддержку на линии конвертации или базовой линии.

Медвежьи сигналы (которые считаются сильными, когда цена находится ниже облака, или слабыми, когда цена выше облака)

  • Кросс Тенкан-Киджун: когда база пересекается выше линии конверсии, импульс сместился с бычьего на медвежий.
  • Тенкан кросс: цена закрывается ниже линии конвертации.
  • Крест Киджун: цена закрывается ниже базовой линии.
  • «Эффект резинки»: цена часто сталкивается с сопротивлением на линии преобразования или базовой линии.

Реализация торговой стратегии Ишимоку на Python

Ишимоку Кинко Хё, иногда известный как Ишимоку, является популярным и тщательным инструментом технического анализа для торговли на финансовых рынках, в частности, на валютных рынках (forex), фондовых рынках и криптовалютах. Он был разработан японским журналистом Гоити Хосодой в конце 1960-х годов.

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

Составляющие индикатора Ишимоку

  1. Tenkan-sen (конверсионная линия); Он рассчитывается как среднее арифметическое самого высокого максимума и самого низкого минимума за предыдущие девять периодов. Он символизирует краткосрочный импульс.

2. Киджун-сен (базовая линия); Как и Tenkan-sen, он рассчитывается за последние 26 периодов. Он дает среднесрочную перспективу.

3. Сенкоу Спан А (ведущий пролет А); Это среднее значение Tenkan-sen и Kijun-sen и построено на 26 периодов вперед. Он служит индикатором будущей поддержки или сопротивления.

4. Сенкоу Спан Б (Ведущий Пролет Б); Это среднее арифметическое самого высокого максимума и самого низкого минимума за последние 52 периода, а также отображается на 26 периодов вперед. Это край облака.

5. Chikou Span (Запаздывающий пролет); Это цена закрытия за предыдущие 26 периодов. Он используется для определения импульса и потенциальных уровней поддержки или сопротивления.

6. Kumo (Облако); Это территория между Сенкоу Спан А и Сенкоу Спан Б. Ширина этого облака представляет собой потенциальную силу поддержки или сопротивления.

Теперь давайте перейдем непосредственно к коду

Шаг первый: Импорт зависимостей

Обратите внимание, что мы используем «библиотеку ccxt», бесплатный поставщик криптоданных. Другими библиотеками являются «pandas» и «numpy» для статистических вычислений, datetime и matplotlib для визуализации данных.

Шаг второй: Определите обмен и временные рамки данных

«Библиотека ccxt» подключается к различным криптобиржам, включая Binance, которую мы используем для этого объяснения. Для сбора данных вам не нужен ключ API Binance. Обо всем этом позаботится ccxt. Имейте в виду, что данные могут быть не в режиме реального времени в зависимости от вашей торговой техники, особенно если вы торгуете в краткосрочной перспективе. Для получения данных в режиме реального времени вам может потребоваться подключиться непосредственно к API вашего брокера; Например, для Binance вы можете захотеть использовать пакет «python-binance».

Шаг третий: Определите начальную дату, преобразуйте дату начала в временную метку UNIX

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

Шаг четвертый: Получение исторических данных и преобразование данных в кадр данных Pandas

В этом примере мы возьмем в качестве примера пару ETH/USDT, не стесняйтесь экспериментировать с любой парой активов по вашему выбору. Полученные данные ohlcv структурированы в кадр данных pandas для упрощения вычислений и анализа. Столбцы DataFrame включают метку времени, открытие, максимум, минимум, закрытие и объем, представляющие данные OHLCV.

Шаг пятый: Рассчитаем показатели Ишимоку

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

Добавлю 14-дневную экспоненциальную скользящую среднюю (EMA); На самом деле вам это не нужно, я делаю это только для того, чтобы иметь более глубокую визуализацию тренда.

Шаг шестой: Теперь давайте создадим несколько торговых сигналов

Мы рассматриваем очень простую стратегию, основанную на цене закрытия и облаке (top). Вы можете экспериментировать с другими линиями Ишимоку по своему усмотрению, так как у вас уже есть столбцы, сгенерированные в вашем датафрейме pandas.

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

Шаг седьмой: Симуляция торговых позиций

Создаем позиции на покупку и продажу. «1» означает покупку, а «-1» — продажу. Это выражение «(df[‘signal’] != df[‘signal’].shift(1))» гарантирует, что стратегия не совершит несколько сделок, если позиция в том же направлении уже открыта.

Давайте теперь распечатаем последние 30 строк фрейма данных и посмотрим, как они складываются вместе.

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

Шаг восьмой: Теперь давайте визуализируем наши данные с помощью Matplotlib

а) Постройте стратегию Ишимоку и цену закрытия

б) Построение 14 — дневной EMA

c) Постройте позицию Makers, красный — позиция на продажу, а зеленый — на покупку

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

д) Нарисуйте легенду, надписи и заголовок сюжета

Вот получившаяся фигура сюжета;

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

Шаг девятый; Теперь давайте запустим некоторые метрики производительности, чтобы увидеть, как работает наша стратегия.

Помните, что прошлые результаты не гарантируют аналогичных результатов в будущем. Все, что написано в этой статье, не является инвестиционным советом. При этом масштаб производительности был ограничен только аспектом прибыли/убытка. Не стесняйтесь применять другие показатели, такие как максимальная просадка, альфа, бета, коэффициент сортирово, количество прибыльных сделок, количество убыточных сделок и т.д. Я напишу еще одну статью специально об измерении эффективности стратегии в Python.

а) Инициализация переменных производительности стратегии

В качестве примера рассмотрим начальный капитал в 100 единиц. Поскольку наш актив — ETH/USDT, это означает, что наш начальный капитал составляет 100 USDT. USDT — это валюта котировки, а ETH в данном случае — базовая валюта. Таким образом, все расчеты ведутся в валюте котировки для единообразия.

Теперь распечатаем эффективность стратегии:

Для этой иллюстрации получилось следующее:

Благодаря этой реализации стратегия обеспечила рентабельность инвестиций в размере 42%; это неплохо для примерно 3-месячных данных (интервал 4 часа), предоставляемых API «ccxt», но, как я уже сказал, поэкспериментируйте с другими комбинациями индикаторов Ишимоку и измерьте производительность.

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

А теперь идите и проповедуйте евангелие Ишимоку! Ниже приведен полный код на Git Hub.

Осциллятор Ишимоку со стратегией индекса стохастического импульса

Обзор

Осциллятор Ишимоку со стратегией Stochastic Momentum Index — это торговая стратегия, которая сочетает в себе индикатор Ишимоку и стохастический индекс моментума (SMI). Стратегия генерирует торговые сигналы путем расчета осциллятора Ишимоку (IO) и индекса стохастического моментума и подходит для различных рынков, таких как акции, сырьевые товары, индексы и различные таймфреймы.

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

Суть стратегии заключается в расчете осциллятора Ишимоку (IO) и индекса стохастического импульса (SMI). Индикатор IO рассчитывается с использованием различных периодных EMA (9, 26, 52) и 14-дневной SMA, отражающих условия перекупленности и перепроданности рынка. Индикатор SMI рассчитывает положение цены относительно самой высокой и самой низкой цены за определенный период, а также использует вложенные EMA для сглаживания, также отражая условия перекупленности и перепроданности рынка.

Торговые сигналы стратегии следующие:

  • Когда SMI пересекает сигнальную линию, а IO больше 0, открываем длинную позицию.
  • Когда SMI пересекает сигнальную линию, а IO меньше 0, открываем короткую позицию.

Эти торговые сигналы сочетают в себе индикаторы IO и SMI, которые могут лучше фиксировать точки разворота рынка и повышать точность торговли.

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

Осциллятор Ишимоку со стратегией Stochastic Momentum Index обладает следующими преимуществами:

  1. Он сочетает в себе два эффективных технических индикатора, Ишимоку и Stochastic Momentum Index, которые дополняют друг друга и обеспечивают более полный анализ рыночных тенденций и движений.
  2. Индикатор IO использует многопериодные EMA и SMA для сглаживания ценовых колебаний и уменьшения шумовых помех.
  3. Индикатор SMI — это оптимизация, основанная на стохастическом индикаторе, использующая вложенные EMA, чтобы сделать кривую более плавной и избежать проблемы разворотов стохастического индикатора.
  4. Торговые сигналы учитывают как условия IO, так и условия SMI, что позволяет эффективно отфильтровывать ложные сигналы и повышать винрейт.
  5. Он применим к нескольким рынкам и временным рамкам, с хорошей адаптируемостью и стабильностью.

Анализ риска

Несмотря на множество преимуществ осциллятора Ишимоку со стратегией Stochastic Momentum Index, все же существуют некоторые потенциальные риски:

  1. Стратегия опирается на исторические данные для расчетов и анализа, и ее адаптивность к будущим рынкам может снизиться.
  2. Индикаторы IO и SMI по сути являются запаздывающими индикаторами, и задержки сигналов могут возникать при быстрых изменениях рынка.
  3. Стратегия не учитывает фундаментальные факторы рынка, такие как основные позитивные или негативные новости, и может потерпеть неудачу в таких ситуациях.
  4. На рынках, ограниченных диапазоном, стратегия может привести к частой торговле, увеличивая транзакционные издержки.

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

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

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

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

  1. Для индикатора IO попробуйте больше различных комбинаций периодов, чтобы найти более репрезентативные параметры.
  2. Для индикатора SMI изучите различные методы сглаживания, например, рассмотрите возможность использования метода сглаживания Уайлдера, чтобы еще больше уменьшить запаздывание индикатора.
  3. Надлежащим образом включите другие индикаторы, такие как объем торгов, чтобы обогатить измерения торговых сигналов.
  4. Устанавливайте разные параметры и пороги для разных характеристик рынка, чтобы улучшить адаптивность стратегии.
  5. Комбинируйте эту стратегию с другими стратегиями, такими как трендовые стратегии, стратегии возврата к среднему значению и т. д., чтобы создать стратегическую систему и повысить общую доходность.

Благодаря вышеуказанным оптимизациям производительность и стабильность осциллятора Ишимоку со стратегией Stochastic Momentum Index могут быть еще больше улучшены.

Сводка

Осциллятор Ишимоку со стратегией Stochastic Momentum Index является эффективной стратегией технического анализа. Он умело сочетает в себе два классических индикатора, Ишимоку и Stochastic Momentum Index, которые дополняют друг друга и обеспечивают относительно всесторонний анализ условий перекупленности и перепроданности и точек разворота тренда на рынке, обеспечивая основу для торговых решений. Логика стратегии ясна и широко применима, имеет большое практическое значение. Конечно, любая стратегия имеет свои ограничения и риски. В практическом применении необходима дальнейшая оптимизация и совершенствование в сочетании с другими методами анализа и мерами по контролю рисков, чтобы лучше играть свою роль. В целом, осциллятор Ишимоку со стратегией Stochastic Momentum Index представляет собой новую идею и метод количественной торговли, которая заслуживает дальнейшего изучения и исследования.

Исходный код стратегии

/*backtest
start: 2023-03-09 00:00:00
end: 2024-03-14 00:00:00
period: 1d
basePeriod: 1h
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/
// © manoharbauskar

//@version=5
strategy(title='Ichimoku Oscillator with SMI', shorttitle='IOSMI', overlay = false)
io = ta.ema(hl2, 9) / 2 + ta.ema(hl2, 26) / 2 + ta.sma(close, 14) - ta.ema(hl2, 52) - ta.sma(open, 14)
plot(io, color=ta.change(io) <= 0 ? #872323 : #007F0E, style=plot.style_columns)
a = input(21, 'Percent K Length')
b = input(9, 'Percent D Length')
// Range Calculation
ll = ta.lowest(low, a)
hh = ta.highest(high, a)
diff = hh - ll
rdiff = close - (hh + ll) / 2
// Nested Moving Average for smoother curves
avgrel = ta.ema(ta.ema(rdiff, b), b)
avgdiff = ta.ema(ta.ema(diff, b), b)
// SMI calculations
SMI = avgdiff != 0 ? avgrel / (avgdiff / 2) * 100 : 0
SMIsignal = ta.ema(SMI, b)
//All PLOTS
plot(SMI, color = color.blue , title='Stochastic Momentum Index', linewidth = 2)
plot(SMIsignal, color=color.new(#FF5252, 0), title='SMI Signal Line', linewidth = 2)
plot(60, color=color.new(#00E676, 0), title='Over Bought')
plot(-60, color=color.new(#FF9800, 0), title='Over Sold')
plot(0, color=color.new(#E040FB, 0), title='Zero Line')

longCondition = SMI > SMIsignal and io > 0
if (longCondition)
strategy.entry("Buy", strategy.long)

shortCondition = SMI < SMIsignal and io < 0
if (shortCondition)
strategy.entry("Sell", strategy.short)

Параметры стратегии

Исходный адрес: осциллятор Ишимоку со стратегией индекса стохастического импульса (fmz.com)

Источник

Источник

Источник