Стратегия быстрого прорыва

Автор:Чао Чжан, Дата: 2023-10-09 15:15:22
Тэги:

Обзор

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

Логика стратегии

Стратегия использует индекс Choppiness для выявления тенденций. Низкие значения Choppiness указывают на четкую тенденцию, а высокие значения указывают на консолидацию. Стратегия торгуется только тогда, когда Choppiness ниже 44.

Для входных сигналов он рассчитывает ключевые уровни поддержки/сопротивления внутридневного периода, включая H4, H5 и т. д. Он длинный, когда цена закрывается выше H4 и короткий, когда цена закрывается ниже L4.

В частности, он рассчитывает следующие внутридневные уровни:

  • Пиво = (высоко + низко + близко) / 3
  • Диапазон = высокий - низкий
  • H1-H6 = Ключ + диапазон * соотношение
  • L1-L6 = Ключевая точка - диапазон * соотношение

После вычисления этих уровней, он использует H4 и L4 в качестве ключевых уровней прорыва.

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

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

Преимущества этой стратегии включают:

  1. Использование Choppiness для выявления ясных тенденций позволяет избежать проблем в консолидации.

  2. Расчетные уровни поддержки/сопротивления обычно имеют смысл.

  3. Торговые перерывы H4 и L4, близкие к цене закрытия, отражают важные внутридневные перерывы.

  4. Сигналы прорыва имеют очень высокий показатель выигрыша.

  5. Простая и понятная логика, легкая для понимания и реализации для новичков.

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

Риски этой стратегии включают:

  1. Опираясь на Choppiness для определения тенденций, можно потерпеть неудачу и неправильно понять тенденции.

  2. Расчетные уровни могут не сдержаться, и цена может прорваться, вызвав остановки.

  3. Сигналы прорыва могут быть ложными прорывами с быстрыми отступлениями.

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

  5. Нет стоп-лосса означает, что в экстремальных движениях возможны огромные одиночные потери.

Решения:

  1. Добавление других показателей для перекрестного подтверждения и повышение точности.

  2. Внедрить перемещение стоп-лосса для контроля одиночных потерь.

  3. Включить длительный тренд фильтр, чтобы избежать контра-тенд торгов.

  4. Добавьте сигнал для повторного входа, чтобы избежать ложных побегов.

Руководство по оптимизации

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

  1. Оптимизация параметров Choppiness для поиска лучших значений.

  2. Испытание различных уровней выхода, как H3 и L3 для повышения эффективности.

  3. Добавление движущегося стоп-лосса для защиты прибыли и контроля рисков.

  4. Добавляю сигнал повторного входа, чтобы избежать потерь от ложных прорывов.

  5. Включение длительного фильтра тренда для избежания контратендных сделок.

  6. Оптимизация времени торговли, например, только торговать в США или Европе.

  7. Добавление правил размещения позиций, таких как фиксированное количество или фиксированный процент.

  8. Анализирую данные обратного теста для настройки параметров.

Заключение

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


/*backtest
start: 2023-09-08 00:00:00
end: 2023-10-08 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Created by AS
strategy(title="ASH1Strategy", shorttitle="AS_H1_Strategy", overlay=true) 
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,3)

pivot = (high + low + close ) / 3.0 
range = high - low
h5 = (high/low) * close 
h4 = close + (high - low) * 1.1 / 2.0
h3 = close + (high - low) * 1.1 / 4.0
h2 = close + (high - low) * 1.1 / 6.0
h1 = close + (high - low) * 1.1 / 12.0
l1 = close - (high - low) * 1.1 / 12.0
l2 = close - (high - low) * 1.1 / 6.0
l3 = close - (high - low) * 1.1 / 4.0
l4 = close - (high - low) * 1.1 / 2.0
h6 = h5 + 1.168 * (h5 - h4) 
l5 = close - (h5 - close)
l6 = close - (h6 - close)

// Daily line breaks
//sopen = request.security(syminfo.tickerid, "D", open [1])
//shigh = request.security(syminfo.tickerid, "D", high [1])
//slow = request.security(syminfo.tickerid, "D", low [1])
//sclose = request.security(syminfo.tickerid, "D", close [1])
//
// Color
//dcolor=sopen != sopen[1] ? na : black
//dcolor1=sopen != sopen[1] ? na : red
//dcolor2=sopen != sopen[1] ? na : green

//Daily Pivots 
dtime_pivot = request.security(syminfo.tickerid, 'D', pivot[1]) 
dtime_h6 = request.security(syminfo.tickerid, 'D', h6[1]) 
dtime_h5 = request.security(syminfo.tickerid, 'D', h5[1]) 
dtime_h4 = request.security(syminfo.tickerid, 'D', h4[1]) 
dtime_h3 = request.security(syminfo.tickerid, 'D', h3[1]) 
dtime_h2 = request.security(syminfo.tickerid, 'D', h2[1]) 
dtime_h1 = request.security(syminfo.tickerid, 'D', h1[1]) 
dtime_l1 = request.security(syminfo.tickerid, 'D', l1[1]) 
dtime_l2 = request.security(syminfo.tickerid, 'D', l2[1]) 
dtime_l3 = request.security(syminfo.tickerid, 'D', l3[1]) 
dtime_l4 = request.security(syminfo.tickerid, 'D', l4[1]) 
dtime_l5 = request.security(syminfo.tickerid, 'D', l5[1]) 
dtime_l6 = request.security(syminfo.tickerid, 'D', l6[1]) 

//offs_daily = 0
//plot(sd and dtime_pivot ? dtime_pivot : na, title="Daily Pivot",color=dcolor, linewidth=2)
//plot(sd and dtime_h6 ? dtime_h6 : na, title="Daily H6", color=dcolor2, linewidth=2)
//plot(sd and dtime_h5 ? dtime_h5 : na, title="Daily H5",color=dcolor2, linewidth=2)
//plot(sd and dtime_h4 ? dtime_h4 : na, title="Daily H4",color=dcolor2, linewidth=2)
//plot(sd and dtime_h3 ? dtime_h3 : na, title="Daily H3",color=dcolor1, linewidth=3)
//plot(sd and dtime_h2 ? dtime_h2 : na, title="Daily H2",color=dcolor2, linewidth=2)
//plot(sd and dtime_h1 ? dtime_h1 : na, title="Daily H1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l1 ? dtime_l1 : na, title="Daily L1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l2 ? dtime_l2 : na, title="Daily L2",color=dcolor2, linewidth=2)
//plot(sd and dtime_l3 ? dtime_l3 : na, title="Daily L3",color=dcolor1, linewidth=3)
//plot(sd and dtime_l4 ? dtime_l4 : na, title="Daily L4",color=dcolor2, linewidth=2)
//plot(sd and dtime_l5 ? dtime_l5 : na, title="Daily L5",color=dcolor2, linewidth=2)
//plot(sd and dtime_l6 ? dtime_l6 : na, title="Daily L6",color=dcolor2, linewidth=2)

longCondition = close >dtime_h4
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)
    


shortCondition = close <dtime_l4
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)
    


Больше