
Обзор
“Стратегия двойного отставания от равновесия” - это обычная торговая стратегия в техническом анализе. Эта стратегия объединяет в себе два различных цикла показателей простого движущегося среднего значения (SMA) и средней реальной волной (ATR), предназначенных для захвата рыночных трендовых переломов и достижения сделок с низким риском и высокой доходностью.
Стратегический принцип
Основные принципы этой стратегии:
- Вычислить простую скользящую среднюю (SMA) двух различных циклов, по умолчанию 14 и 50 циклов.
- Для расчета показателя ATR, используемого для измерения рыночной волатильности, по умолчанию используется цикл 14.
- Нарисуйте верхнюю и нижнюю полосы ATR, которые служат отсчетом для колебаний цен. Верхняя полоса получается от наивысшей цены плюс ATR умноженный на множитель ((по умолчанию 1.5)), а нижняя полоса получается от наименьшей цены минус ATR умноженный на множитель.
- Когда цены на закрытии пересекают краткосрочную среднюю линию, а краткосрочная средняя линия находится над долгосрочной средней линией, генерируется многозначный сигнал, и под K-линией изображается вверх стрелка.
- При закрытии цены, когда она пересекает краткосрочную среднюю линию ниже, а краткосрочная средняя линия ниже долгосрочной средней линии, создается сигнал диверсификации и вырисовывается нисходящая стрелка над линией K.
- Установка стоп-поста и стоп-поста, стоп-пост минимальная цена минус ATR умноженное на кратное число, стоп-пост - цена открытия позиции плюс ((цена открытия позиции - стоп-пост) умноженное на кратное число 2).
Из вышеуказанных принципов видно, что стратегия, объединяющая тенденционное суждение равнолинейной системы и измерение волатильности показателя ATR, основана на отслеживании тенденций, а также контролирует риск отступления, является трендовой стратегией.
Анализ преимуществ
“Двухлинейная стратегия прорыва” имеет следующие преимущества:
- Следить за тенденциями: определять направление тенденции с помощью равнолинейной системы, улавливать крупные рыночные тенденции, следовать рынку.
- Контроль риска: используйте индикатор ATR для измерения рыночной волатильности, установите разумный стоп-лосс и контролируйте отступ в пределах приемлемого диапазона.
- Гибкость параметров: такие параметры, как среднелинейный цикл, цикл ATR и кратность, могут быть оптимизированы и скорректированы в зависимости от различных рынков и сортов, имея определенную универсальность.
- Интуитивно понятный: торговые сигналы просты и понятны, подходят для использования инвесторами разных уровней.
Анализ рисков
Несмотря на определенные преимущества этой стратегии, существуют следующие риски:
- Частые сделки: когда рынок волатилен и тенденция не очевидна, эта стратегия может создавать частые торговые сигналы, увеличивая стоимость сделки.
- Отсталость: равнолинейная система по своей сути имеет определенную отсталость, и в начале рыночного перевода может быть определенный отход.
- Параметровая оптимизация: различные параметры имеют большое влияние на эффективность стратегии, требуя оптимизации параметров для разных рынков и разновидностей, что увеличивает трудности в реализации.
В связи с вышеперечисленными рисками можно оптимизировать и улучшать:
- Введение фильтрации трендов: прежде чем генерировать торговый сигнал, сначала определите направление тренда большого цикла, торгуйте только в том случае, когда тенденция большого цикла ясна, чтобы уменьшить частоту торгов.
- Оптимизация стоп-стопов: можно рассмотреть возможность внедрения динамических стопов, таких как мобильные стопы, стопы волатильности, а также адаптации стопов к динамике рыночной волатильности, повышая гибкость стратегии.
- Комбинированная оптимизация: объединение стратегии с другими техническими показателями или фундаментальными факторами для повышения устойчивости стратегии.
Направление оптимизации
Эта стратегия может быть оптимизирована в следующих аспектах:
- Самостоятельная оптимизация параметров: для различных сортов и циклов, автоматическое поиск оптимальной комбинации параметров, сокращение объема работы по настройке параметров. Можно использовать генетические алгоритмы, поиск по сетке и другие методы оптимизации.
- Фильтрация сигналов: после создания торгового сигнала, можно дополнительно ввести другие технические показатели или фундаментальные факторы для вторичного подтверждения сигнала, повышения качества сигнала. Например, добавление показателя объема сделок, чтобы определить силу тенденции; добавление макроэкономических данных, чтобы определить, благоприятна ли обстановка для продолжения тенденции.
- Управление позицией: при открытии позиции можно динамически корректировать размер позиции в зависимости от рыночной волатильности, учетного риска и других факторов, чтобы контролировать риск отдельной сделки. Например, использование формулы Келли, метода фиксированной пропорции и т. Д.
- Движущийся стоп: первоначальный стоп является фиксированным, и с движением цены в выгодном направлении можно рассмотреть возможность перемещения стоп в выгодном направлении, чтобы уменьшить отступление и повысить эффективность использования средств.
Вышеуказанная оптимизация может повысить адаптивность, устойчивость и рентабельность стратегии, однако следует учитывать, что чрезмерная оптимизация может привести к тому, что кривая стратегии будет соответствовать и плохо работать вне образца, поэтому требуется полное проверка обратной связи внутри и снаружи образца.
Подвести итог
Двойная равнолинейная отстающая стратегия является классической стратегией слежения за трендом, которая определяет направление тренда с помощью равнолинейной системы, контролирует риск с использованием показателей ATR и одновременно управляет риском при улавливании трендовых тенденций. Несмотря на определенные проблемы с задержкой и частотой торговли, ее эффективность может быть улучшена путем оптимизации стоп-лосс, внедрения фильтрации сигналов, адаптации параметров, оптимизации и управления позицией.
Исходный код стратегии
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="2 Moving Averages", shorttitle="2MA", overlay=true)
// Moving Averages
len = input(14, minval=1, title="Length MA1")
src = input(close, title="Source MA1")
ma1 = sma(src, len)
len2 = input(50, minval=1, title="Length MA2")
src2 = input(close, title="Source MA2")
ma2 = sma(src2, len2)
// Plotting Moving Averages
plot(ma1, color=#0b6ce5, title="MA1")
plot(ma2, color=#00ff80, linewidth=2, title="MA2")
// ATR Bands
atrLength = input(14, title="ATR Length")
atrMultiplier = input(1.5, title="ATR Multiplier")
upperBand = high + atr(atrLength) * atrMultiplier
lowerBand = low - atr(atrLength) * atrMultiplier
u =plot(upperBand, color=color.rgb(217, 220, 223, 84), title="ATR Upper Band")
l = plot(lowerBand, color=color.rgb(217, 220, 223, 84), title="ATR Lower Band")
fill(u, l, color=#471eb821, title="ATR Background")
// Conditions for plotting arrows
upArrowCondition = ma1 > ma2 and crossover(close, ma1)
downArrowCondition = ma1 < ma2 and crossunder(close, ma1)
// Plotting arrows
plotshape(upArrowCondition, style=shape.arrowup, color=color.rgb(66, 45, 255), size=size.normal, location=location.belowbar, title="Up Arrow")
plotshape(downArrowCondition, style=shape.arrowdown, color=color.red, size=size.normal, location=location.abovebar, title="Down Arrow")
// Checkbox for trade execution
showTrades = input(true, title="Hiển thị giao dịch")
// Buy Condition
if (upArrowCondition and showTrades)
strategy.entry("Buy", strategy.long)
// Sell Condition
if (downArrowCondition and showTrades)
strategy.entry("Sell", strategy.short)
// Stop Loss and Take Profit
stopLossBuy = low - atr(14) * atrMultiplier
takeProfitBuy = close + (close - stopLossBuy) * 2
stopLossSell = high + atr(14) * atrMultiplier
takeProfitSell = close - (stopLossSell - close) * 2
strategy.exit("Exit Buy", "Buy", stop=stopLossBuy, limit=takeProfitBuy)
strategy.exit("Exit Sell", "Sell", stop=stopLossSell, limit=takeProfitSell)