Тенденция после стратегии на основе направления свечи

Автор:Чао Чжан, Дата: 2024-02-19 10:36:00
Тэги:

img

Обзор

Эта стратегия генерирует длинные или короткие сигналы на основе взаимосвязи между ценой закрытия и ценой открытия свечей для определения текущего направления тренда. В частности, если цена закрытия выше цены открытия, генерируется длинный сигнал. Если цена закрытия ниже цены открытия, генерируется короткий сигнал.

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

Стратегия основывается на следующих двух условиях для получения торговых сигналов:

  1. Логика входного сигнала: если цена закрытия выше цены открытия (закрытие > открытие) и она достигла часа открытия, генерируется длинный сигнал. Если цена закрытия ниже цены открытия (закрытие < открытие) и она достигла часа открытия, генерируется короткий сигнал.

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

С этой конструкцией эта стратегия использует направленную информацию от свечей для определения направления тренда и своевременно следует за трендом.

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

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

В целом, эта стратегия имеет быструю реакцию и сильную способность отслеживания, подходящую для улавливания тенденций на средних временных рамках, таких как 1H, 4H.

Риски

К основным рискам этой стратегии относятся:

  1. Высокая частота торговли, легко влияет на затраты на транзакции и скольжение. Может оптимизировать путем корректировки коэффициента прибыли.

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

  3. Настройки параметров ATR влияют на производительность стоп-лосса/прибыли. Длина ATR и коэффициент прибыли требуют корректировки рынка.

  4. Установка времени работы также влияет на качество сигнала. Разные рынки нуждаются в разном времени работы.

Оптимизация

отмечает, что данная стратегия позволяет дополнительно оптимизировать:

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

  2. Включить размеры позиций для контроля размера единой ставки на основе волатильности.

  3. Использование машинного обучения для динамической оптимизации параметров стоп-лосса / прибыли для адаптации к рынку.

  4. Оценить настроение рынка с помощью индикаторов для управления общей позицией.

Заключение

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


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Go with Trend Strategy", overlay=true)

// Input settings
startHour = input(9, title="Start Hour for Entries")
activateLong = input(true, title="Activate Long")
activateShort = input(true, title="Activate Short")
takeProfitRatio = input(1.5, title="Take Profit Ratio")

// Calculate ATR
atrLength = 14  // You can change this value as needed
atrValue = ta.atr(atrLength)

// Calculate entry conditions
enterLong = close > open and hour >= startHour
enterShort = close < open and hour >= startHour

// Strategy logic
if (activateLong and enterLong)
    strategy.entry("Long", strategy.long)

if (activateShort and enterShort)
    strategy.entry("Short", strategy.short)

// Stop loss and take profit conditions
strategy.exit("Exit Long", from_entry="Long", loss=close - atrValue, profit=close + takeProfitRatio * atrValue)
strategy.exit("Exit Short", from_entry="Short", loss=close + atrValue, profit=close - takeProfitRatio * atrValue)


Больше