Ayuda con Fourier - página 8

 
ANG3110 писал (а):
klot escribió (a):
ANG3110 escribió (a):
Con hmax =2; habrá un simple MA, en un periodo determinado, no está muy claro, ¿por qué molestarse con una FFT completa entonces?

No, yo también lo he notado, el FFT completo es mucho más estable (menos redibujado).
En general, creo que hay que filtrar
if(hmax>0) for(i=hmax;i<N;i++) data[i]=0.0;
para hacer algún filtro inteligente. Necesitamos que deje selectivamente los armónicos necesarios y elimine los innecesarios. Entonces puede tener algo de sentido y estabilidad.

Además, NeuroshellDayTrader utiliza cinco o seis filtros diferentes en FFTadon, lo siento no tengo fórmulas, podría juguetear con ellos.
Y si se limitan las frecuencias no sólo en la parte superior sino también en la inferior, se puede seleccionar una determinada banda de oscilaciones. El indicador se ve bien, recuerda a un estocástico.
El valor de la Fourier es que, si está bien afinada, muestra bien los momentos en los que son probables los puntos de inflexión. Y el hecho de que la trayectoria de la amplitud no coincida mucho no es tan malo, al contrario es bueno, se puede tener en cuenta la velocidad de cambio de fase.

En realidad, no me importa. :) La fase es una fase, también se puede calcular fácilmente.
Después de la FFT directa en la matriz de datos, en la celda par se almacena la parte real en la celda impar, en la celda impar se almacena la parte imaginaria,
la fase será:
MathArctan(data[2*i+1]/data[2*i]);
la amplitud será
MathSqrt(data[2*i+1]*data[2*i+1]+data[2*i]*data[2*i]);
de nuevo, seleccione el armónico deseado y observe :)
puedes sumar las fases y amplitudes en una banda de frecuencia determinada y sacar algunas conclusiones :)
 
klot писал (а):

No me importa, en realidad. :) La fase es una fase, también es fácil de calcular.
Después de la FFT directa en la matriz de datos en la celda par se almacena la parte real en la celda impar la imaginaria,
la fase será:
MathArctan(data[2*i+1]/data[2*i]);
la amplitud será
MathSqrt(data[2*i+1]*data[2*i+1]+data[2*i]*data[2*i]);
de nuevo, elige el armónico deseado y observa :)
puedes sumar las fases y amplitudes en una banda de frecuencia determinada y sacar algunas conclusiones :)

Sí, y las amplitudes de los armónicos se pueden incluso trazar contra el tiempo:



Y este es un espectro armónico de 48 horas en pasos de 1 hora, trazado para la hora actual.

 
ANG3110 писал (а):
klot escribió (a):

No me importa, en realidad. :) La fase es una fase, también se puede calcular fácilmente.
Después de la FFT directa en la matriz de datos en la celda par se almacena la parte real en la celda impar la imaginaria,
la fase será:
MathArctan(data[2*i+1]/data[2*i]);
la amplitud será
MathSqrt(data[2*i+1]*data[2*i+1]+data[2*i]*data[2*i]);
de nuevo, elige el armónico deseado y observa :)
puedes sumar las fases y amplitudes en una banda de frecuencia determinada y sacar algunas conclusiones :)
Y también tengo un bonito dibujo.
En la actualidad, creo que este sistema más una red neuronal, el más prometedor para forex. Bueno, por supuesto, estrictamente en mi opinión. :)
 

De hecho, tengo la idea de aplicar el método de Fourier.

El método de Fourier da una aproximación suficientemente buena de la función en el intervalo de tiempo excluyendo alguna vecindad de los extremos (intervalo). Sería bueno que Fourier aproximara el final que corresponde al tiempo actual (t=0) así como la mitad del intervalo. También estaría bien construir una serie de Fourier para poder predecir el futuro. Para ello podemos aplicar la siguiente idea:

Construyamos una serie de Fourier en el intervalo [T,-T] (-T - tiempo que aún no ha ocurrido, t=0 - tiempo presente)
Sin embargo, no tenemos ningún dato en el intervalo [0,-T]. Por lo tanto, en la iteración cero tomaremos close[t]=close[0] (para t<0) y utilizaremos estos datos para construir una serie de Fourier f en el intervalo [T,-T]. Y luego iteramos secuencialmente como sigue:

