Interpolation, approximation et autres (paquet alglib) - page 8

 
Toutes ces conversions ne sont pas adaptées à ma tâche, les bibliothèques sont inutiles (étudiées). Prenons un autre chemin. Mais comme personne ne comprend rien à l'essence de la question, je ne vous dirai pas laquelle.
 
Maxim Dmitrievsky:
Toutes ces transformations ne sont pas adaptées à ma tâche, les bibliothèques sont inutiles (étudiées). Prenons un autre chemin. Mais comme personne ne comprend l'essence de la question, je ne vous dirai pas laquelle.

Merci, Maxim, pour ce fil de discussion. Je m'intéresse personnellement à vous. Je suivrai votre processus de création.

J'ai toujours été entraîné dans l'abîme de l'IA.
L'abîme m'attire.

 
Oui, c'était très intéressant à lire. Merci beaucoup @Nikolai Semko
 
Maxim Dmitrievsky :
Toutes ces transformations pour ma tâche ne conviennent pas, elles sont inutiles (apprises). Prenons un autre chemin. Mais comme personne ne comprend rien, je ne dirai pas comment.

Je comprends les mérites dans une certaine mesure et je veux certainement aider et résoudre le problème puisque j'ai compris la partie théorique globale du problème dans une certaine mesure, mais quand il s'agit de la mise en œuvre pratique dans le code MQL5, alors sans la compréhension exacte du code où vous êtes coincé, il devient difficile pour moi de comprendre correctement pour donner une idée sur la façon de résoudre le problème ou où est le problème exactement. Je veux dire dans quelle mesure vous avez implémenté MQL5 et ce que vous recherchez exactement en termes de code, formule ou fonction MQL5, etc.

Si vous pouvez transformer vos pensées ou le problème sous la forme de quelques lignes de code MQL5 où vous êtes bloqué, alors je ferai de mon mieux pour donner une idée au moins pour le résoudre.

 
Nikolai Semko:

Désolé, je n'ai pas compris ce que vous vouliez dire. Apparemment à cause de mes limites. Mais j'ai essayé.
Mais regardez et utilisez cet exemple :
https://www.mql5.com/ru/forum/216298/page5#comment_6484839


L'idée que toute fonction périodique peut être représentée comme une série de sinus et de cosinus liés de façon harmonique a été proposée par le baron Jean Baptiste Joseph Fourier (1768-1830).


Définition d'une série de Fourier

On dit d'une fonctionf(x) qu'ellea une périodeP sif(x+P)=f(x)pour toutes les valeurs dex.Soit la période de la fonctionf(x) égale à. Dans ce cas, ilsuffit de considérer le comportement de la fonction dans l'intervalle[-π].
  1. Supposons que la fonctionf(x) de période soit parfaitement intégrable dans l'intervalle[-π]. Dans ce cas, l'intégrale ditede Dirichlet est finie:π∫-π|f(x)|dx< ∞ ;

  2. Supposons également que la fonctionf(x) est monovalente, continue par morceaux (c'est-à-dire qu'elle a un nombre fini de discontinuités) et monotone par morceaux (elle a un nombre fini de maxima et de minima).

Si les conditions 1 et 2sont satisfaites, alorsla série de Fourierpour la fonctionf(x)existe et converge vers la fonction donnée

. Une fonction non périodique peut-elle être développée en une série de Fourier ? Oui - pour ce faire, nous supposons que l'intervalle dans lequel on veut obtenir l'expansion est la période et nous le mettons à l'échelle de[-π]
. Mais alors, en extrapolant au-delà de l'intervalle de décomposition (sur le bord droit), on devrait obtenir les valeurs de la fonction périodique à la limite, qui sont les valeurs du bord gauche avec un décalage correspondant - période P.
Le dessin est paresseux - il fait partie du cours de méthodes numériques dans les universités, approximativement en deuxième ou troisième année d'études. Plus précisément, on l'étudiait autrefois (à mon époque) - je n'ai aucune idée de ce qu'il en est maintenant.
 
Vladyslav Goshkov:

L'idée que toute fonction périodique peut être représentée comme une série de sinus et de cosinus liés de manière harmonique a été proposée par le baron Jean Baptiste Joseph Fourier (1768-1830).

Définition d'une série de Fourier

