O recurso está a ser carregado... Carregamento...

Sistema de negociação de pressão de impulso duplo (estratégia de combinação de indicadores SMI+UBS)

Autora:ChaoZhang, Data: 2024-11-28 15:52:02
Tags:SMIUBSSMASL

img

Resumo

Esta estratégia é um sistema de negociação de curto prazo que combina o Squeeze Momentum Indicator (SMI) e o indicador Ultimate Buy/Sell (UBS). A estratégia capta principalmente oportunidades de venda a descoberto monitorando mudanças de momento e sinais de cruzamento de média móvel.

Princípios de estratégia

A lógica central baseia-se na combinação de dois indicadores principais:

  1. Squeeze Momentum Indicator (SMI): gera sinais de impulso calculando a relação entre preços de fechamento e preços altos/baixos, suavizados com médias móveis.
  2. Indicador Ultimate Buy/Sell (UBS): Determina o momento de entrada com base em cruzamento de preços com médias móveis.
  3. O sistema entra automaticamente em posições de curto prazo após a confirmação do sinal, estabelecendo uma meta de lucro de 0,4% e um nível de stop-loss de 2,5% para um controlo eficaz do risco.

Vantagens da estratégia

  1. Confirmação de sinal duplo: melhora a confiabilidade do sinal através da ressonância de dois indicadores independentes.
  2. Gerenciamento abrangente do risco: condições claras de obtenção de lucros e de stop-loss controlam efetivamente o risco por transação.
  3. Parâmetros ajustáveis: Os parâmetros-chave, como o comprimento do SMI, o período de suavização e o período do UBS, podem ser otimizados para diferentes condições de mercado.
  4. Alta automação: uma lógica de estratégia clara facilita a implementação de negociações automatizadas.

Riscos estratégicos

  1. Risco de Falsa Breakout: podem ocorrer sinais falsos frequentes em mercados variados.
  2. Dependência da tendência: a estratégia tem melhor desempenho em mercados de tendência, mas pode enfrentar freqüentes paradas em mercados laterais.
  3. Sensibilidade dos parâmetros: diferentes definições de parâmetros podem provocar variações significativas no desempenho.
  4. Efeito de deslizamento: os preços de execução reais podem desviar-se significativamente dos preços de sinal durante a alta volatilidade.

Orientações de otimização

  1. Adicionar filtros de ambiente de mercado: Incorporar indicadores de volatilidade ou força da tendência para ajustar os parâmetros da estratégia em diferentes condições de mercado.
  2. Otimizar o mecanismo de stop-loss: considerar a implementação de paradas dinâmicas, como paradas de trailing ou paradas baseadas em ATR.
  3. Adicionar filtros de tempo: Evite períodos de alta volatilidade e grandes horários de lançamento de notícias.
  4. Implementar o dimensionamento das posições: ajustar dinamicamente o tamanho das posições com base na força do sinal e na volatilidade do mercado.

Resumo

A estratégia constrói um sistema de venda curta relativamente completo, combinando o impulso de compressão e os indicadores técnicos finais de compra / venda. Seus pontos fortes estão na alta confiabilidade do sinal e no controle claro do risco, embora mostre forte dependência das condições do mercado. Através de melhorias na filtragem do ambiente de mercado e otimização de stop-loss, a estabilidade e lucratividade da estratégia podem ser ainda melhoradas.


/*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


Relacionados

Mais.