Количественная торговая стратегия с фиксированным стоп-профитом и стоп-лоссом


Дата создания: 2024-02-18 09:53:48 Последнее изменение: 2024-02-18 09:53:48
Копировать: 1 Количество просмотров: 631
1
Подписаться
1617
Подписчики

Количественная торговая стратегия с фиксированным стоп-профитом и стоп-лоссом

Обзор

Эта стратегия называется количественная торговая стратегия с прорывом входа в динамическую скользящую среднюю и фиксированным стоп-стоп-убытком. Основная идея этой стратегии заключается в том, что в торговое время каждого дня недели, если цена закрытия ниже динамической скользящей средней Hull на 115 циклов, проводится операция с длинным входом; в последующие торговое время каждые три дня недели, без условий проводится операция с плоским выходом, в то же время устанавливается фиксированная стоп-убыток.

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

Стратегия была разработана на основе индикаторных сигналов Hull Moving Averages и периодических правил торговли.

Во-первых, в торговый период каждой понедельника, чтобы определить, является ли цена закрытия ниже 115 циклов Hull Moving Average, если соответствуют условиям, для проведения длинных позиций вход операций. Hull Moving Average, по сравнению с обычной Moving Average, может быстрее реагировать на изменения цены, более чувствительны к идентификации тенденции, поэтому этот индикатор сигнал может повысить точность времени входа.

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

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

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

Эта стратегия имеет следующие преимущества:

  1. Использование Hull Moving Average в качестве индикатора входного сигнала позволяет повысить точность выбора входного времени и уловить возможности тренда.

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

  3. Установление фиксированной точки стоп-стоп позволяет хорошо контролировать риск-прибыль в каждой сделке.

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

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

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

В этой стратегии есть некоторые риски, в том числе:

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

  2. Фиксированная остановка остановки не является достаточно гибкой и может привести к преждевременному или позднему остановке.

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

  4. Частые торги увеличивают стоимость сделки и влияют на скольжение.

  5. Неправильная настройка параметров (например, длина вычислительного цикла) может повлиять на эффективность стратегии.

Чтобы снизить эти риски, можно рассмотреть следующие меры оптимизации:

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

  2. Настройка динамического скольжения остановочных точек или рассмотрение предварительного настройки нескольких фиксированных остановочных точек.

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

  4. Сокращение частоты транзакций, снижение затрат на транзакции и влияние проскальзывающих точек.

  5. Оптимизация параметров, проверка устойчивости, повышение устойчивости стратегии.

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

В этой стратегии есть место для дальнейшей оптимизации, в основном в следующих аспектах:

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

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

  3. Стойкостный механизм, адаптирующийся к различным временным периодам и рыночным условиям.

  4. Интеграция в модель управления рисками для улучшения управления капиталом.

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

  6. Добавить модуль проверки диска, чтобы проверить, как политика работает на диске.

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

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

Эта стратегия была разработана на основе концепции входа и выхода из фиксированного цикла Hull Moving Average, имеет преимущества, такие как точность индикаторного сигнала, низкая вероятность отмены, а также контроль стоп-лосса для одной сделки. Однако в этой стратегии также есть проблемы, такие как необоснованная установка стоп-лосса.

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gnatskiller

//@version=5
strategy("Strategia HMA + LUN/MER", overlay=true)

// Inputs: stoploss %, takeProfit %
stopLossPercentage = input.float(defval=0.8, title='StopLoss %', minval=0.1, step=0.2) / 100
takeProfit = input.float(defval=1.5, title='Take Profit %', minval=0.3, step=0.2) / 100

// Calculate HMA 115
hma115 = ta.hma(close, 115)

// Exit and Entry Conditions - Check current day, session time, and price below HMA 115
isLong = dayofweek == dayofweek.monday  and not na(time(timeframe.period, "1000-1101")) and close < hma115
isExit = dayofweek == dayofweek.wednesday and not na(time(timeframe.period, "1000-1101"))

// Calculate Stoploss and Take Profit values
SL = strategy.position_avg_price * (1 - stopLossPercentage)
TP = strategy.position_avg_price * (1 + takeProfit)

// Strategy Enter, and exit when conditions are met
if isLong
    strategy.entry("Enter Long", strategy.long)
if strategy.position_size > 0 
    if isExit
        strategy.close("Enter Long", comment="Exit")
        strategy.exit("Exit", "Exit", stop=SL, limit=TP)

// Plot Stoploss and TakeProfit lines
plot(strategy.position_size > 0 ? SL : na, style=plot.style_linebr, color=color.red, linewidth=2, title="StopLoss")
plot(strategy.position_size > 0 ? TP : na, style=plot.style_linebr, color=color.green, linewidth=2, title="TakeProfit")

// Plot HMA 115
plot(hma115, color=color.blue, title="HMA 115")