Interpolação, aproximação e afins (embalagem de algibe) - página 8

 
Todas estas conversões não são adequadas para minha tarefa, as bibliotecas são inúteis (estudadas). Vamos por outro caminho. Mas como ninguém entende nada sobre a essência da pergunta, não lhe direi qual delas.
 
Maxim Dmitrievsky:
Todas estas transformações não são adequadas para minha tarefa, as bibliotecas são inúteis (estudadas). Vamos por outro caminho. Mas como ninguém entende a essência da pergunta, não lhe direi qual delas.

Obrigado, Maxim, por esta linha. Estou pessoalmente interessado em você. Seguirei seu processo criativo.

Eu sempre fui arrastado para o abismo da IA.
O abismo me atrai para dentro.

 
Sim, foi muito interessante de ler. muito obrigado @Nikolai Semko
 
Maxim Dmitrievsky :
Todas estas transformações para minha tarefa não se encaixam, são inúteis (aprendidas). Vamos por outro caminho. Mas como ninguém entende nada, não vou dizer como.

Eu entendo os méritos até certo ponto e definitivamente quero ajudar e resolver o problema, já que entendi a parte teórica geral do problema até certo ponto, mas quando se trata de implementação prática no código MQL5, então sem a compreensão exata do código onde você está preso está se tornando difícil para mim entender corretamente como resolver o problema ou onde está exatamente o problema. Quero dizer até que ponto você implementou na MQL5 e o que está procurando exatamente em termos de código ou fórmula ou função da MQL5, etc.

Se você pode transformar seus pensamentos ou o problema na forma de poucas linhas de código MQL5 onde você está preso, então eu tentarei dar o meu melhor para dar alguma idéia, pelo menos para resolvê-lo.

 
Nikolai Semko:

Desculpe, não consegui entender o que você quis dizer. Aparentemente, devido às minhas limitações. Mas eu tentei.
Mas dê uma olhada e use este exemplo:
https://www.mql5.com/ru/forum/216298/page5#comment_6484839


A idéia de que qualquer função periódica pode ser representada como uma série de pecados e co-senos harmonicamente relacionados foi proposta pelo Barão Jean Baptiste Joseph Fourier (1768-1830).


Definição de uma série de Fourier

Uma funçãof(x)tem o períodoP sef(x+P)=f(x)para todos os valores dex.Que o período da funçãof(x) seja 2π. Neste caso,é suficiente considerar o comportamento da função no intervalo[-π,π].
  1. Suponha que a funçãof(x) com o período seja perfeitamente integrável no intervalo[-π,π]. Neste caso, a chamadaintegral Dirichlet é finita:π∫-π|f(x)|dx< ∞;

  2. Suponha também que a funçãof(x) seja de valor único, contínuo em peça (isto é, tem um número finito de descontinuidades) e monótono em peça (tem um número finito de máximos e mínimos).

Se as condições 1 e 2forem satisfeitas, entãoa série Fourierpara a funçãof(x)existe e converge para a função dada

Pode uma função não periódica ser expandida para uma série Fourier? Sim - para isso, assumimos que o intervalo em que se quer obter a expansão é o período e escalá-lo para[-,π]
π . Mas então, ao extrapolar além do intervalo de decomposição (sobre a borda direita), você deve obter os valores da função periódica no limite, que são os valores da borda esquerda com um deslocamento correspondente - período P.
O desenho é preguiçoso - está no curso de métodos numéricos nas universidades, aproximadamente no segundo ou terceiro ano de estudo. Mais precisamente, costumava ser estudado (na minha época) - não tenho idéia de como é agora.
 
Vladyslav Goshkov:

A idéia de que qualquer função periódica pode ser representada como uma série de pecados e co-senos harmonicamente relacionados foi proposta pelo Barão Jean Baptiste Joseph Fourier (1768-1830).

Definição de uma série de Fourier

Uma funçãof(x)tem o períodoP sef(x+P)=f(x)para todos os valores dex.Que o período da funçãof(x) seja 2π. Neste caso,é suficiente considerar o comportamento da função no intervalo[-π,π].
  1. Suponha que a funçãof(x) com o período seja perfeitamente integrável no intervalo[-π,π]. Neste caso, a chamadaintegral Dirichlet é finita:π∫-π|f(x)|dx< ∞;

  2. Suponha também que a funçãof(x) seja de valor único, contínuo em peça (isto é, tem um número finito de descontinuidades) e monótono em peça (tem um número finito de máximos e mínimos).

Se as condições 1 e 2forem satisfeitas, entãoa série Fourierpara a funçãof(x)existe e converge para a função dada

Pode uma função não periódica ser expandida para uma série Fourier? Sim - para fazer isso, assumimos que o intervalo no qual queremos obter a expansão é o período e escalá-lo para[-,π]
π . Mas quando extrapolar além do intervalo de decomposição (sobre a borda direita), você deve obter os valores da função periódica no limite, que são os valores da borda esquerda com um deslocamento correspondente - período P.
O desenho é preguiçoso - está no curso de métodos numéricos nas universidades, aproximadamente no segundo ou terceiro ano de estudo. Mais precisamente, eles costumavam (no meu tempo) estudá-lo - como agora eu não tenho idéia.

