Teoria do Fluxo Aleatório e FOREX - página 17

 

Aqui está a AKF, dê uma olhada. Só é preciso ter certeza de que conta corretamente. Confira.

Arquivos anexados:
akf_01.mq4  7 kb
 
Prival:

Aqui está a AKF, dê uma olhada. Só é preciso ter certeza de que conta corretamente. Confira.


O cálculo ACF em si é feito por definição e isto é correto para começar - o código é simples e transparente. Mas seria interessante comparar a velocidade se calculada via FFT. A propósito, este código também se presta a uma aceleração perceptível.
 
lna01:
Prival:

Aqui está a AKF, dê uma olhada. Só é preciso ter certeza de que conta corretamente. Verificar.


O cálculo ACF em si é feito por definição e isto é correto para começar - o código é simples e transparente. Mas seria interessante comparar a velocidade, se você calcular via FFT. A propósito, este código também se presta a uma aceleração perceptível.


Através do FFT não será exato, no gráfico da 8ª página ("Teoria do Fluxo Aleatório e FOREX"), a linha vermelha é ACF por fórmula, a linha azul é simétrica ao centro. Mas posso ter feito algo errado (o arquivo em si está anexado na mesma página acima). lna01 Você pode me dizer como construir ACF corretamente usando FFT, eu o fiz de memória, talvez eu tenha cometido um erro.

FFT frente -> módulo+ ^2 -> FFT reverso -> extração da peça real Re() -> normalização

 
Prival:

Aqui está a AKF, dê uma olhada. Só é preciso ter certeza de que conta corretamente. Confira.

Você não o comparou com o matcad? Eu fiz especialmente o WriteToFile para verificar ;)
 
lna01:
Mas seria interessante comparar a velocidade se a contagem fosse feita via FFT.
Na primeira variante havia também o método via FFT - na verdade são várias ordens de grandeza mais rápidas. Nós a abandonamos por causa de uma precisão questionável.

lna01:
A propósito, este código também se presta a uma aceleração perceptível.
Concordo, o código pode ser otimizado. Mas ainda não é uma questão de velocidade, por isso não quero fazer isso.
 
2 Prival , komposter:

O ACF via fft era simétrico muito provavelmente devido à subscrição de zeros. E a precisão é questionável por alguma razão.



Mas algo me parece que o cálculo em tempo real deve ser mais rápido do que a versão fft. No entanto, a quantidade total estimada de cálculos continua a ser muito confusa. Em particular, a arbitrariedade na escolha do comprimento da regressão linear já é questionável nesta fase. Um problema semelhante para os canais de regressão linear ainda é um problema em geral. Na verdade, eu já escrevi sobre isso antes neste tópico.
 

Sim, há mais perguntas do que respostas. Mas está ficando interessante.

1. O coeficiente de correlação não deve ser modulo maior que 1, mas é.

2. Por que a*x+b, Prival? É assim que você quer deter o gráfico? Há outras maneiras que são mais precisas. Por exemplo, a mesma regressão linear (o análogo do mach, mas com uma defasagem menor). Ao deduzir o valor atual da LR do preço, nos livramos perfeitamente das tendências, incluindo as não lineares.

Podemos simplesmente pegar a primeira diferença de preço (ou seja, formar uma série de retornos), mas isso remove apenas os componentes lineares das tendências. Se pegarmos a segunda diferença, também removemos as quadráticas, etc.

Se você quer se livrar do atraso (mas quer refazer a história), então você pode fazer algo como Fourier MA, ou seja, com base na transformação de Fourier e rejeição de altas freqüências. Klot também tem isto.

 
Mathemat:

1. O coeficiente de correlação não deve ser modulo maior que 1, mas é.

Se estamos falando do quadro com fft, então por alguma razão o primeiro elemento sai da série, e é ele que é usado para a normalização. Eu não tentei descobrir o que é a partir das imagens dadas no correio.
 
Cuidado com FFT: tnn (ou nl no corpo) deve ser um poder de dois, ou seja, 2^n, onde n é um número inteiro.
 
rsi:
Você tem que ter mais cuidado com FFT: tnn (ou nl no corpo) deve ser um grau de dois, ou seja, 2^n, onde n é um número inteiro.
Neste sentido, tudo está bem, mas perdi elementos estranhos de densidade espectral :). Portanto, não há problema com o fft, vou agora substituir a fonte naquele posto.


P.S. Eu simplesmente removi a fonte errada, e coloquei aqui a fonte correta.

P.P.S. Só no caso de mais detalhes sobre o manuseio de dados: o tamanho da matriz original precisa ser aumentado 2 vezes, depois novamente aumentá-la para o grau mais próximo de dois. Todas as células adicionadas devem ser escritas em zeros. A matriz de densidade espectral para fft inversa também deve ter tamanho estendido; os quadrados de amplitude devem ser escritos em células para componentes reais e (naturalmente) zeros devem ser escritos em células para componentes imaginários. Como resultado, levamos os elementos desde o início até o tamanho original da matriz.
2 Prival: Eu não sei exatamente como reproduzir isto em Matkadec, tentativa e erro devem ajudar no final. O ACF deve corresponder com razoável precisão.
Arquivos anexados:
akf_01_fft.mq4  13 kb