Стратегия дневной торговли на основе Ichimoku Kinko Hyo


Дата создания: 2023-10-16 16:10:55 Последнее изменение: 2023-10-16 16:10:55
Копировать: 0 Количество просмотров: 728
1
Подписаться
1617
Подписчики

Стратегия дневной торговли на основе Ichimoku Kinko Hyo

Обзор

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

Принципы

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

Когда цена закрытия снизу прорывает базовую линию и превышает линию 2, создается сигнал покупки. Когда цена закрытия снизу падает на базовую линию и ниже линии 1, создается сигнал продажи. Параллельная линия SAR используется для отслеживания стоп-лосса, когда цена выходит ниже SAR.

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

Преимущества

  1. Использование линий равновесия для оценки будущих тенденций повышает точность оценки

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

  1. SAR - отслеживание ущерба, двойная защита

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

  1. Простые параметры и легкость внедрения

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

  1. Применимо к внутридневным коротколинейным сделкам

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

Риск

  1. Риск отступления

Следование тренду приводит к более высоким отступлениям. Необходимо разумно установить точку остановки и контролировать одноразовые потери.

  1. Риск потрясений

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

  1. Оптимизация риска

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

  1. Различия в коэффициентах эффективности

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

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

  1. В сочетании с другими показателями фильтрует сигналы

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

  1. Динамическая коррекция стоп-стоп

Параметры SAR могут быть динамически скорректированы в соответствии с волатильностью рынка, что позволяет более гибко останавливать убытки.

  1. Оптимизация параметров

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

  1. Позиции, скорректированные в зависимости от рыночных условий

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

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

Эта стратегия использует сигналы купли-продажи на равновесной линии в сочетании с параллельной SAR для осуществления слежения за убытками. Это более простая и практичная стратегия торговли на короткой линии.

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

//@version=3
//
//  Based on the trading strategy described at
//    http://stockcharts.com/school/doku.php?id=chart_school:trading_strategies:ichimoku_cloud
//
//  See Also:
//    - Backtesting and forwardtesting (of TradingView Strategies) <https://www.tradingview.com/wiki/Strategies#Backtesting_and_forwardtesting>
//    - 9 Mistakes Quants Make that Cause Backtests to Lie <https://blog.quantopian.com/9-mistakes-quants-make-that-cause-backtests-to-lie-by-tucker-balch-ph-d/>
//    - When Backtests Meet Reality <http://financial-hacker.com/Backtest.pdf>
//    - Why MT4 backtesting does not work <http://www.stevehopwoodforex.com/phpBB3/viewtopic.php?f=28&t=4020>
//
// 
// -----------------------------------------------------------------------------
// Copyright 2018 sherwind
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// The GNU General Public License can be found here
// <http://www.gnu.org/licenses/>.
//
// -----------------------------------------------------------------------------
//

strategy(title="Ichimoku Cloud Strategy", shorttitle="Ichimoku Strategy", overlay=true, pyramiding=3)

conversionPeriods   = input(9,  minval=1, title="Conversion Line Periods"),
basePeriods         = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement        = input(26, minval=1, title="Displacement")

usePSARTrailStop    = input(true, title="Use Parabolic SAR for Trailing Stop")
psarStart           = input(0.02, title="Parabolic SAR Start")
psarIncrement       = input(0.02, title="Parabolic SAR Increment")
psarMaximum         = input(0.2,  title="Parabolic SAR Maximum")


donchian(len) => avg(lowest(len), highest(len))

conversionLine = donchian(conversionPeriods)
baseLine  = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
leadLineDisp1 = leadLine1[displacement]
leadLineDisp2 = leadLine2[displacement]

psar = sar(psarStart, psarIncrement, psarMaximum)

// BUY Signal:
// close > leading span b and
// leading span a > leading span b and 
// close crosses over base line and
// close > parabolic sar
buySignal = close > leadLineDisp2 and
  leadLineDisp1 > leadLineDisp2 and
  crossover(close, baseLine) and
  (usePSARTrailStop ? close > psar : not usePSARTrailStop)

// Sell Signal:
// close < leading span a and 
// leading span a < leading span b and 
// close crosses under base line and
// close < psar
sellSignal = close < leadLineDisp1 and
  leadLineDisp1 < leadLineDisp2 and
  crossunder(close, baseLine) and
  (usePSARTrailStop ? close < psar : not usePSARTrailStop)

hasLong  = strategy.position_size > 0
hasShort = strategy.position_size < 0


strategy.entry("ichimoku-long", strategy.long, when = buySignal)
strategy.entry("ichimoku-short", strategy.short, when = sellSignal)

strategy.exit("trailstop-long", "ichimoku-long", stop = psar, when = hasLong and usePSARTrailStop)
strategy.exit("trailstop-short", "ichimoku-short", stop = psar, when = hasShort and usePSARTrailStop)