В процессе загрузки ресурсов... загрузка...

Двухнаправленная стратегия торговли на основе анализа паттернов поглощения свечей

Автор:Чао Чжан, Дата: 2024-12-12 11:27:27
Тэги:OHLCVOLATR

 Bidirectional Trading Strategy Based on Candlestick Absorption Pattern Analysis

Обзор

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

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

Основная логика основана на трех ключевых условиях: Сравнение открытых и закрытых цен для определения направления свечей, требуя противоположных тенденций в соседних свечах. Анализ амплитудных отношений: Расчет и сравнение амплитуды цен двух свечей (абсолютная разница между закрытыми и открытыми ценами), требуя, чтобы амплитуда последней свечи была больше. Характеристики объема: Требование, чтобы объем первой свечи был больше, чем второй, в то время как объем второй свечи должен быть меньше предыдущего объема.

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

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

  1. Многомерный анализ: объединяет ценовые модели, амплитуду и анализ объема для повышения надежности сигнала.
  2. Двунаправленная торговля: захватывает рыночные возможности в обоих направлениях, в полной мере используя волатильность рынка.
  3. Комплексное управление рисками: использует управление деньгами, основанное на процентах, с гибкими параметрами стоп-лосса и прибыли.
  4. Визуальная поддержка: обеспечивает графическое отображение торговых сигналов для анализа и оптимизации.
  5. Ясное управление состоянием: точно контролирует позиции через переменные состояния, избегая дублирования записей.

Стратегические риски

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

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

  1. Внедрение фильтрации направления: рекомендуется добавлять скользящие средние или индикаторы тенденции для фильтрации направления для улучшения качества сигнала.
  2. Оптимизировать управление деньгами: размер позиции может быть динамически скорректирован в зависимости от волатильности рынка.
  3. Улучшить механизм стоп-лосса: Рекомендуется внедрить динамический стоп-лосс с использованием индикатора ATR для улучшения контроля рисков.
  4. Добавление фильтрации времени: может добавлять фильтры периода торговли, чтобы избежать неэффективных периодов.
  5. Улучшить подтверждение сигнала: можно добавить показатели объема или другие технические показатели для вспомогательного подтверждения.

Резюме

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


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-10 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Candle Absorption Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Условия индикатора
// 1. Две соседних свечи должны быть разнонаправленными
condition1 = (close[1] > open[1] and close < open) or (close[1] < open[1] and close > open)

// 2. Дельта по цене открытия/закрытия у первой свечи меньше, чем у следующей
delta1 = math.abs(close[1] - open[1])
delta2 = math.abs(close - open)
condition2 = delta1 < delta2

// 3. Объем первой свечи должен быть больше, а последней меньше
condition3 = volume[1] > volume and volume < volume[2]

// Проверяем выполнение всех условий
all_conditions = condition1 and condition2 and condition3

// Определяем направление для входа
is_bullish = close > open  // Зеленая свеча больше (бычье поглощение)
is_bearish = close < open  // Красная свеча больше (медвежье поглощение)

// Переменные для отслеживания состояния позиции
var float entryPrice = na
var bool isLong = false
var bool isShort = false

// Логика генерации сигналов
buySignal = all_conditions and is_bullish and not isLong
sellSignal = all_conditions and is_bearish and not isShort

// Обработка лонгового входа
if (buySignal)
    isLong := true
    isShort := false
    entryPrice := close
    strategy.entry("Long", strategy.long)

// Обработка шортового входа
if (sellSignal)
    isLong := false
    isShort := true
    entryPrice := close
    strategy.entry("Short", strategy.short)

// Визуализация точек поглощения
// if all_conditions
//     label.new(bar_index, high, "✔", color=is_bullish ? color.green : color.red, textcolor=color.white, style=label.style_circle, size=size.small)

// Логика сброса состояния при закрытии позиции
if (strategy.position_size == 0)
    isLong := false
    isShort := false
    entryPrice := na

// Дополнительно: можно добавить стоп-лосс и тейк-профит (пример ниже)
// strategy.exit("Exit Long", from_entry="Long", stop=low - atr(14), limit=high + atr(14))
// strategy.exit("Exit Short", from_entry="Short", stop=high + atr(14), limit=low - atr(14))


Связанные

Больше