1) Construir en el intervalo [eps,-T] una aproximación de la serie de Fourier f por una función potencia g (eps>0)
2) Construir una serie de Fourier para el intervalo [T,-T] por f (en T>t>eps) + g (en eps>t>-T)

Es decir, aproximaremos consistentemente la función resultante primero por una serie de Fourier y luego por una función potencia. Se supone que el desajuste {función de precios pronosticados transformados (t<0) + función de precios históricos (t>0)} con {serie de Fourier de dicha función} será mínimo (es decir, tenderá a cero con el aumento del número de iteraciones). Creo que es una condición necesaria para que el final [eps,0] coincida bien con la función de precios, y en segundo lugar, obtendremos una previsión para el futuro.

 
shobvas писал (а):

En realidad tengo esta idea sobre la aplicación del método de Fourier.

El método de Fourier da una aproximación suficientemente buena de la función en el intervalo de tiempo, excluyendo alguna vecindad de los extremos (intervalo). Sería bueno si Fourier aproximara el extremo que es responsable del tiempo actual (t=0) así como el medio del intervalo. También estaría bien construir una serie de Fourier para poder predecir el futuro. Para ello podemos aplicar la siguiente idea:

Construiremos una serie de Fourier en el intervalo [T,-T] (T es el tiempo que aún no ha ocurrido, t=0 es el tiempo presente).
Sin embargo, no tenemos datos sobre el intervalo [0,-T]. Por lo tanto, en la iteración cero tomamos close[t]=close[0] (para t<0) y utilizamos estos datos para construir una serie de Fourier f en el intervalo [T,-T]. Y luego iteramos secuencialmente como sigue:

1) En el intervalo [eps,-T] aproximamos la serie de Fourier f por la función potencia g (eps>0)
2) Construir una serie de Fourier para [T,-T] en f (en T>t>eps) + g (en eps>t>-T)

Significa que aproximamos secuencialmente la función resultante primero con una serie de Fourier y luego con una función de potencia. Se supone que el desajuste {función de precios pronosticada transformada (t<0) + función de precios histórica (t>0)} con {serie de Fourier de esta función} será mínimo (es decir, tenderá a cero con un número creciente de iteraciones). Creo que es una condición necesaria para que el final [eps,0] coincida bien con la función de precios, y en segundo lugar, obtendremos una previsión para el futuro.


Para qué molestarse con las ecuaciones de Fourier cuando se puede filtrar muy fácilmente una serie de precios sin conocer los armónicos individuales. Por ejemplo, los armónicos de alta frecuencia pueden filtrarse mediante una simple media móvil o un filtro digital. Lamentablemente, los filtros SMA, EMA y otros filtros digitales tienen un retraso. Entonces, el último intervalo de la serie de precios puede aproximarse mediante una función de potencia. Esta idea se aplica aquí:

'AFIRMA'.

Sólo queda extrapolar la función de potencia. Pero la predicción será muy pobre. En general, extrapolar el precio de una serie basándose en el ajuste de una función suave es una pérdida de tiempo. Extrapolar una serie de Fourier tampoco nos llevará a ninguna parte. Si se extrapola una serie de Fourier de coseno, se está asumiendo esencialmente que en el futuro el precio se moverá a lo largo de una trayectoria que es una copia exacta de la trayectoria pasada. Si se extrapola una serie de Fourier sinusoidal, se está asumiendo esencialmente que en el futuro el precio se moverá a lo largo de una trayectoria que es una copia invertida de la trayectoria pasada. ¿Para qué sirve entonces la serie de Fourier? Decide tú mismo cómo se reflejará la antigua trayectoria en el futuro y ¡ya está!
 
