Стратегия «Покупай дешево, продавай дорого»


Дата создания: 2023-10-24 13:54:18 Последнее изменение: 2023-10-24 13:54:18
Копировать: 0 Количество просмотров: 779
1
Подписаться
1617
Подписчики

Стратегия «Покупай дешево, продавай дорого»

Обзор

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

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

Стратегия включает в себя следующие части, которые позволяют автоматизировать торговлю:

  1. Вычисление верхнего и нижнего траекторий пояса Бурин: вычислив стандартное разрыв n циклов close, получите верхний и нижний траектории пояса Бурин.

  2. Определение долгосрочных и краткосрочных тенденций: расчет долгосрочных 300-циклических и краткосрочных 20-циклических SMA, определение общей тенденции акций и тенденции текущего этапа.

  3. Сигнал покупки: когда “close” пробивает низкую линию Бринга, а долгосрочные SMA находятся выше, краткосрочные SMA начинают расти, считая, что это низкая точка в диапазоне, создает сигнал покупки.

  4. Продающий сигнал: когда близкий прорыв в коридоре Буринского пояса наступает, а длинный SMA находится внизу, короткий SMA начинает падать, считая, что это высокий уровень в диапазоне, который создает сигнал продажи.

  5. Использование OCO-команды гарантирует остановку и прекращение убытков.

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

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

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

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

  2. Систематически ловить короткосрочные покупательские моменты, чтобы не пропустить низкие точки.

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

  4. При этом устанавливаются точки остановки и остановки, которые позволяют эффективно контролировать риск.

  5. Это позволяет отфильтровать большинство недействительных сигналов и повысить шансы на победу.

  6. Это позволяет отслеживать тенденции и своевременно корректировать позиции.

  7. Стратегическая концепция четкая и понятная, и ее легко оптимизировать.

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

В этой стратегии также есть некоторые риски, о которых следует помнить:

  1. Неправильный выбор акций может привести к неконтролируемым тенденциям.

  2. Неправильно настроенные параметры могут привести к слишком высокой частоте или пропущенному времени торгов.

  3. Внезапные события могут привести к обратному тренду и увеличению убытков.

  4. Слишком близкая точка остановки может привести к частым остановкам.

  5. Недостаточный объем сделок может привести к полному отсутствию сделок.

  6. Краткий период отсчета может привести к пересочетанию.

Меры по противодействию включают: выбор акций с хорошей ликвидностью и явным трендом; корректировка параметров для достижения оптимального эффекта; внимание к предотвращению реверсий на важные новости; надлежащее ослабление стоп-лосс; оценка реального объема торговли; расширение стабильности тестирования на обратном цикле.

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

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

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

  2. Добавление методов остановки, таких как отслеживание остановки, средняя остановка и т. д., для дальнейшего контроля риска.

  3. Увеличение управления позициями, корректировка размеров позиций в зависимости от ключевых моментов, управление эффективностью использования средств.

  4. В сочетании с показателями объема торгов, избежать низкого количества неэффективных прорывов.

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

  6. Добавление алгоритмов машинного обучения для автоматической оптимизации параметров и оценки стратегий.

  7. Сочетание с другими стратегиями, формирование многостратегического портфеля, повышение стабильности.

Благодаря этим оптимизациям можно еще больше повысить эффективность и стабильность стратегии.

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

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

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

//@version=3
strategy("Buy Dip Sell Rip Strategy", overlay=true)
source = close
length = input(15, minval=1)
mult = input(1.25, minval=0.001, maxval=50)
longMAPeriod = input(300, minval=5)
shortMAPeriod = input(20, minval=5)

basis = sma(source, length)
longMA = sma(source, longMAPeriod)
prevLongMA = sma(close[1],longMAPeriod)
shortMA = sma(source, shortMAPeriod)
dev = mult * stdev(source, length)

upper = basis + dev
lower = basis - dev

buyEntry = crossover(source, lower)
sellEntry = crossunder(source, upper)

if (source > lower and source[1] < lower)
    if (longMA < source  and shortMA>source)
        strategy.entry("BBandLE", strategy.long, stop=lower, oca_name="BollingerBands",  comment="BBandLE")
    else
        strategy.close("BBandSE")
else
    strategy.cancel(id="BBandLE")

if (source > upper and source[1] < upper)
    if (longMA > source  and shortMA < source)
        strategy.entry("BBandSE", strategy.short, stop=upper, oca_name="BollingerBands",  comment="BBandSE")
    else 
        strategy.close("BBandLE")
else
    strategy.cancel(id="BBandSE")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)