Стратегия ATR Trailing Stop с фибоначчи-ретракционными целями

Автор:Чао Чжан, Дата: 2024-02-28 17:09:12
Тэги:

img

Обзор

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

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

  1. Вычислить значение ATR и линию остановки ATR. Линию остановки ATR вычисляют путем умножения значения ATR на коэффициент (например, 3.5).
  2. Вычислить три линии ретракции Фибоначчи как цели прибыли. Линии ретракции Фибоначчи расположены между линией остановки ATR и новой высокой/низкой точкой в соответствии с коэффициентами Фибоначчи (например, 61,8%, 78,6%, 88,6%).
  3. Создание сигналов покупки/продажи, когда цена проходит через линию ATR, чтобы следовать тренду.
  4. Установите цели получения прибыли на трех линиях Фибоначчи.

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

  1. ATR-стоп-лосс может эффективно контролировать риски и предотвращать увеличение потерь.
  2. Цели Фибоначчи позволяют получать приличную прибыль во время трендов, избегая погони за вершинами и дном.
  3. Логика стратегии проста и легко внедряется.
  4. Гибкость корректировки коэффициента ATR и настройки Фибоначчи для адаптации к различным рынкам.

Риски

  1. Частые ATR запускают стоп-лосс на различных рынках, что приводит к чрезмерной торговле.
  2. Возможность отсутствия отзывов и корректировок.
  3. Оптимизация параметров, необходимая для периода ATR и т.д.

Улучшение

  1. Включите фильтр тренда, чтобы избежать торговли на различных рынках.
  2. Добавьте механизм повторного входа, чтобы уменьшить недостающие отступления.
  3. Проверка и оптимизация периода ATR, мультипликатора ATR, параметров Фибоначчи и т.д.

Резюме

Стратегия интегрирует два важных метода технического анализа ATR trailing stop и Fibonacci retracement для следования тренду, контроля риска и ориентирования на прибыль.


/*backtest
start: 2023-02-21 00:00:00
end: 2024-02-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("ATR TrailStop with Fib Targets", overlay=true)

// Input parameters
atrPeriod = input(5, title="ATR Period")
ATRFactor = input(3.5, title="ATR Factor")
Fib1Level = input(61.8, title="Fib1 Level")
Fib2Level = input(78.6, title="Fib2 Level")
Fib3Level = input(88.6, title="Fib3 Level")

// ATR Calculation
atrValue = ta.atr(atrPeriod)

// ATR TrailStop Calculation
loss = ATRFactor * atrValue
trendUp = close[1] > close[2] ? (close - loss > close[1] ? close - loss : close[1]) : close - loss
trendDown = close[1] < close[2] ? (close + loss < close[1] ? close + loss : close[1]) : close + loss
trend = close > close[2] ? 1 : close < close[2] ? -1 : 0
trailStop = trend == 1 ? trendUp : trendDown

// Fibonacci Levels Calculation
ex = trend > trend[1] ? high : trend < trend[1] ? low : na
fib1 = ex + (trailStop - ex) * Fib1Level / 100
fib2 = ex + (trailStop - ex) * Fib2Level / 100
fib3 = ex + (trailStop - ex) * Fib3Level / 100

// Plotting
plot(trailStop, title="TrailStop", color=color.red)
plot(fib1, title="Fib1", color=color.white)
plot(fib2, title="Fib2", color=color.white)
plot(fib3, title="Fib3", color=color.white)

// Buy and Sell Signals
longCondition = close > trailStop and close[1] <= trailStop
shortCondition = close < trailStop and close[1] >= trailStop

if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)


Больше