A Estratégia de Oscilação Aleatória integra vários indicadores técnicos, incluindo Ichimoku Kinko Hyo, MACD e Hull Moving Average, para formar um sistema sistemático de decisão de negociação.
Em primeiro lugar, o Tenkan-sen e Kijun-sen de Ichimoku Kinko Hyo são adotados. O Tenkan-Sen é calculado como a média do mais alto e mais baixo máximo nos últimos 9 períodos.
Em segundo lugar, o indicador MACD é incorporado como um importante indicador de impulso de tendência. Ele mostra a relação entre duas EMAs de preços.
Em terceiro lugar, a média móvel de Hull é introduzida para melhorar a emissão atrasada de médias móveis e aumentar a sensibilidade de captura de reversões de preços.
Por último, a estratégia combina todos os indicadores acima para formar um sistema de negociação robusto.
A diversificação através de múltiplos indicadores reduz a falha de um único ponto.
A integração proporciona um poder de decisão mais forte através de um modelo holístico.
Diminuição dos falsos sinais, uma vez que cada sinal é verificado por outros.
Melhora da eficiência, agindo apenas em sinais de alta convicção.
Parâmetros personalizáveis para adaptar a estratégia aos mercados em evolução.
Retardo reduzido e resposta mais rápida da média móvel do casco.
Maior risco em mercados variados e agitados com aumento de falsos sinais.
Ineficaz se os parâmetros do indicador não forem adequadamente otimizados.
Potencialmente perde movimentos de tendência por se concentrar em reversões.
O Hull MA é relativamente novo e não comprovado a longo prazo.
O comércio infrequente pode perder algumas oportunidades.
Adicionar mais indicadores como as Bandas de Bollinger poderia otimizar ainda mais o sistema.
Ajuste de parâmetros para encontrar a combinação ideal para diferentes ativos e prazos.
Introduzir paradas dinâmicas para controlar perdas de negociação única.
Incorporar filtros de tendência para evitar perder corridas de tendência.
Otimizar o dimensionamento das posições ajustando a frequência e o tamanho com base nas condições do mercado.
A Estratégia de Oscilação Aleatória combina várias técnicas de análise técnica para capturar oportunidades em mercados de faixa. Ela oferece as vantagens da integração de indicadores, redução de sinais falsos e melhoria da eficiência. Mas também carrega riscos inerentes que exigem otimização e adaptação adicionais.
/*backtest start: 2022-10-30 00:00:00 end: 2023-11-05 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Ichimoku Kinko Hyo + HULL-MA_X + MacD", shorttitle="@m", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1000, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0) keh=input(title="Double HullMA",defval=12, minval=1) n2ma=2*wma(close,round(keh/2)) nma=wma(close,keh) diff=n2ma-nma sqn=round(sqrt(keh)) n2ma1=2*wma(close[1],round(keh/2)) nma1=wma(close[1],keh) diff1=n2ma1-nma1 sqn1=round(sqrt(keh)) n1=wma(diff,sqn) n2=wma(diff1,sqn) b=n1>n2?lime:red c=n1>n2?green:red d=n1>n2?red:green TenkanSenPeriods = input(9, minval=1, title="Tenkan Sen Periods") KijunSenPeriods = input(24, minval=1, title="Kijun Sen Periods") SenkouSpanBPeriods = input(51, minval=1, title="Senkou Span B Periods") displacement = input(24, minval=1, title="Displacement") donchian(len) => avg(lowest(len), highest(len)) TenkanSen = donchian(TenkanSenPeriods) KijunSen = donchian(KijunSenPeriods) SenkouSpanA = avg(TenkanSen, KijunSen) SenkouSpanB = donchian(SenkouSpanBPeriods) LS=close, offset = -displacement MACD_Length = input(9) MACD_fastLength = input(12) MACD_slowLength = input(24) MACD = ema(close, MACD_fastLength) - ema(close, MACD_slowLength) aMACD = ema(MACD, MACD_Length) a1=plot(n1,color=c) a2=plot(n2,color=c) plot(cross(n1, n2) ? n1 : na, style = circles, color=b, linewidth = 4) plot(cross(n1, n2) ? n1 : na, style = line, color=d, linewidth = 3) plot(TenkanSen, color=blue, title="Tenkan Sen", linewidth = 2) plot(KijunSen, color=maroon, title="Kijun Sen", linewidth = 3) plot(close, offset = -displacement, color=orange, title="Chikou Span", linewidth = 2) p1=plot (SenkouSpanA, offset = displacement, color=green, title="Senkou Span A", linewidth = 2) p2=plot (SenkouSpanB, offset = displacement, color=red, title="Senkou Span B", linewidth = 3) fill(p1, p2, color = SenkouSpanA > SenkouSpanB ? green : red) closelong = n1<n2 and close<n2 and (MACD<aMACD or TenkanSen<KijunSen or close<KijunSen) if (closelong) strategy.close("Long") closeshort = n1>n2 and close>n2 and (MACD>aMACD or TenkanSen>KijunSen or close>KijunSen) if (closeshort) strategy.close("Short") longCondition = n1>n2 and close>n2 and MACD>aMACD and (TenkanSen>KijunSen or close>KijunSen) if (longCondition) strategy.entry("Long",strategy.long) shortCondition = n1<n2 and close<n2 and MACD<aMACD and (TenkanSen<KijunSen or close<KijunSen) if (shortCondition) strategy.entry("Short",strategy.short)