Parece que você não entende o sentido da decomposição da função em harmônicas.
Que borda esquerda é transportada sobre a borda direita? O que você quer dizer?

Você entende que o objetivo de uma decomposição de Fourier é obter um conjunto de harmônicas (sinusoidais) de freqüência, amplitude e deslocamento de fase diferentes, de modo que quando você as soma você obtém algo semelhante à função original do conjunto de dados.

Cada sinusoidal é como uma função infinita e não tem borda esquerda ou direita. Para extrapolá-la, basta continuar, não juntar a borda "esquerda" à "direita".

E a periodicidade desta soma harmônica não será igual ao intervalo de amostragem dos dados aproximados originais, mas será igual à distância entre os momentos em que todos os harmônicos de diferentes fases de freqüência mudam simultaneamente para seus valores iniciais, e não o fato de que isso pode acontecer, pois só pode acontecer se todas as freqüências dos harmônicos forem múltiplos de um mesmo valor.

A linha azul é a aproximação, a linha vermelha é a extrapolação.

Arquivos anexados:
 
Nikolai Semko:

Você parece ter um mal entendido do significado da decomposição da função em harmônicas.
Qual borda esquerda se desloca para a borda direita? Do que você está falando?

Você entende que o objetivo da decomposição de Fourier é obter um conjunto de harmônicas (sinusoidais) de freqüência, amplitude e deslocamento de fase diferentes, de modo que quando você adicioná-las você obtém algo semelhante à função original do conjunto de dados.

Cada sinusoidal é como uma função infinita e não tem uma borda esquerda nem uma borda direita. Para extrapolá-la, basta continuar, não juntar a borda "esquerda" à "direita".

E a periodicidade desta soma harmônica não será igual ao intervalo de amostragem dos dados aproximados originais, mas será igual à distância entre os momentos em que todos os harmônicos de diferentes fases de freqüência mudam simultaneamente para seus valores iniciais, e não o fato de que isso pode acontecer, pois só pode acontecer se todas as freqüências dos harmônicos forem múltiplos de um mesmo valor.

A linha azul é a aproximação, a linha vermelha é a extrapolação.

Esta mesma "distância entre momentos em que todas as fases se deslocam..." na série Fourier é exatamente igual a um período, uma vez que os argumentos das funções trigonométricas nela são x, 2x, 3x,...nx, e seus períodos são 1, 2, 3...n vezes comuns, respectivamente. Devido a isso, tal conjunto de funções trigonométricas tem a propriedade de ortogonalidade que resulta na independência dos coeficientes de expansão da série Fourier entre si e do número de freqüências utilizadas na expansão. Tendo calculado os coeficientes de expansão para n=1 (a1 e b1) já sabemos que estes valores não mudarão se encontrarmos ai e bi na expansão com 5 freqüências. Essa é a beleza da coisa.

Por que, não é isso que você está fazendo? Os valores dos primeiros coeficientes de decomposição mudam quando se altera o número de harmônicas consideradas?

 
Vladyslav Goshkov:

...

Existe uma técnica especial de extrapolação de Fourier. Uma decomposição em harmônicas é feita, as amplitudes são extrapoladas, e então as harmônicas são coletadas com esta amplitude variável. Não me lembro exatamente, mas é algo assim. Há um exemplo deste método aqui na base de código.

 
Maxim Dmitrievsky:

Todos já descobriram, só não sabem como fazer

uma transformação aleatória de características para a rede neural, como função de saída, de modo que novos dados possam ser substituídos

Muito interessante)) "transformação de traços para uma rede neural". Onde uma rede neural tem características? Uma rede neural tem entradas e saídas. Pelo método dedutivo, concluímos que é a entrada destes sinais na rede neural. Mas!!!! "...como uma função de saída"...

É um fiasco, Marivanna, um fiasco!

 
Vladimir:

Esta mesma "distância entre momentos em que todas as fases se deslocam..." na série Fourier é exatamente igual ao período, já que os argumentos das funções trigonométricas nele são x, 2x, 3x,...nx, e seus períodos se encaixam em um 1, 2, 3...n vezes, respectivamente. Devido a isso, tal conjunto de funções trigonométricas tem a propriedade de ortogonalidade que resulta na independência dos coeficientes de expansão de Fourier uns dos outros e do número de freqüências utilizadas na expansão. Tendo calculado os coeficientes de expansão para n=1 (a1 e b1) já sabemos que estes valores não mudarão se encontrarmos ai e bi na expansão com 5 freqüências. Esta é a beleza da coisa.

Por que, é diferente para você? Os valores dos primeiros coeficientes de decomposição mudam quando se altera o número de harmônicos levados em conta?

Não, este algoritmo para encontrar harmônicas não utiliza a rápida transformação de Fourier, masutiliza o algoritmo de cálculo de freqüência Queen-Fernandez. (código fonte) A propósito, você não é o autor? O nome é o mesmo, mas os perfis são diferentes.

As freqüências são calculadas seqüencialmente e não são múltiplas umas das outras. Isto pode ser visto tanto pelo gif animado quanto pelo código que apresentei acima e agora.
Aqui está um exemplo de coeficientes de freqüência harmônica a partir deste exemplo (apenas impresso 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
Arquivos anexados:
6Fourier.mq5  16 kb