gpwr писал (а):
Lo único que queda por hacer es extrapolar la función escalonada. Pero la predicción será muy pobre. En general, extrapolar el precio de una serie basándose en el ajuste de funciones suaves es una pérdida de tiempo. Extrapolar una serie de Fourier tampoco nos llevará a ninguna parte. Si se extrapola una serie de Fourier de coseno, se está asumiendo esencialmente que en el futuro el precio se moverá a lo largo de una trayectoria que es una copia exacta de la trayectoria pasada. Si se extrapola una serie de Fourier sinusoidal, se está asumiendo esencialmente que en el futuro el precio se moverá a lo largo de una trayectoria que es una copia invertida de la trayectoria pasada. ¿Para qué sirve entonces la serie de Fourier? Decide por ti mismo cómo se reflejará la antigua trayectoria en el futuro
y ¡aquí se va!

Deberías haber leído lo que escribí con más atención.
Si dibujas una serie de Fourier en el intervalo [T,0] e intentas calcular el valor en t<0 utilizando los coeficientes armónicos, obtendrás un valor simétrico. ¡¡¡¡Pero he propuesto construir una serie de Fourier para el intervalo [T,-T], obviamente no será simétrica respecto a 0!!!! Por eso necesitamos iteraciones para construir una serie de Fourier sobre dicho segmento.

gpwr escribió (a):
Entonces el último intervalo de la serie de precios puede ser aproximado por una función de potencia. Esta idea se aplica aquí:

'AFIRMA'.

He visto este indicador. No es un mal indicador. Pero convenga que hay una serie de Fourier que aproxima la función tanto en los extremos como en el centro.
 
Aquí hay una imagen - la curva phrontal de Koch, de arriba a abajo cinco pasos en su construcción. Cada línea recta
está dividido en tres secciones y la sección central está conectada por un ángulo.




En infinitas iteraciones se convierte en un "copo de nieve esponjoso".

Aquí está la curva fractal de Mandelbrot y sus pasos de construcción. Cada línea recta se sustituye
por un zigzag.



En una iteración infinita se asemeja a un gráfico de citas.

Creo que está claro que las curvas fractales no se pueden extrapolar
utilizando la descomposición espectral o las aproximaciones lineales. Para los fractales
curvas sólo es posible mediante métodos de similitud.

Por supuesto, nadie ha demostrado que las cotizaciones reales sean similares a las funciones fractales, pero
el hecho de que los gráficos son autosimilares (es decir, si eliminamos las escalas se hace imposible
para distinguir, por ejemplo, los puntos característicos de las vísceras) lleva a pensar en su carácter fractal
naturaleza.

En su obra Multifractal Walk on Wall Street
Mandelbrot propone utilizar
fractales basados en zigzags deformados. Pero creo que la realidad es que incluso
más complicado.

 
shobvas писал (а):
Pero coincide en que hay una serie de Fourier que aproximaría la función tanto en los extremos como en el centro, ¡sólo que no se puede encontrar de sopetón!

Sí, lo hay. Es una serie de Fourier completa, con senos y cosenos. Pero también es defectuosa. Las frecuencias de la transformada discreta de Fourier vienen dadas por la fórmula 2*pi*k/N. Es decir, todos los senos y cosenos de la serie de Fourier repetirán sus valores con una periodicidad de N barras: cos(2*pi*k/N*i)=cos(2*pi*k/N*(i+N)), sin(2*pi*k/N*i)=sin(2*pi*k/N*(i+N)). Por tanto, la extrapolación de la serie de Fourier dará lugar a una repetición del pasado. Por ejemplo, el precio de hoy se repetirá después de N barras. Al seleccionar N, controlará cuándo se repetirá el precio. Otra vez. ¿Por qué se necesita una serie de Fourier completa? Decida usted mismo después de cuántas barras se repetirá el precio y comience a operar.

La extrapolación de una función de potencia también es irrelevante. No se puede predecir el mercado ajustando algunas funciones a los datos históricos. Debe utilizar métodos estadísticos o de autoaprendizaje. Lea libros sobre econometría y análisis de series temporales. El método de predicción más común es el método autorregresivo de Box-Jenkins. El problema de este método es que puede caber un camión en su intervalo de confianza. Me parece que hay que esperar más éxito de las redes neuronales de autoaprendizaje.
 
