Стратегия постепенного скользящего стоп-лосса


Дата создания: 2023-10-25 14:56:28 Последнее изменение: 2023-10-25 14:56:28
Копировать: 0 Количество просмотров: 691
1
Подписаться
1617
Подписчики

Стратегия постепенного скользящего стоп-лосса

Обзор

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

Принципы

Стратегия использует расчет среднего реального диапазона колебаний (ATR) в качестве основы для динамического остановки. ATR может эффективно отражать волатильность акций. Сначала стратегия вводит параметры цикла ATR, обычно 10 дней.

В частности, стратегия рассчитывает значение ATR для текущей линии K, а затем умножает его на коэффициент коэффициента, чтобы получить стоп-дистанцию. Если цена акции выше цены стоп-убытка, открывайте позиции; если цена акции ниже цены стоп-убытка, открывайте позиции. Таким образом, линия стоп-убытка будет плотно прикреплена к цене акции, чтобы достичь эффекта эволюционного отслеживания линии стоп-убытка.

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

  • Динамическое отслеживание убытков, адаптируемое расстояние убытков в зависимости от рыночных условий, гибкость
  • Использование ATR для расчета стоп-драйва позволяет эффективно отслеживать рыночные колебания
  • Простые стратегии, легкость использования, легкость автоматизации торговли
  • Настраиваемый ATR-цикл и стоп-дистанционный коэффициент для различных видов торгов
  • Балансирующие остановки и остановки, снижающие вероятность ненужных остановок

Риск

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

Оптимизация

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

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

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

Исходный код стратегии
/*backtest
start: 2023-10-17 00:00:00
end: 2023-10-24 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Supertrend Strategy, by Ho.J.", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=15)

// 백테스팅 시작일과 종료일 입력
startYear = input(2020, title="Start Year")
startMonth = input(1, title="Start Month")
startDay = input(1, title="Start Day")

endYear = input(9999, title="End Year")
endMonth = input(12, title="End Month")
endDay = input(31, title="End Day")

// 백테스팅 시간 범위 확인
backtestingTimeBool = (year >= startYear and month >= startMonth and dayofmonth >= startDay) and (year <= endYear and month <= endMonth and dayofmonth <= endDay)

atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)

[_, direction] = ta.supertrend(factor, atrPeriod)

var bool longCondition = false
var bool shortCondition = false

if backtestingTimeBool
    prevDirection = direction[1]
    if direction < 0
        longCondition := false
        shortCondition := true
    else if direction > 0
        longCondition := true
        shortCondition := false

if longCondition
    strategy.entry("My Long Entry Id", strategy.long)

if shortCondition
    strategy.entry("My Short Entry Id", strategy.short)

plot(strategy.equity, title="equity", color=color.rgb(255, 255, 255), linewidth=2, style=plot.style_area)