
Многополюсная стратегическая обратная стратегия SAR с фильтрующей моделью входа - это количественная торговая стратегия, которая сочетает в себе несколько технических показателей, в основном используя параллельную линию SAR (стоп-офф и реверс) в качестве центрального механизма генерации сигналов, а также внедряя RSI (относительно сильный и слабый индекс), случайный RSI, MACD (движущаяся средняя свертываемая и рассеянная) и LSMA (минимальная двойная движущаяся средняя) в качестве фильтрующих условий для повышения качества и надежности торгового сигнала. Эта стратегия позволяет одновременно идентифицировать многоциклические рыночные повороты и снижает риск ложных рывок с помощью многократного фильтрации условий.
В основе стратегии лежит объединение нескольких технических показателей для определения рыночных переломов и фильтрация низкокачественных сигналов посредством взаимной проверки между показателями.
Сигнал обратной связи SAR: Использование параллельной SAR как основной механизм генерации сигнала. При переходе SAR вверх, возникает многосигнал ((sarReversalUp), при переходе SAR вниз, возникает пустой сигнал ((sarReversalDown) [2].
Многопоказательная фильтрация:
Логика исполнения сделки:
Параметры оптимизации: Стратегия предоставляет несколько регулируемых параметров, включая начальные, нарастающие и максимальные значения SAR, а также циклы RSI, длину и смещение RSI и LSMA, что позволяет стратегию гибко адаптироваться к различным рыночным условиям и особенностям разновидности.
Механизм многократной проверкиВ сочетании с несколькими техническими показателями, стратегия позволяет проверить эффективность рыночных поворотных точек в разных измерениях, значительно снижая вероятность ложных сигналов. SAR улавливает изменения в динамике, RSI измеряет перекупы и перепродажи, MACD подтверждает направление тренда, случайный RSI предоставляет дополнительную подтверждение динамики, а LSMA предоставляет оценку отношений цены и движущейся средней линии.
Гибкая настройка параметров: Стратегия предлагает богатые параметры параметров, которые трейдер может оптимизировать в зависимости от различных рыночных условий и особенностей торговых сортов, чтобы получить лучшую производительность.
Автоматический механизм остановки убытков: Сами по себе SAR-индикаторы имеют динамическую стоп-убыточность, которая постоянно меняет позицию по мере развития тренда, что обеспечивает встроенную функцию управления риском для стратегии.
Двухсторонние транзакцииСтратегия способна уловить возможности для увеличения и уменьшения доли, адаптироваться к различным рыночным условиям и максимально использовать рыночные колебания.
Визуальная поддержка: Стратегия включает в себя визуализацию нескольких индикаторов, позволяющих трейдерам интуитивно понять причины, по которым создаются торговые сигналы, что помогает улучшить стратегию и оптимизировать параметры.
Параметр ЧувствительностьВ этой стратегии используется множество регулируемых параметров, различные комбинации параметров оказывают существенное влияние на эффективность стратегии. Неправильная настройка параметров SAR может привести к избытку или недостатку сигнала, а настройка рубежа RSI и случайного RSI также напрямую влияет на качество сигнала. Решение заключается в определении оптимальной комбинации параметров с помощью исторической обратной связи и регулярной повторной оптимизации параметров для адаптации к изменениям рынка.
Риски быстро меняющегося рынкаВ условиях высокой волатильности рынка SAR может часто переворачиваться, что приводит к избыточному количеству торговых сигналов и частым остановкам. Для снижения этого риска можно добавить условия фильтрации сигналов или продлить цикл наблюдения.
Фальшивые перемены на рынке: На рынке сильного тренда может возникнуть ситуация, когда после кратковременного отскока происходит продолжение первоначальной тенденции, что приводит к ошибочному сигналу. Решение заключается в добавлении условий фильтрации силы тренда или подтверждении в сочетании с более длительным циклическим показателем.
Задержка в многоуровневых показателях: Одновременное выполнение условий по нескольким показателям может привести к задержке времени входа и пропуску оптимальной точки входа. Это может быть улучшено путем оптимизации параметров каждого показателя или рассмотрения механизма предварительного подтверждения некоторых показателей.
Не подходит для рынка межзоновых колебаний: Стратегия предназначена в основном для изменения тенденции, в течение длительного периода рынок может плохо работать. Можно рассмотреть возможность добавления функции идентификации рыночной среды и переключиться на другие более подходящие стратегии в течение периода.
Механизм коррекции динамических параметровВ настоящее время в стратегии используются фиксированные параметры, можно ввести механизм адаптивной коррекции параметров, автоматически корректируя параметры SAR, RSI и т. Д. в зависимости от рыночной волатильности. Например, увеличение SAR-прироста на высоковолатильном рынке, уменьшение ложных прорывов; снижение начального значения SAR на низковолатильном рынке, повышение чувствительности.
Повышение узнаваемости рыночной среды: путем добавления ATR (средняя реальная волна), индикатора волатильности или индекса интенсивности тренда, чтобы идентифицировать текущую рыночную обстановку (тенденции, колебания или высокая волатильность) и корректировать параметры стратегии или переключать логику торговли в зависимости от различных условий.
Временная фильтрация: внедрение фильтрации торговых периодов, чтобы избежать периодов низкой ликвидности или высокой волатильности, или настройка параметров оптимизации для конкретных периодов времени.
Оптимизация стратегии сдерживанияВ настоящее время стратегия опирается в основном на реверсивные сигналы, и может включать в себя динамические стоп-механизмы, такие как мобильные стопы на основе ATR или стоп-проценты на основе волатильности, которые блокируют часть прибыли при достижении определенного уровня прибыли.
Складывание и ликвидация складовПодумайте о том, чтобы ввести механизм создания и ликвидации запасов по частям, а не по всему запасу, чтобы снизить риск одной операции и оптимизировать управление капиталом. Например, можно создать 50% позиций при первоначальном сигнале и увеличить позиции до 100% при усилении сигнала, а также при ликвидации запасов также использовать стратегию по частям.
Система весовых показателей: Настройка системы весов для различных показателей, адаптация их влияния в зависимости от их эффективности в различных рыночных условиях, создание более интеллектуальных механизмов генерации сигналов.
Оптимизация машинного обученияВнедрение алгоритмов машинного обучения, модели обучения историческим данным, прогнозирование вероятности успеха различных комбинаций индикаторов в различных рыночных условиях, динамическая корректировка торговых решений.
Мультииндикаторная стратегия SAR-инверсионной стратегии, соединенная с фильтрующей входной моделью, является отличным примером объединения традиционных индикаторов технического анализа в современную количественную торговую систему. Благодаря сочетанию нескольких индикаторов, таких как SAR, RSI, MACD, случайный RSI и LSMA, стратегия обеспечивает высококачественный торговый сигнал в рыночных поворотных точках и эффективно снижает риск ложных сигналов с помощью механизма фильтрации множества условий.
Ключевые преимущества стратегии заключаются в ее многоуровневом механизме верификации и гибкой способности к корректировке параметров, что позволяет ей адаптироваться к различным рыночным условиям. Однако, у стратегии также есть ограничения, такие как высокая чувствительность к параметрам и возможная задержка.
Для количественных трейдеров стратегия предоставляет прочную основу, на основе которой можно настраивать и расширять ее в соответствии с индивидуальным стилем торговли и особенностями целевого рынка. Благодаря постоянному отслеживанию и оптимизации, в сочетании с глубоким пониманием рынка, эта стратегия может быть превращена в эффективную и надежную торговую систему.
/*backtest
start: 2024-03-28 00:00:00
end: 2025-01-18 00:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("SAR Reversal Strategy with Filtered Entries & Opposite Exits", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === Input Parameters ===
start = input(0.02, "SAR Start")
increment = input(0.02, "SAR Increment")
maximum = input(0.2, "SAR Maximum")
rsiPeriod = input(14, "RSI Period")
rsiOverbought = input(70, "RSI Overbought Level")
rsiOversold = input(30, "RSI Oversold Level")
stochLength = input(14, "Stoch RSI Length")
stochOverbought = input(80, "Stoch Overbought Level")
stochOversold = input(20, "Stoch Oversold Level")
lsmaLength = input(4, title="LSMA Length") // LSMA period input
lsmaOffset = input(9, title="LSMA Offset") // LSMA offset input
rsi = ta.rsi(close, rsiPeriod)
// === Stochastic RSI for Additional Confirmation ===
stochRsi = ta.stoch(rsi, rsi, rsi, stochLength)
// === Calculate Indicators ===
psar = ta.sar(start, increment, maximum)
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
// === LSMA Calculation ===
lsma = ta.linreg(close, lsmaLength, 0) // Least Squares Moving Average (LSMA)
// === Shift LSMA by User-Defined Offset ===
lsmaOffsetted = lsma[lsmaOffset]
// === Detect SAR Reversals ===
sarReversalUp = ta.crossover(close, psar) // SAR flips below price → long entry signal
sarReversalDown = ta.crossunder(close, psar) // SAR flips above price → short entry signal
// === Only Allow SAR Reversals If RSI & MACD Are Favorable ===
validLong = sarReversalUp and rsi > rsiOversold and macdLine > signalLine and stochRsi > stochOversold and close > lsmaOffsetted
validShort = sarReversalDown and rsi < rsiOverbought and macdLine < signalLine and stochRsi < stochOverbought and close < lsmaOffsetted
// === Execute Trades Only at SAR Reversals ===
if validLong
strategy.close("Short") // Close any short position
strategy.entry("Long", strategy.long)
if validShort
strategy.close("Long") // Close any long position
strategy.entry("Short", strategy.short)
// === Plot Indicators ===
plot(psar, title="Parabolic SAR", style=plot.style_cross, color=color.orange, linewidth=2)
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, title="RSI", color=color.purple)
plot(macdLine, title="MACD Line", color=color.green)
plot(signalLine, title="Signal Line", color=color.red)
hline(stochOverbought,"stochRsi", color = color.yellow)
hline(stochOversold,"stochRsi", color = color.yellow)
// === Plot LSMA and Offset LSMA for Visualization ===
//...not in valid long/short check.... plot(lsma, title="LSMA", color=color.blue, linewidth=2)
plot(lsmaOffsetted, title="Offset LSMA", color=color.red, linewidth=2)
plot(stochRsi, title="stochRsi",color=color.yellow, linewidth=2)
// ✅ Floating Label for Stoch RSI (Top-Right of Chart)
var label stochLabel = na
label.delete(stochLabel) // Delete previous label to prevent duplicates
// experiment to show label above value at top of chart (only showed last value at end) stochLabel := label.new( bar_index, ta.highest(high, 10), text="Stoch RSI: " + str.tostring(stochRsi, "#.##"), color=color.blue, textcolor=color.white, size=size.small, style=label.style_label_upper_right)