Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 2305

 

Enquanto eu mexo com Fourier, esbocei um exemplo

Topo:

   for(int i=0;i<total;i++)
     {A[i]=cos(2.*M_PI/8.*i)+cos(2.*M_PI/32.*i)+cos(2.*M_PI/16.*i)+4.*xor.Rand_Norm();
     }

Em baixo:

   for(int i=0;i<total;i++)
     {A[i]=cos(2.*M_PI/8.*i)+cos(2.*M_PI/32.*i)+cos(2.*M_PI/16.*i)+4.*xor.Rand_Norm();
     }
   MathCumulativeSum(A);


 
Rorschach:

Enquanto eu mexo com Fourier, esbocei um exemplo

Topo:

Em baixo:

consegues decifrar o que isto significa?

Zero absoluto em DSP, cosines e sines
 

Imagem interessante


 
Maxim Dmitrievsky:

consegues decifrar o que isto significa?

Em DSP, cosseno e peca zero absoluto

Eu nem sei o que comentar. Na figura superior estão os incrementos e seu cúmulo, na figura inferior estão seus espectros. Para os 3 pecados no espectro, você pode ver claramente.

 
Rorschach:

Eu nem sei o que comentar. Na figura superior estão os incrementos e seu cúmulo, e na figura inferior estão seus espectros. Para os 3 pecados do espectro, você pode vê-lo claramente.

Então, como tirar proveito disso?

 
Maxim Dmitrievsky:

Bem, como é que se extrai lucro disso?

No espectro incremental vemos 3 picos, aplicamos um filtro a eles, extrapolamo-los, lucramos

 
Rorschach:

Vemos 3 picos no espectro de incremento, aplicamos-lhes um filtro, extrapolamo-los, lucramos

o período dos picos não mostra do que se deve contar.

há algum em Python?

 
Maxim Dmitrievsky:

o período de pico não mostra o que contar a partir do que

há uma pitão?

Para 1024 amostras da série original o período de 64 será de 1024/64+1=17 pontos, no 1º ponto há um componente constante. As frequências são espelhadas em relação a 1024/2, ou seja, haverá dois picos (no início e no fim)

Eu não tenho. Há apenas uma transformada de Fourier e é isso. Gerou a sequência, fez a transformação, traçou-a.

Eu não testei o código:

#include <rndxor128.mqh>
#include <Math\Alglib\fasttransforms.mqh>
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1
#property indicator_label1  "Label1"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1

int OnInit()
  {
   SetIndexBuffer(0,Label1Buffer,INDICATOR_DATA);
   ArraySetAsSeries(Label1Buffer,1);
   PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0.);
   EventSetMillisecondTimer(50);
   return(INIT_SUCCEEDED);
  }

void OnTimer()
  {RNDXor128 xor;
   xor.SRand(3);
   CFastFourierTransform fft;
   ArrayInitialize(Label1Buffer,0.);
   double A[];
   int total=1024;
   ArrayResize(A,total);
   ArraySetAsSeries(A,1);
   ArrayInitialize(A,0.);
   for(int i=0;i<total;i++)
     {A[i]=cos(2.*M_PI/8.*i)+cos(2.*M_PI/32.*i)+cos(2.*M_PI/16.*i)+4.*xor.Rand_Norm();
     }
   //MathCumulativeSum(A);
   
   complex spec[];
   fft.FFTR1D(A,total,spec);
   for(int i=0;i<total;i++)
     {Label1Buffer[i]=sqrt(spec[i].re*spec[i].re+spec[i].im*spec[i].im)*2./total;
     }

   ChartRedraw();
   EventKillTimer();
  }
 
Rorschach:

Imagem interessante

quais são as aulas desta foto?

 
mytarmailS:

quais são as aulas desta foto?

Na coluna da esquerda, duas classes (azul e vermelho)