Торговые стратегии Sea and Sky и Ichimoku Kinko Hyo


Дата создания: 2023-09-18 15:13:35 Последнее изменение: 2023-09-18 15:13:35
Копировать: 0 Количество просмотров: 1251
1
Подписаться
1617
Подписчики

Обзор

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

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

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

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

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

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

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

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

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

  • Тестирование различных параметров гладкости
  • Периодические параметры оптимизации первичного равновесия
  • Настройка стратегии возобновления после ухода
  • Параметры для тестирования выносливости у разных сортов

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

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

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

//@version=3

strategy("Heiken Ashi + Ichimoku Kinko Hyo Strategy", shorttitle="HaI", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1000, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)

hahigh = security(heikinashi(syminfo.tickerid), timeframe.period, high)
halow = security(heikinashi(syminfo.tickerid), timeframe.period, low)

TenkanSenPeriods = input(9, minval=1, title="Tenkan Sen Periods")
KijunSenPeriods = input(24, minval=1, title="Kijun Sen Periods")
SenkouSpanBPeriods = input(51, minval=1, title="Senkou Span B Periods")
displacement = input(24, minval=1, title="Displacement")
donchian(len) => avg(lowest(len), highest(len))
TenkanSen = donchian(TenkanSenPeriods)
KijunSen = donchian(KijunSenPeriods)
SenkouSpanA = avg(TenkanSen, KijunSen)
SenkouSpanB = donchian(SenkouSpanBPeriods)
SenkouSpanH = max(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1])
SenkouSpanL = min(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1])
ChikouSpan = close[displacement-1]

plot(TenkanSen, color=blue, title="Tenkan Sen", linewidth = 2)
plot(KijunSen, color=maroon, title="Kijun Sen", linewidth = 3)
plot(close, offset = -displacement, color=orange, title="Chikou Span", linewidth = 2)
sa=plot (SenkouSpanA, offset = displacement, color=green,  title="Senkou Span A", linewidth = 2)
sb=plot (SenkouSpanB, offset = displacement, color=red,  title="Senkou Span B", linewidth = 3)
fill(sa, sb, color = SenkouSpanA > SenkouSpanB ? green : red)

longCondition = hahigh > max(hahigh[1],hahigh[2]) and close>ChikouSpan and close>SenkouSpanH and (TenkanSen>=KijunSen or close>KijunSen)
if (longCondition)
    strategy.entry("Long",strategy.long)

shortCondition = halow < min(halow[1],halow[2]) and close<ChikouSpan and close<SenkouSpanL and (TenkanSen<=KijunSen or close<KijunSen)
if (shortCondition)
    strategy.entry("Short",strategy.short)

closelong = halow < min(halow[1],halow[2]) and (TenkanSen<KijunSen or close<TenkanSen or close<KijunSen or close<SenkouSpanH or close<ChikouSpan)
if (closelong)
    strategy.close("Long")

closeshort = hahigh > max(hahigh[1],hahigh[2]) and (TenkanSen>KijunSen or close>TenkanSen or close>KijunSen or close>SenkouSpanL or close>ChikouSpan)
if (closeshort)
    strategy.close("Short")