On dit d'une fonctionf(x) qu'elle a une périodeP sif(x+P)=f(x)pour toutes les valeurs dex.Soit la période de la fonctionf(x) égale à. Dans ce cas, ilsuffit de considérer le comportement de la fonction dans l'intervalle[-π].
  1. Supposons que la fonctionf(x) de période soit parfaitement intégrable dans l'intervalle[-π]. Dans ce cas, l'intégrale ditede Dirichlet est finie:π∫-π|f(x)|dx< ∞ ;

  2. Supposons également que la fonctionf(x) est monovalente, continue par morceaux (c'est-à-dire qu'elle a un nombre fini de discontinuités) et monotone par morceaux (elle a un nombre fini de maxima et de minima).

Si les conditions 1 et 2sont satisfaites, alorsla série de Fourierpour la fonctionf(x)existe et converge vers la fonction donnée

. Une fonction non périodique peut-elle être développée en une série de Fourier ? Oui - pour ce faire, nous supposons que l'intervalle sur lequel nous voulons obtenir l'expansion est la période et nous le mettons à l'échelle de[-π]
. Mais alors, en extrapolant au-delà de l'intervalle de décomposition (sur le bord droit), on devrait obtenir les valeurs de la fonction périodique à la limite, qui sont les valeurs du bord gauche avec un décalage correspondant - période P.
Le dessin est paresseux - il fait partie du cours de méthodes numériques dans les universités, approximativement en deuxième ou troisième année d'études. Plus précisément, ils avaient l'habitude (à mon époque) de l'étudier - comment maintenant je n'en ai aucune idée.

Il semble que vous ne compreniez pas le sens de la décomposition de la fonction en harmoniques.
Quel bord gauche est reporté sur le bord droit ? Qu'est-ce que tu veux dire ?

Vous comprenez que le but d'une décomposition de Fourier est d'obtenir un ensemble d'harmoniques (sinusoïdes) de fréquence, d'amplitude et de déphasage différents, de sorte que lorsque vous les additionnez, vous obtenez quelque chose de similaire à la fonction originale de l'ensemble des données.

Chaque sinusoïde est comme une fonction infinie et n'a ni bord gauche ni bord droit. Pour l'extrapoler, il suffit de la poursuivre, et non de joindre le bord "gauche" au bord "droit".

Et la périodicité de cette somme harmonique ne sera pas égale à la plage d'échantillonnage des données approximatives originales, mais sera égale à la distance entre les moments où toutes les harmoniques de déphasage de fréquence différente reviennent simultanément à leur valeur de départ, et non au fait que cela puisse se produire, car cela ne peut se produire que si toutes les fréquences des harmoniques sont des multiples de la même valeur.

La ligne bleue est l'approximation, la ligne rouge est l'extrapolation.

Dossiers :
 
Nikolai Semko:

Vous semblez avoir une mauvaise compréhension de la signification de la décomposition de la fonction en harmoniques.
Quel bord gauche se reporte sur le bord droit ? De quoi parlez-vous ?

Vous comprenez que le but de la décomposition de Fourier est d'obtenir un ensemble d'harmoniques (sinusoïdes) de fréquence, d'amplitude et de déphasage différents, de sorte que lorsque vous les additionnez, vous obtenez quelque chose de similaire à la fonction originale de l'ensemble des données.

Chaque sinusoïde est comme une fonction infinie et n'a pas de bord gauche ou droit. Pour l'extrapoler, il suffit de la poursuivre, et non de joindre le bord "gauche" au bord "droit".

Et la périodicité de cette somme harmonique ne sera pas égale à la plage d'échantillonnage des données approximatives originales, mais sera égale à la distance entre les moments où toutes les harmoniques de déphasage de fréquence différente reviennent simultanément à leur valeur de départ, et non au fait que cela puisse se produire, car cela ne peut se produire que si toutes les fréquences des harmoniques sont des multiples de la même valeur.

La ligne bleue est l'approximation, la ligne rouge est l'extrapolation.

Cette même "distance entre les moments où tous les déphasages..." dans la série de Fourier est exactement égale à une période, puisque les arguments des fonctions trigonométriques dans celle-ci sont x, 2x, 3x,...nx, et leurs périodes sont 1, 2, 3...n fois communes, respectivement. Pour cette raison, un tel ensemble de fonctions trigonométriques possède la propriété d'orthogonalité qui se traduit par l'indépendance des coefficients du développement de Fourier les uns par rapport aux autres et par rapport au nombre de fréquences utilisées pour le développement. Ayant calculé les coefficients d'expansion pour n=1 (a1 et b1), nous savons déjà que ces valeurs ne changeront pas si nous trouvons ai et bi dans l'expansion à 5 fréquences. C'est là toute la beauté de la chose.

