Покупать с низкой волатильностью VS покупать с высокой волатильностью

Автор:Чао Чжан, Дата: 2024-01-08 11:33:58
Тэги:

img

Обзор

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

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

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

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

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

Основными преимуществами этой стратегии являются:

  1. Интуитивно сравнивать эффективность стратегий покупки в периоды низкой и высокой волатильности.
  2. Использование SMA для сглаживания АТР может отфильтровать ложные прорывы.
  3. Может проверять различные уровни волатильности путем настройки параметров.

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

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

  1. Возможно, вы упустите возможности повышения цен, если купите только низкую волатильность.
  2. Может увеличить системный риск, если покупать только высокую волатильность.
  3. Ненадлежащие параметры могут привести к упущению возможности покупки или закрытию позиций слишком рано.

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

Руководство по оптимизации

Эта стратегия может быть дополнительно оптимизирована путем:

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

Заключение

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


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © I11L

//@version=5
strategy("I11L - Better Buy Low Volatility or High Volatility?", overlay=false)

mode = input.string("Buy low Volatility",options = ["Buy low Volatility","Buy high Volatility"])
volatilityTargetRatio = input.float(1,minval = 0, maxval = 100,step=0.1, tooltip="1 equals the average atr for the security, a lower value means that the volatility is lower")
atrLength = input.int(14)

atr = ta.atr(atrLength) / close
avg_atr = ta.sma(atr,atrLength*5)
ratio = atr / avg_atr

sellAfterNBarsLength = input.int(5, step=5, minval=0)


var holdingBarsCounter = 0

if(strategy.opentrades > 0)
    holdingBarsCounter := holdingBarsCounter + 1


isBuy = false

if(mode == "Buy low Volatility")
    isBuy := ratio < volatilityTargetRatio
else
    isBuy := ratio > volatilityTargetRatio

isClose = holdingBarsCounter > sellAfterNBarsLength



if(isBuy)
    strategy.entry("Buy",strategy.long)

if(isClose)
    holdingBarsCounter := 0
    strategy.exit("Close",limit=close)

plot(ratio, color=isBuy[1] ? color.green : isClose[1] ? color.red : color.white)
plot(1, color=color.white)



Больше