Estratégia de Backtesting do Indicador de Transformada de Fisher


Data de criação: 2023-12-04 13:43:05 última modificação: 2023-12-04 13:43:05
cópia: 2 Cliques: 937
1
focar em
1619
Seguidores

Estratégia de Backtesting do Indicador de Transformada de Fisher

Visão geral

A estratégia de retomada de indicadores de Fisher transforms, através da computação da transformação de Fisher no preço, indentifica os pontos de reversão de preços e, em conformidade, gera um sinal de negociação. A estratégia usa a fórmula de transformação de Fisher para processar o preço, removendo as características não-gaussísticas do preço, resultando em indicadores padronizados de distribuição gaussística aproximada. A estratégia julga a reversão de preços com base nos pontos de inflexão da curva de transformação de Fisher, gerando sinais de compra e venda.

Princípio da estratégia

O núcleo da estratégia é o uso da fórmula de conversão de Fisher para tratar o preço, removendo os traços não-Gosts da distribuição natural do preço. A fórmula de conversão de Fisher é a seguinte:

y = 0.5 * ln((1+x)/(1-x))

Aqui, x é o preço tratado, encontrando o máximo e o mínimo nos períodos mais recentes de Length através das funções highest e lowest, e depois padronizado, com a seguinte fórmula:

x = (preço mínimo) / (preço máximo) - 0,5

O preço assim tratado corresponde aproximadamente à distribuição de Gauss. Em seguida, é adicionado à fórmula de transformação de Fisher, obtendo-se a curva de transformação de Fisher. O ponto de inflexão da curva de transformação de Fisher é o sinal de inversão de preço.

Quando a curva de transformação de Fisher muda de positivo para negativo, gera um sinal de venda; quando muda de negativo para positivo, gera um sinal de compra.

Análise de vantagens

  1. O indicador de transformação de Fisher remove a distribuição não-Gaussian dos preços, tornando-os mais normativos e reduzindo os falsos sinais

  2. Capturar os pontos de inflexão e evitar os altos e baixos

  3. Flexibilidade de ajuste de parâmetros, sensitividade de reversão ajustável

  4. Orientação personalizável para vários cenários de mercado

  5. A lógica da estratégia é simples, fácil de entender e fácil de implementar.

Análise de Riscos

  1. Parâmetros mal definidos podem perder o ponto de reversão do preço ou gerar falsos sinais

  2. Os discos rígidos são vulneráveis a pontos de deslizamento, podendo não executar os sinais perfeitamente.

  3. A curva de Fisher tem dificuldade em determinar o ponto de inflexão quando os preços flutuam

  4. A operação é muito difícil quando o disco rígido é reversível e precisa de confirmação.

Solução:

  1. Ajustar o tamanho do parâmetro de comprimento e otimizar o parâmetro

  2. Condições de entrada adequadamente relaxadas para garantir a execução do sinal

  3. Combinação com outros indicadores para filtrar falsos sinais

  4. A seguir, a estratégia é seguir rigorosamente as regras e controlar os riscos.

Direção de otimização

  1. Optimizar o tamanho do parâmetro de comprimento para encontrar a melhor combinação de parâmetros

  2. Aumentar as condições de filtragem para evitar falsos sinais, como a combinação de linhas médias, indicadores de taxa de flutuação, etc.

  3. Aumentar os mecanismos de suspensão de prejuízos e controlar as perdas individuais

  4. Reincidência no mecanismo de readmissão para acompanhar a tendência

Resumir

A estratégia de retorno do indicador de variação de Fisher é uma estratégia de valor que é fácil de implementar, eliminando os traços não-Gauss do preço e encontrando o ponto de reversão do preço. A vantagem da estratégia é que o ajuste de parâmetros é flexível e fácil de capturar reversões; a desvantagem é que a operação em campo é difícil e precisa seguir rigorosamente as regras de entrada. A estratégia pode ser otimizada por vários meios no futuro, tornando-a mais adequada para aplicações em campo.

Código-fonte da estratégia
/*backtest
start: 2023-11-26 00:00:00
end: 2023-12-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v2.0 22/12/2016
// 	Market prices do not have a Gaussian probability density function
// 	as many traders think. Their probability curve is not bell-shaped.
// 	But trader can create a nearly Gaussian PDF for prices by normalizing
// 	them or creating a normalized indicator such as the relative strength
// 	index and applying the Fisher transform. Such a transformed output 
// 	creates the peak swings as relatively rare events.
// 	Fisher transform formula is: y = 0.5 * ln ((1+x)/(1-x))
// 	The sharp turning points of these peak swings clearly and unambiguously
// 	identify price reversals in a timely manner. 
//
//  For signal used zero. 
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Fisher Transform Indicator by Ehlers Backtest", shorttitle="Fisher Transform Indicator by Ehlers")
Length = input(10, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=blue)
xHL2 = hl2
xMaxH = highest(xHL2, Length)
xMinL = lowest(xHL2,Length)
nValue1 = 0.33 * 2 * ((xHL2 - xMinL) / (xMaxH - xMinL) - 0.5) + 0.67 * nz(nValue1[1])
nValue2 =   iff(nValue1 > .99,  .999,
	         iff(nValue1 < -.99, -.999, nValue1))
nFish = 0.5 * log((1 + nValue2) / (1 - nValue2)) + 0.5 * nz(nFish[1])
pos = iff(nFish > 0, 1,
	   iff(nFish < 0, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nFish, color=green, title="Fisher")
plot(nz(nFish[1]), color=red, title="Trigger")