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

Тенденция прорыва нескольких заказов в соответствии со стратегией

Автор:Чао Чжан, Дата: 2024-07-30 17:18:11
Тэги:ATRББЕМАSAR

img

Обзор

Стратегия Multi-Order Breakout Trend Following - это количественная торговая стратегия, основанная на технических индикаторах анализа, предназначенная для захвата рыночных тенденций и многократного вхождения в позиции при благоприятных условиях. Эта стратегия сочетает в себе несколько индикаторов, включая полосы Боллинджера, средний истинный диапазон (ATR), параболический SAR и экспоненциальную скользящую среднюю (EMA), для определения точек входа и выхода через многочисленные скрининги условий. Основная идея заключается в том, чтобы открыть длинные позиции, когда цена превышает верхнюю полосу Боллинджера и удовлетворяет другим условиям, используя динамическое размещение позиций и фиксированный процент стоп-лосса для контроля риска. Кроме того, стратегия устанавливает максимальный предел количества открытых позиций, чтобы избежать чрезмерной концентрации риска.

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

  1. Условия въезда:

    • Прорыв цены выше верхней полосы Боллинджера
    • Цена выше показателя SAR
    • Цена выше средней средней стоимости
    • ATR выше 100-периодного простого скользящего среднего
    • Текущее количество открытых позиций меньше максимально допустимого
  2. Условия выхода:

    • Цена падает ниже средней полосы Боллинджера
    • Цена падает ниже показателя SAR
  3. Управление позициями:

    • Использует динамическое размещение позиций на основе собственного капитала счета, риска на сделку и процента стоп-лосса
    • Устанавливает максимальный предел количества открытых позиций
  4. Контроль рисков:

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

    • Боллингерские полосы: используются для оценки ценовых прорывов и ретракшенов
    • SAR: помогает определить направление тренда и время выхода
    • EMA: подтверждает среднесрочные и долгосрочные тенденции
    • ATR: оценивает волатильность рынка и отфильтровывает условия низкой волатильности

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

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

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

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

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

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

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

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

  1. Риск переоценки: на колеблющихся рынках частые ложные сигналы о переоценке могут привести к переоценке и увеличению затрат на транзакции.

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

  3. Риск переворота тренда: несмотря на установление стоп-лосса, значительные убытки могут произойти во время серьезных переворотов тренда.

  4. Чувствительность параметров: эффективность стратегии может быть чувствительна к настройкам параметров, что может потребовать частых корректировок в различных рыночных условиях.

  5. Системный риск: одновременное владение несколькими высококоррелированными позициями может подвергать стратегию системному риску при крайней волатильности рынка.

  6. Риск вывода: на долгосрочных боковых или колеблющихся рынках стратегия может столкнуться со значительными рисками вывода.

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

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

  2. Оптимизировать механизм выхода: рассмотреть вопрос о введении остановок или динамических остановок на основе ATR для лучшего закрепления прибыли и адаптации к волатильности рынка.

  3. Добавление фильтров времени торговли: анализировать характеристики рынка в течение разных периодов времени, чтобы избежать неэффективного времени торговли и повысить эффективность общей стратегии.

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

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

  6. Интегрировать фундаментальные факторы: объединять фундаментальные показатели (такие как выпуски экономических данных, крупные события) для фильтрации или улучшения торговых сигналов.

  7. Многовременный анализ: внедрить многовременный анализ, чтобы обеспечить выравнивание тенденций в более широкие временные рамки.

  8. Управление корреляцией: Разработка модуля для мониторинга и управления корреляциями между различными инструментами торговли для лучшей диверсификации рисков.

  9. Оптимизация машинного обучения: Использование алгоритмов машинного обучения для оптимизации процессов отбора параметров и генерации сигналов, улучшение адаптивности стратегии и производительности.

Заключение

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

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

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


/*backtest
start: 2024-06-29 00:00:00
end: 2024-07-29 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Multi-Order Breakout Strategy", overlay=true)

// Parameters
risk_per_trade = input.float(1.0, "Risk Per Trade")
lookback = input(20, "Lookback Period")
breakout_mult = input.float(2.0, "Breakout Multiplier")
stop_loss_percent = input.float(2.0, "Stop Loss Percentage")
max_positions = input(5, "Maximum Open Positions")
atr_period = input(14, "ATR Period")
ma_len = input(100, "MA Length")

// Calculate Bollinger Bands and other indicators
[middle, upper, lower] = ta.bb(close, lookback, breakout_mult)
atr = ta.atr(atr_period)
sar = ta.sar(0.02, 0.02, 0.2)

ma = ta.ema(close, ma_len)
plot(ma, color=color.white)

// Entry conditions
long_condition = close > upper and close > sar and close > ma

// Exit conditions
exit_condition = ta.crossunder(close, middle) or ta.crossunder(close, sar)

// Count open positions
var open_positions = 0

// Dynamic position sizing
position_size = (strategy.equity * risk_per_trade/100) / (close * stop_loss_percent / 100)


// Strategy execution
if (long_condition and open_positions < max_positions and atr > ta.sma(atr, 100) and position_size > 0)
    strategy.entry("Long " + str.tostring(open_positions + 1), strategy.long, qty=position_size)
    open_positions := open_positions + 1

// Apply fixed stop loss to each position
for i = 1 to max_positions
    strategy.exit("SL " + str.tostring(i), "Long " + str.tostring(i), stop=strategy.position_avg_price * (1 - stop_loss_percent/100))

// Close all positions on exit condition
if (exit_condition and open_positions > 0)
    strategy.close_all()
    open_positions := 0

// Plot
plot(upper, "Upper BB", color.blue)
plot(lower, "Lower BB", color.blue)
plot(middle, "Middle BB", color.orange)
plot(sar, "SAR", color.purple, style=plot.style_cross)

Связанные

Больше