Pourquoi, ce n'est pas ce que vous faites ? Les valeurs des premiers coefficients de décomposition changent-elles lorsque l'on modifie le nombre d'harmoniques considérés ?

 
Vladyslav Goshkov:

...

Il existe une technique spéciale d'extrapolation de Fourier. Une décomposition en harmoniques est effectuée, les amplitudes sont extrapolées, puis les harmoniques sont collectées avec cette amplitude changeante. Je ne me souviens pas exactement, mais ça donne quelque chose comme ça. Il y a un exemple de cette méthode ici dans la base de code.

 
Maxim Dmitrievsky:

Tout le monde l'a compris, mais ils ne savent pas comment faire.

une transformation aléatoire des caractéristiques d'un réseau neuronal, en tant que fonction de sortie, de sorte que de nouvelles données puissent être substituées.

Très intéressant)) "transformation des traits pour un réseau de neurones". Où un réseau neuronal a-t-il des caractéristiques ? Un réseau neuronal a des entrées et des sorties. Par méthode déductive, nous concluons que c'est l'entrée de ces signes dans le réseau neuronal. Mais ! !! "...comme une fonction de sortie"...

C'est un fiasco, Marivanna, un fiasco !

 
Vladimir:

Cette même "distance entre les moments où tous les déphasages..." dans la série de Fourier est exactement égale à la période, puisque les arguments des fonctions trigonométriques qui la composent sont x, 2x, 3x,...nx, et que leurs périodes s'inscrivent dans une commune 1, 2, 3...n fois, respectivement. C'est pourquoi cet ensemble de fonctions trigonométriques possède la propriété d'orthogonalité qui se traduit par l'indépendance des coefficients du développement de Fourier les uns par rapport aux autres et par rapport au nombre de fréquences utilisées dans le développement. Ayant calculé les coefficients d'expansion pour n=1 (a1 et b1), nous savons déjà que ces valeurs ne changeront pas si nous trouvons ai et bi dans l'expansion à 5 fréquences. C'est là toute la beauté de la chose.

Pourquoi, c'est différent pour vous ? Les valeurs des premiers coefficients de décomposition changent-elles lorsque l'on modifie le nombre d'harmoniques pris en compte ?

Non, cet algorithme de recherche des harmoniques n'utilise pas la transformée de Fourier rapide mais l' algorithme de calcul de fréquence de Queen-Fernandez. (code source) Au fait, n'êtes-vous pas l'auteur ? Le nom est le même, mais les profils sont différents.

Les fréquences sont calculées de manière séquentielle et ne sont pas des multiples les unes des autres. Cela peut être vu à la fois dans le gif animé et dans le code que j'ai présenté ci-dessus et maintenant.
Voici un exemple de coefficients de fréquence harmonique de cet exemple (juste imprimé w) :

2018.08.24 00:22:11.921 !Fourier (EURUSD,M1)    Гармоника 1 = 0.00492908
2018.08.24 00:22:11.921 !Fourier (EURUSD,M1)    Гармоника 2 = 0.01176861
2018.08.24 00:22:11.921 !Fourier (EURUSD,M1)    Гармоника 3 = 0.02124126
2018.08.24 00:22:11.921 !Fourier (EURUSD,M1)    Гармоника 4 = 0.02651676
2018.08.24 00:22:11.921 !Fourier (EURUSD,M1)    Гармоника 5 = 0.03511149
2018.08.24 00:22:11.922 !Fourier (EURUSD,M1)    Гармоника 6 = 0.01191667
2018.08.24 00:22:11.922 !Fourier (EURUSD,M1)    Гармоника 7 = 0.00586503
2018.08.24 00:22:11.922 !Fourier (EURUSD,M1)    Гармоника 8 = 0.04684633
2018.08.24 00:22:11.923 !Fourier (EURUSD,M1)    Гармоника 9 = 0.07585431
2018.08.24 00:22:11.923 !Fourier (EURUSD,M1)    Гармоника 10 = 0.05593456
Dossiers :
6Fourier.mq5  16 kb