
Тройная система захвата трендов по количеству перевертываемых движений - это стратегия торговли по тенденциям и движениям, основанная на правилах, которая объединяет три уникальные технические модели: ASO, SSL-канал и MBI в единый комплексный двигатель. Эта стратегия предназначена для трейдеров, которые предпочитают хорошо отфильтрованные входные точки, сокращение шумовых помех и четкую структуру торговли.
Основная логика этой стратегии основана на взаимодействии трех основных технических показателей:
Высокий уровень эмоционального колебателя (ASO): измеряет преимущества позитивной и нисходящей силы на рынке. ASO рассчитывает эмоции на рынке с помощью специальной формулы, которая сочетает внутридисковые давления с динамикой группового диапазона.
SSL-канал: это классический метод отслеживания трендов, основанный на высоких и низких скользящих средних. Он помогает отфильтровывать ложные сигналы и приводит торговлю в соответствие с более широким направлением рынка.
Движущий показатель прорыва (MBI): ищет, когда цена пробивает недавние максимумы. Он служит конечным триггером после того, как другие фильтры выровняются. MBI работает, проверяя, не пробилась ли цена в прошлом определенном периоде (по умолчанию 12).
Торговые сигналы создаются только при выполнении следующих условий:
В частности, условия многоголового входа следующие: MBI - положительное значение (что означает прорыв вверх), ASO - положительное значение (ASO Bulls > ASO Bears), ASO только что создала положительную крестку, SSL находится в положительном состоянии. В условиях пустого входа все наоборот. После запуска сделки система использует множители ATR для установки динамических уровней стоп-стоп и убытков, что позволяет управлять рисками в соответствии с волатильностью рынка.
Механизм многократного подтверждения: эта стратегия значительно уменьшает количество ложных сигналов и повышает качество торговли, требуя согласованности трех независимых показателей. Такой метод “тройной фильтрации” гарантирует, что только сильные трендовые сигналы будут инициировать торговлю.
Адаптированный риск-менеджмент: стратегия использует ATR для расчета уровней стоп-стоп и потерь, что позволяет автоматически корректироваться в зависимости от волатильности рынка. Это обеспечивает единообразие рисков в разных рыночных условиях.
Гибкая настройка параметров: политика позволяет пользователям настраивать параметры различных компонентов, включая ASO-циклы и методы расчета, SSL-движущийся средний цикл, MBI-прорывный период отсчета и соответствующие настройки ATR, чтобы оптимизировать их в соответствии с различными рыночными условиями и личными предпочтениями в отношении риска.
Четкая структура торгов: правила стратегии ясны и понятны, обеспечивают четкие условия входа и выхода для трейдеров, уменьшая потребность в субъективных суждениях.
Не перекрывающиеся сделки: стратегия разработана таким образом, чтобы не открывать новые сделки до закрытия текущих сделок, что помогает управлять рисками и предотвращать чрезмерную торговлю.
Сочетание тренда и динамики: благодаря сочетанию трендового слежения (SSL) и динамического прорыва (MBI) эта стратегия позволяет одновременно с улавливанием тренда подтверждать динамику, что обычно приводит к более надежным торговым сигналам.
Решение: можно рассмотреть возможность корректировки параметров различных индикаторов в соответствии с различными рыночными условиями или надлежащей смягчения некоторых условий на высоковолатильных рынках.
Решение: проведение всестороннего отсчета и оптимизации параметров, чтобы найти оптимальную комбинацию параметров для конкретного рынка и временных рамок. Подумайте об использовании пошагового отсчета для оценки влияния изменений параметров на производительность.
Решение: рассмотреть возможность добавления фильтров на интенсивность тренда или механизмов регулирования волатильности, регулирования стратегических действий в экстремальных рыночных условиях. Также можно внедрить более радикальные механизмы остановки убытков для смягчения потенциальных резких отступлений.
Решение: включить в обратный отсчет моделирование скольжения и использовать лимитную, а не рыночную цену в реальных торгах. Подумайте о том, чтобы добавить дополнительную безопасную маржу в стратегию, чтобы справиться с риском исполнения.
Решение: подумайте о том, чтобы использовать базовые фильтры или индикаторы рыночных настроений в дополнение к техническим сигналам. Например, можно добавить волатильные условия, чтобы избежать торговли при чрезмерной волатильности рынка.
Динамическая корректировка параметров: механизм, позволяющий автоматически корректировать параметры стратегии на основе рыночных условий (например, волатильности или интенсивности тренда). Например, в условиях высокой волатильности можно увеличить кратность ATR, а в условиях низкой волатильности - уменьшить. Это позволяет лучше адаптироваться к различным состояниям рынка и повысить устойчивость стратегии.
Добавление фильтров рыночных условий: внедрение дополнительных фильтров для идентификации текущих рыночных условий (например, трендов, колебаний или случайности) и корректировки стратегического поведения в зависимости от различных условий. Например, в рыночных условиях колебаний могут потребоваться более строгие условия для входа, в то время как в рынках с сильными тенденциями могут быть более мягкие.
Управление частичными позициями: реализация более сложной системы управления позициями, позволяющей частично вводить и выводить позиции на основе силы сигнала, волатильности рынка или других факторов. Это может помочь снизить риск “все или ничего” методов торговли, предоставляя более тщательный контроль риска.
Оптимизация временных фильтров: улучшение существующих функций фильтрации времени обратной связи, добавление фильтрации времени в течение дня или фильтрации времени в определенных рыночных условиях. Некоторые рынки могут демонстрировать более заметные тенденционные характеристики в определенные периоды времени, и стратегии оптимизации для этих периодов времени могут улучшить общую производительность.
Улучшение показателей: рассмотрение возможности улучшения или замены существующих показателей. Например, можно использовать адаптивные скользящие средние вместо простых скользящих средних в SSL или исследовать альтернативные методы расчета ASO, чтобы лучше улавливать изменения настроений рынка.
Улучшение машинного обучения: внедрение алгоритмов машинного обучения для оптимизации выбора параметров или прогнозирования того, в каких рыночных условиях стратегия может работать наилучшим образом. Это может помочь системе учиться на исторических данных и адаптироваться к будущим изменениям рынка.
Оптимизация стоп-стопов: реализация более сложных стратегий стоп-стопов, таких как отслеживание стопов или динамические стопы на основе уровней поддержки/сопротивления. Аналогичным образом, можно рассматривать интеллектуальные механизмы стоп-стопов, основанные на структуре рынка, а не только на ATR-множестве.
Тройная система захвата трендов с помощью трейдинга - это всеобъемлющая торговая стратегия, которая обеспечивает строго отфильтрованный метод отслеживания трендов путем интеграции ASO Sentiment Indicator, SSL Trend Channel и MBI Dynamic Breakthrough Indicator. Основные преимущества этой стратегии заключаются в ее многочисленных механизмах подтверждения и адаптивной системе управления рисками, которая помогает уменьшить ложные сигналы и адаптироваться к различным рыночным условиям.
Несмотря на существование потенциальных рисков, таких как чрезмерное перефразирование и чувствительность к параметрам, эти проблемы могут быть эффективно смягчены с помощью соответствующей оптимизации параметров и дополнительных технологий управления рисками. Будущие направления оптимизации могут включать в себя динамическую корректировку параметров, фильтрацию рыночных условий и более сложную систему управления позициями, которые имеют потенциал для дальнейшего повышения эффективности и устойчивости стратегии.
В целом, этот метод тройной фильтрации представляет собой ценный инструмент для трейдеров, которые ищут четкую структуру и надежные торговые сигналы. Благодаря сочетанию анализа настроений, идентификации тенденций и подтверждения динамики, стратегия позволяет идентифицировать высоковероятные торговые возможности в различных рыночных условиях, сохраняя осторожное управление рисками.
/*backtest
start: 2024-06-16 00:00:00
end: 2025-06-14 08:00:00
period: 3d
basePeriod: 3d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Darkoexe
//@version=5
strategy("PMZ's Triple Filter Trend Strategy {Darkoexe}", overlay=true, initial_capital=10000, pyramiding=2, margin_long=50, margin_short=50)
length=input.int(10,"ASO Period?",minval=1,maxval=100)
mode=input.int(0,"ASO Calculation Method:",minval=0,maxval=2)
intrarange=high-low
grouplow=ta.lowest(low,length)
grouphigh=ta.highest(high,length)
groupopen=open[length-1]
grouprange=grouphigh-grouplow
K1=intrarange==0 ? 1 : intrarange
K2=grouprange==0 ? 1 : grouprange
intrabarbulls=((((close-low)+(high-open))/2)*100)/K1
groupbulls=((((close-grouplow)+(grouphigh-groupopen))/2)*100)/K2
intrabarbears=((((high-close)+(open-low))/2)*100)/K1
groupbears=((((grouphigh-close)+(groupopen-grouplow))/2)*100)/K2
TempBufferBulls= mode==0 ? (intrabarbulls+groupbulls)/2 : mode==1 ? intrabarbulls : groupbulls
TempBufferBears= mode==0 ? (intrabarbears+groupbears)/2 : mode==1 ? intrabarbears : groupbears
ASOBulls=ta.sma(TempBufferBulls,length)
ASOBears=ta.sma(TempBufferBears,length)
//ASO
// Modification
var cross = false
var isASObull = ASOBulls>ASOBears ? true : false
if(ASOBulls>ASOBears and isASObull == false)
isASObull := true
cross := true
else if(ASOBulls<ASOBears and isASObull == true)
isASObull := false
cross := true
else
cross := false
//SSL
len=input.int(title="SSL Period", defval=10)
smaHigh=ta.sma(high, len)
smaLow=ta.sma(low, len)
float Hlv = na
Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? smaHigh: smaLow
sslUp = Hlv < 0 ? smaLow : smaHigh
//Modification
var isSSLbull = sslUp>sslDown ? true: false
if(sslUp>sslDown)
isSSLbull := true
else if(sslUp<sslDown)
isSSLbull := false
//MBI
per = input(12,title="MBI Period")
H = ta.highest(hl2,per)
hi = H[1]
L = ta.lowest(hl2,per)
lo = L[1]
cl = close
ind = cl>hi? 1 : cl<lo? -1 : 0
//Modification
var longCondition = false
var shortCondition = false
if(ind>0 and isASObull==true and cross==true and isSSLbull==true)
longCondition := true
else if(ind<0 and isASObull==false and cross==true and isSSLbull==false)
shortCondition := true
// Define strategy parameters
// risk_percent = input(2, title="Risk Percentage")
targetATR = input(1, title="Take Profit ATR ratio")
stopLossATR = input(1.5, title="Stop loss ATR ratio")
atrPeriod = input(14, title="ATR period")
ATR = ta.atr(atrPeriod)
// Calculate take profit level based on the reward ratio
take_profit_price = longCondition? close + (targetATR*ATR): shortCondition? close - (targetATR*ATR): 0
stop_loss_price = longCondition? close - (stopLossATR*ATR): shortCondition? close + (stopLossATR*ATR): 0
if (longCondition and strategy.opentrades == 0)
// take_profit_price = close + targetATR*ATR
// stop_loss_price = close - (stopLossATR*ATR)
strategy.entry("My Long Entry Id", strategy.long)
strategy.exit("Exit", from_entry="My Long Entry Id", stop=stop_loss_price, limit=take_profit_price)
longCondition := false
else if (shortCondition and strategy.opentrades == 0)
// take_profit_price = close - targetATR*ATR
// stop_loss_price = close + (stopLossATR*ATR)
strategy.entry("My Short Entry Id", strategy.short)
strategy.exit("Exit", from_entry="My Short Entry Id", stop=stop_loss_price, limit=take_profit_price)
shortCondition := false