Стратегия бэктестинга прорывных максимумов и минимумов


Дата создания: 2024-01-08 16:13:44 Последнее изменение: 2024-01-08 16:13:44
Копировать: 1 Количество просмотров: 575
1
Подписаться
1617
Подписчики

Стратегия бэктестинга прорывных максимумов и минимумов

Обзор

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

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

Эта стратегия сначала считывает установленные пользователем циклы (например, дневная линия, круговая линия и т. д.) и количество циклов просмотра. Затем, в соответствии с этими параметрами, получается максимальная цена и минимальная цена за цикл просмотра. Например, установленная как дневная линия, просмотр 1 цикла, получается максимальная цена и минимальная цена за прошлый день.

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

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

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

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

  1. На основе прорывных точек можно определить направление тенденции, а после подсчета сильных сторон легко уловить большую тенденцию.

  2. Простые и понятные в использовании, очень подходят для новичков.

  3. Удобство оптимизации параметров цикла корректировки для различных сортов.

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

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

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

Однако эта стратегия также несет в себе некоторые риски:

  1. Невозможно эффективно отфильтровать сочетание колебаний, что может привести к многократным ошибкам.

  2. Неконтролируемые потери, существует определенная степень риска потерь.

  3. В некоторых странах, например, в Китае, существуют определенные различия в уровне фактической прибыли и убытков.

  4. Невозможно ограничить размер позиции, существует проблема избыточного объема.

В зависимости от вышеуказанных рисков, можно установить механизм остановки убытков, оптимизировать условия фильтрации, контролировать количество позиций и т. Д.

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

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

  1. Добавление фильтрации, чтобы избежать частого открытия позиций во время шок-облигаций. Условия фильтрации, такие как ценовые каналы, волатильность и другие, могут быть установлены.

  2. Установка мобильного или временного стоп-убытка. Контроль риска отдельных потерь, обеспечение общей рентабельности.

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

  4. Тестирование эффективности различных циклических параметров, выбор оптимальной комбинации параметров.

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

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

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

Исходный код стратегии
/*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"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 03/07/2018
// This script shows a high and low period value.
//    Width - width of lines
//    SelectPeriod - Day or Week or Month and etc.
//    LookBack - Shift levels 0 - current period, 1 - previous and etc.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="High and Low Levels Backtest", shorttitle="HL Levels", overlay = true)
SelectPeriod = input("D", defval="D")
LookBack = input(1,  minval=0)
reverse = input(false, title="Trade reverse")
xHigh  = request.security(syminfo.tickerid, SelectPeriod, high[LookBack])
xLow   = request.security(syminfo.tickerid, SelectPeriod, low[LookBack])
vS1 = xHigh
vR1 = xLow
pos = iff(close > vR1, 1,
       iff(close < vS1, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )