A Transformação Estocástica de Fisher Interrompe Temporariamente a Reversão da Estratégia Quantitativa do Indicador STOCH


Data de criação: 2024-01-02 11:14:12 última modificação: 2024-01-02 11:14:12
cópia: 0 Cliques: 656
1
focar em
1621
Seguidores

A Transformação Estocástica de Fisher Interrompe Temporariamente a Reversão da Estratégia Quantitativa do Indicador STOCH

Visão geral

A ideia central desta estratégia é tomar decisões de compra e venda em combinação com a transformação aleatória de Fisher e a reversão temporária do indicador STOCH. A estratégia é adequada para operações de curto e médio prazo, podendo obter um bom retorno em condições estáveis.

Princípio da estratégia

A estratégia calcula o índice STOCH padrão e depois faz a conversão de Fisher para a INVLine. Quando a INVLine atravessa a linha de limiar inferior dl, gera um sinal de compra; quando a INVLine atravessa a linha de limiar superior ul, gera um sinal de venda. A estratégia também configura um mecanismo de tracking stop loss para bloquear lucros e reduzir perdas.

A lógica central da estratégia é, especificamente:

  1. Calcular o índice STOCH: Utilize a fórmula padrão para calcular o valor STOCH rápido do stock
  2. Transformação de Fisher: Transformação de Fisher para o valor de STOCH, obtendo INVLine
  3. Geração de sinais de transação: compra na linha INVLine ao atravessar a linha dl e venda na linha UL
  4. Parar o rastreamento: ativar o mecanismo de paragem temporária do rastreamento para parar o rastreamento em tempo hábil

Análise de vantagens

As principais vantagens desta estratégia são:

  1. A transformação de Fisher aumenta a sensibilidade do STOCH, permitindo detectar oportunidades de reversão de tendências mais cedo.
  2. O mecanismo de suspensão de rastreamento é eficaz para controlar riscos e bloquear lucros
  3. Adequado para operações de curto e médio prazo, especialmente para transações de quantificação rápida que são mais populares nos últimos tempos.
  4. Melhor desempenho em condições de estabilidade, receita estável

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. Indicadores STOCH são propensos a produzir falsos sinais que podem levar a negociações desnecessárias
  2. A transformação de Fisher também amplifica o ruído do índice STOCH, trazendo mais falsos sinais
  3. A tendência é de que os investidores se afastem facilmente em situações de turbulência e não consigam manter os lucros.
  4. O Alpha requer um período de posse mais curto e não é adequado para posses de longa duração.

Para reduzir esses riscos, pode-se considerar otimizar os seguintes aspectos:

  1. Ajustar os parâmetros de STOCH, suavizar a curva, reduzir o ruído
  2. Optimizar a localização da linha de vale-prazo para reduzir a probabilidade de transações erradas
  3. Aumentar as condições de filtragem para evitar transações em situações de turbulência
  4. Ajustar a duração da posição para coincidir com o ciclo operacional

Direção de otimização

A estratégia pode ser melhorada em várias direções:

  1. Parâmetros de otimização da transformação de Fisher para suavizar a curva INVLine
  2. Optimizar o período de duração do indicador STOCH, procurando a melhor combinação de parâmetros
  3. Parâmetros para otimizar a linha de perda para reduzir a probabilidade de transações erradas
  4. Aumentar a confirmação de quantidade e evitar perdas de rastreamento desnecessárias
  5. Aumentar a filtragem intradiária e reduzir os falsos sinais de mercado
  6. Combinação de indicadores de tendência para evitar negociações adversas

Resumir

Esta estratégia combina a variação aleatória de Fisher e o indicador STOCH, permitindo uma estratégia de quantificação de linhas curtas simples e prática. Sua vantagem é a alta frequência de operação, adequada para a quantificação de alta frequência de negociação mais popular recentemente.

Código-fonte da estratégia
/*backtest
start: 2022-12-26 00:00:00
end: 2024-01-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("IFT Stochastic + Trailing Stop", overlay=false, pyramiding = 0, calc_on_order_fills = false, commission_type =  strategy.commission.percent, commission_value = 0.0454, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)

//INPUTS
stochlength=input(19, "STOCH Length")
wmalength=input(4, title="Smooth")
ul = input(0.64,step=0.01, title="UP line")
dl = input(-0.62,step=0.01, title="DOWN line")
uts = input(true, title="Use trailing stop")
tsi = input(title="trailing stop actiation pips",defval=245)                                                                       
tso = input(title="trailing stop offset pips",defval=20)

//CALCULATIONS
v1=0.1*(stoch(close, high, low, stochlength)-50)
v2=wma(v1, wmalength)
INVLine=(exp(2*v2)-1)/(exp(2*v2)+1)

//CONDITIONS
sell = crossunder(INVLine,ul)? 1 : 0
buy = crossover(INVLine,dl)? 1 : 0

//PLOTS
plot(INVLine, color=aqua, linewidth=1, title="STOCH")
hline(ul, color=red)
hline(dl, color=green)
bgcolor(sell==1? red : na, transp=30, title = "sell signal")
bgcolor(buy==1? lime : na, transp=30, title = "buy signal")
plotchar(buy==1, title="Buy Signal", char='B', location=location.bottom, color=white, transp=0, offset=0)
plotchar(sell==1, title="Sell Signal", char='S', location=location.top, color=white, transp=0, offset=0)

//STRATEGY
strategy.entry("BUY", strategy.long, when = buy==1)
strategy.entry("SELL", strategy.short, when = sell==1)

if  (uts)
    strategy.entry("BUY", strategy.long, when = buy)
    strategy.entry("SELL", strategy.short, when = sell)
    strategy.exit("Close BUY with TS","BUY", trail_points = tsi, trail_offset = tso)
    strategy.exit("Close SELL with TS","SELL", trail_points = tsi, trail_offset = tso)