В процессе загрузки ресурсов... загрузка...

Система двойного сжатия импульса торговли (Стратегия комбинации индикаторов SMI+UBS)

Автор:Чао Чжан, Дата: 2024-11-28 15:52:02
Тэги:SMIUBSSMASL

img

Обзор

Эта стратегия представляет собой краткосрочную торговую систему, которая сочетает в себе индикатор Squeeze Momentum Indicator (SMI) и индикатор Ultimate Buy/Sell (UBS). Стратегия в первую очередь отслеживает возможности короткой продажи путем мониторинга изменений импульса и движущихся средних перекрестных сигналов. Система включает в себя процентный механизм стоп-лосса для защиты капитала при обеспечении стабильной доходности.

Принципы стратегии

Основная логика основана на сочетании двух основных показателей:

  1. Squeeze Momentum Indicator (SMI): генерирует сигналы импульса, рассчитывая взаимосвязь между ценой закрытия и высокой/низкой ценой, сглаженную скользящими средними.
  2. Ультимативный индикатор покупки/продажи (UBS): определяет время входа на основе ценовых перекресток с скользящими средними.
  3. Система автоматически вводит короткие позиции по подтверждению сигнала, устанавливая целевую прибыль 0,4% и уровень стоп-лосса 2,5% для эффективного контроля риска.

Преимущества стратегии

  1. Подтверждение двойного сигнала: повышает надежность сигнала посредством резонанса двух независимых индикаторов.
  2. Всеобъемлющее управление рисками: четкие условия получения прибыли и стоп-лосса эффективно контролируют риск по сделке.
  3. Регулируемые параметры: ключевые параметры, такие как длина SMI, период сглаживания и период UBS, могут быть оптимизированы для различных рыночных условий.
  4. Высокая автоматизация: четкая логика стратегии облегчает автоматизированную реализацию торговли.

Стратегические риски

  1. Риск ложного прорыва: на различных рынках могут возникать частые ложные сигналы.
  2. Зависимость от тренда: стратегия лучше работает на трендовых рынках, но может часто останавливаться на боковых рынках.
  3. Чувствительность параметров: различные параметры могут привести к значительным изменениям производительности.
  4. Влияние скольжения: фактические цены исполнения могут значительно отклоняться от цен сигналов во время высокой волатильности.

Руководство по оптимизации

  1. Добавить фильтры рыночной среды: включить индикаторы волатильности или силы тренда для корректировки параметров стратегии в различных рыночных условиях.
  2. Оптимизировать механизм остановки потерь: рассмотреть возможность внедрения динамических остановок, таких как остановки отставания или остановки на основе ATR.
  3. Добавьте временные фильтры: избегайте периодов высокой волатильности и основных сроков выпуска новостей.
  4. Внедрение размеров позиций: динамическое регулирование размеров позиций на основе силы сигнала и волатильности рынка.

Резюме

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


/*backtest
start: 2024-10-28 00:00:00
end: 2024-11-27 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © algostudio
// Code Generated using PineGPT - www.marketcalls.in

//@version=5
strategy("Squeeze Momentum and Ultimate Buy/Sell with Stop Loss", overlay=true, process_orders_on_close = false)

// Input settings
smiLength = input.int(20, title="SMI Length")
smiSmoothing = input.int(5, title="SMI Smoothing")
ultBuyLength = input.int(14, title="Ultimate Buy/Sell Length")
stopLossPerc = input.float(2.5, title="Stop Loss Percentage", step=0.1) / 100

// Define Squeeze Momentum logic
smi = ta.sma(close - ta.lowest(low, smiLength), smiSmoothing) - ta.sma(ta.highest(high, smiLength) - close, smiSmoothing)
squeezeMomentum = ta.sma(smi, smiSmoothing)
smiUp = squeezeMomentum > squeezeMomentum[1]
smiDown = squeezeMomentum < squeezeMomentum[1]

// Define Ultimate Buy/Sell Indicator logic (you can customize the conditions)
ultimateBuy = ta.crossover(close, ta.sma(close, ultBuyLength))
ultimateSell = ta.crossunder(close, ta.sma(close, ultBuyLength))


// Trading logic: Short entry (Squeeze Momentum from green to red and Ultimate Sell signal)
shortCondition = smiDown and ultimateSell
if (shortCondition)
    strategy.entry("Short", strategy.short)

//Set short target (exit when price decreases by 0.2%)
shortTarget = strategy.position_avg_price * 0.996

// Set stop loss for short (5% above the entry price)
shortStop = strategy.position_avg_price * (1 + stopLossPerc)

// Exit logic for short
if (strategy.position_size < 0)
    strategy.exit("Exit Short", "Short", limit=shortTarget, stop=shortStop)

// Plot the Squeeze Momentum for reference
plot(squeezeMomentum, color=color.blue, linewidth=2, title="Squeeze Momentum")

// Optional: Plot signals on the chart
plotshape(series=ultimateBuy, location=location.belowbar, color=color.green, style=shape.labelup, title="Ultimate Buy Signal")
plotshape(series=ultimateSell, location=location.abovebar, color=color.red, style=shape.labeldown, title="Ultimate Sell Signal")

// For more tutorials on Tradingview Pinescript visit https://www.marketcalls.in/category/tradingview


Связанные

Больше