A SuperTrend Enhanced Pivot Reversal é uma abordagem de negociação única que combina a precisão dos pontos de reversão do pivô e o poder de seguir a tendência do indicador SuperTrend.
Ao contrário das estratégias tradicionais de reversão de pivô, esta abordagem utiliza o indicador SuperTrend como um filtro. Isso significa que só leva negócios que se alinham com a tendência geral, conforme determinado pelo indicador SuperTrend. Isso pode ajudar a reduzir sinais falsos e melhorar a lucratividade geral da estratégia.
A Estratégia de Reversão de Pivot Aprimorada é particularmente adequada para o mercado de criptomoedas devido à alta volatilidade. Isso permite mudanças rápidas de preço em curtos períodos, tornando possível lucrar rapidamente.
A estratégia funciona identificando pontos de reversão de pivô, que são pontos no gráfico de preços em que o preço provavelmente se inverterá. Estes pontos são identificados usando uma combinação das funções ta.pivothigh e ta.pivotlow para localizar os pontos de preço mais altos e mais baixos em um determinado período.
Uma vez que um ponto de reversão do pivô é identificado, a estratégia verifica a direção do indicador SuperTrend. Se a SuperTrend for positiva (indicando uma tendência de alta), a estratégia só fará negociações longas. Se a SuperTrend for negativa (indicando uma tendência de queda), só fará negociações curtas.
A estratégia também incorpora um nível de stop loss, definido como uma percentagem do preço de entrada, para limitar as perdas potenciais se o preço se mover contra a negociação.
A direcção da negociação pode ser definida em
A principal vantagem desta estratégia é a combinação da precisão das estratégias de inversão de pivô com a capacidade de filtragem de tendências do indicador SuperTrend.
A abordagem de reversão de pivô identifica os principais níveis de suporte e resistência e captura breakouts rápidos.
Outra vantagem é a adaptabilidade da estratégia. Os parâmetros podem ser ajustados para atender a diferentes condições de mercado. Por exemplo, o período ATR pode ser ajustado para variação de volatilidade, stop loss ajustado para controlar o risco e direção comercial limitada a longo ou curto apenas.
A adição do filtro SuperTrend também melhora o desempenho nos mercados de tendência.
O principal risco é que os pontos de reversão do pivô possam ter falhas, onde o preço reverte rapidamente depois de quebrar níveis-chave.
Outro risco é o fracasso da reversão da tendência. Às vezes, os preços continuam a tendência depois de quebrar os pontos pivô, em vez de reverter.
O uso de SuperTrend como filtro tem prós e contras. Sinais incorretos de SuperTrend podem levar a reversões válidas perdidas. Os parâmetros podem precisar de ajuste para diferentes condições de mercado.
Em geral, os níveis de stop loss adequados, o dimensionamento da posição e o ajuste dinâmico dos parâmetros podem controlar efetivamente os riscos.
A estratégia pode ser melhorada:
Adicionando análise de vários prazos para evitar problemas.
Incorporar indicadores de volume para confirmar as rupturas.
Otimizar mecanismos de stop loss como trailing stops e aumento de post-profit stops.
Adicionar aprendizagem de máquina para capacidade adaptativa, como ajuste automático de parâmetros e paradas dinâmicas.
Implementação de negociações intertemporais com prazos separados de entrada e de parada/alvo.
Teste de indicadores de filtros alternativos para melhorar potencialmente o desempenho em relação ao SuperTrend.
Optimização da carteira através da combinação com estratégias de baixa correlação para melhorar a estabilidade.
Estas melhorias podem melhorar significativamente o desempenho, tornando a estratégia mais robusta em diversos ambientes de mercado e produzindo retornos superiores.
A SuperTrend Enhanced Pivot Reversal Strategy é uma abordagem altamente eficaz. Combina a precisão dos pontos de pivô e o forte seguimento da tendência da SuperTrend para filtrar o ruído e aumentar a probabilidade de sucesso. Os parâmetros adaptáveis se adaptam a várias condições de mercado. Os riscos existem, mas podem ser controlados através de dimensionamento e paradas de posição apropriadas. Outras otimizações podem melhorar a estabilidade e os retornos.
/*backtest start: 2022-10-18 00:00:00 end: 2023-10-24 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © PresentTrading //@version=5 strategy("SuperTrend Enhanced Pivot Reversal - Strategy [PresentTrading]", overlay=true, precision=3, default_qty_type=strategy.cash, commission_value= 0.1, commission_type=strategy.commission.percent, slippage= 1, currency=currency.USD, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, initial_capital= 10000) // Pivot Reversal parameters leftBars = input(6) rightBars = input(3) swh = ta.pivothigh(leftBars, rightBars) swl = ta.pivotlow(leftBars, rightBars) // SuperTrend parameters atrPeriod = input(5, "ATR Length") factor = input.float(2.618, "Factor", step = 0.01) [superTrend, direction] = ta.supertrend(factor, atrPeriod) // Plot the SuperTrend plot(superTrend, title="SuperTrend", color=color.blue) // Trade Direction parameter tradeDirection = input.string(title="Trade Direction", defval="Both", options=["Long", "Short", "Both"]) // Stop Loss Level (in %) stopLossLevel = input(20, title="Stop Loss Level (%)") // Convert the stop loss level to a price difference stopLossPrice = stopLossLevel / 100 // Long entry swh_cond = not na(swh) hprice = 0.0 hprice := swh_cond ? swh : hprice[1] le = false le := swh_cond ? true : (le[1] and high > hprice ? false : le[1]) if (le and direction > 0 and (tradeDirection == "Long" or tradeDirection == "Both")) strategy.entry("PivRevLE", strategy.long, comment="PivRevLE", stop=hprice + syminfo.mintick) strategy.exit("Exit Long", "PivRevLE", stop = hprice * (1 - stopLossPrice)) // Short entry swl_cond = not na(swl) lprice = 0.0 lprice := swl_cond ? swl : lprice[1] se = false se := swl_cond ? true : (se[1] and low < lprice ? false : se[1]) if (se and direction < 0 and (tradeDirection == "Short" or tradeDirection == "Both")) strategy.entry("PivRevSE", strategy.short, comment="PivRevSE", stop=lprice - syminfo.mintick) strategy.exit("Exit Short", "PivRevSE", stop = lprice * (1 + stopLossPrice)) // Closing positions when the tradeDirection is one-sided or when SuperTrend direction changes if ((tradeDirection == "Long" and se and direction < 0) or (tradeDirection == "Long" and direction < 0)) strategy.close("PivRevLE") if ((tradeDirection == "Short" and le and direction > 0) or (tradeDirection == "Short" and direction > 0)) strategy.close("PivRevSE") // Plot pivot highs and lows plotshape(swh_cond, title="Pivot Highs", location=location.belowbar, color=color.green, style=shape.triangleup) plotshape(swl_cond, title="Pivot Lows", location=location.abovebar, color=color.red, style=shape.triangledown) // Closing positions when the tradeDirection is one-sided if (tradeDirection == "Long" and se and direction < 0) strategy.close("PivRevLE") if (tradeDirection == "Short" and le and direction > 0) strategy.close("PivRevSE")