gpwr писал (а):
shobvas escribió (a):
Pero coincide en que hay una serie de Fourier que aproximaría la función tanto en los extremos como en el centro, ¡sólo que no se puede encontrar de forma tan contundente!

Sí, lo hay. Es una serie de Fourier completa, con senos y cosenos. Pero también es defectuosa. Las frecuencias de la transformada discreta de Fourier vienen dadas por la fórmula 2*pi*k/N. Es decir, todos los senos y cosenos de la serie de Fourier repetirán sus valores con una periodicidad de N barras: cos(2*pi*k/N*i)=cos(2*pi*k/N*(i+N)), sin(2*pi*k/N*i)=sin(2*pi*k/N*(i+N)). Por tanto, la extrapolación de la serie de Fourier dará lugar a una repetición del pasado. Por ejemplo, el precio de hoy se repetirá después de N barras. Al seleccionar N, controlará cuándo se repetirá el precio. Otra vez. ¿Por qué se necesita una serie de Fourier completa? Decida usted mismo después de cuántas barras se repetirá el precio y comience a operar.

La extrapolación de una función de potencia también es irrelevante. No se puede predecir el mercado ajustando algunas funciones a los datos históricos. Debe utilizar métodos estadísticos o de autoaprendizaje. Lea libros sobre econometría y análisis de series temporales. El método de predicción más común es el método autorregresivo de Box-Jenkins. El problema de este método es que puede caber un camión en su intervalo de confianza. Creo que hay que esperar más éxito de las redes neuronales de autoaprendizaje.

Los resultados no son malos si hacemos un soporte para la descomposición de Fourier. En particular, podemos extrapolar fácilmente la regresión hacia adelante y construir la Fourier relativa a ella. Se puede poner un mouving como soporte y trazar la suma de armónicos, en una ventana aparte, como si el mouving continuara linealmente. Se puede basar en una media que varíe suavemente, como T3, desplazada medio período hacia atrás para que se ajuste exactamente a los datos, y extrapolar el final con una parábola, que se ajusta para un RMS mínimo, y trazar la Fourier relativa a esta extrapolación. Pero en cualquier caso, hay una alta probabilidad de que se repitan los ciclos si construimos varias variantes de la extrapolación de Fourier con diferentes períodos y optimizamos cada variante con respecto al RMS mínimo. Si hay coincidencia en las lecturas de varias variantes, pueden considerarse probables. Si hay más avance o retraso, se producirá una señal de diferencia correctiva que puede utilizarse para el autoajuste o el recálculo. Esto recuerda al detector FATF de los receptores de radio, que es el más eficaz e inmune a las interferencias.
 
New писал (а):
Aquí hay una imagen - la curva phrontal de Koch, de arriba a abajo cinco pasos en su construcción. Cada línea recta
está dividido en tres secciones y la sección central está conectada por un ángulo.

...

Por supuesto que nadie ha demostrado que las cotizaciones reales sean como las funciones fractales, pero
el hecho de que los gráficos son autosimilares (es decir, si se elimina la escala se hace imposible
para distinguir, por ejemplo, los puntos característicos de las vísceras) lleva a pensar en su carácter fractal
naturaleza.
Los fractales no tienen nada que ver. El tema es sobre las series de Fourier. ¿Por qué has sacado a relucir tanto flamear fuera del tema? Además, no te lo vas a creer, pero puedo distinguir fácilmente los minutos de los 15 minutos y los 15 minutos de las horas.

gpwr escribió (a):
Sí, lo hay. Es una serie de Fourier completa, es decir, con senos y cosenos. Pero también tiene defectos. Las frecuencias de la transformada discreta de Fourier vienen dadas por la fórmula 2*pi*k/N. Es decir, todos los senos y cosenos de la serie de Fourier repetirán sus valores con una periodicidad de N barras: cos(2*pi*k/N*i)=cos(2*pi*k/N*(i+N)), sin(2*pi*k/N*i)=sin(2*pi*k/N*(i+N)). Por lo tanto, la extrapolación de una serie de Fourier dará lugar a una repetición del pasado.
No veo la necesidad de explicar por segunda vez por qué no habrá repetición y simetría.