Ipotesi basate su Fourier - pagina 7

 
Urain >> :

Questo suona già come un ToR. È tutto (ciò di cui hai bisogno per essere felice)?

Non rifarò Lapak, perché ha l'approccio orientato agli oggetti in MQL-5,

ma sul 4 è solo un mucchio di stronzate, è più facile da riscrivere.

Il http://alglib.sources.ru/matrixops/ sembra avere tutto in C. Di conseguenza, è abbastanza facile da portare a MQL4.

 
Reshetov >> :

Se usiamo le proprietà dell'inerzia lineare, allora:

Grazie per la descrizione dettagliata, ma ci sono delle domande. Per favore, non colpire con un candelabro. In primo luogo, perché ho bisogno di tutte le 10k barre? Sono interessato a una finestra di qualche dimensione, ad esempio per la FFT sarebbe 256. 256 è scelto tenendo conto che il più grande periodo interessante per il trading intraday su M15, dove ci sono 96 letture in un giorno, è limitato a 256 (>2*96) e non ha bisogno di più. Bene, che sia 1024 per tenere conto anche delle fluttuazioni settimanali. Ma in ogni caso, come è stato giustamente notato prima, in uno spettro totale di 10 mila barre l'influenza dei cambiamenti recenti si annullerà, quindi l'idea di una finestra relativamente piccola sembra essere giustificata. In secondo luogo, per quanto riguarda l'estrazione di una tendenza lineare e il suo successivo recupero, non eseguo questa operazione poiché calcolo il TF non per la serie iniziale ma per incrementi di prezzi. Per un dato intervallo di barre, la somma dei delta raggiungerà automaticamente il punto corrispondente alla pendenza tra la prima e l'ultima barra. Cosa ne pensate?

 
Ilnur >> :

Qui, ho dato un esempio di implementazione di un algoritmo di inversione di matrice in MQL (preso dal codice sorgente della libreria LAPACK).

trovato, questa è una delle cose che non è chiara.

// Вычисляем LU-разложение матрицы
    dgetf(n,n,a,ipiv,info);

Da dove prendiamo le informazioni e i valori di ipiv? O si suppone che la funzione ci restituisca questi valori, e noi passiamo solo i parametri da restituire? Prossimo

// Вычисляем обратную матрицу, заданным LU-разложением
    dgetri(n,a,ipiv,info);

Abbiamo passato l'ipiv con la matrice LU calcolata e ottenuto la matrice invertita riscritta nello stesso array? Ah, non giudicando da

// Сохраняем обратную матрицу для отображения
    sM = sM+MatrixPrint(a,n,n);

salvato in un[][]...


Ho un sacco di domande come questa, è un altro stile di programmazione, difficilmente lo capisco, o meglio non lo capisco affatto. Inoltre non sono riuscito a trovare la parte della risposta. Dove sono le funzioni complicate? E la velocità dei calcoli, e la dimensionalità delle matrici? Fortran può farlo, ma che dire di MQL?

 
grasn >> :

trovato, questa è una delle cose che non è chiara.

Da dove prendiamo le informazioni e i valori di ipiv? O si suppone che la funzione ci restituisca questi valori, e noi passiamo solo i parametri da restituire? Prossimo

Abbiamo passato l'ipiv con la matrice LU calcolata e ottenuto la matrice invertita riscritta nello stesso array? Ah, non giudicando da

salvato in un[][]...


Ho molte domande di questo tipo, ho uno stile di programmazione diverso, difficilmente lo capisco, o meglio non lo capisco affatto. Inoltre, non sono riuscito a trovare la parte della risposta. Dove sono queste funzioni complicate? E la velocità dei calcoli, e la dimensionalità delle matrici? Fortran può farlo, ma MQL?

Non si faccia dei complessi, collega.

Tutto questo mucchio di spazzatura chiamato LINPACK-LAPACK è stato scritto negli anni '70 da fisici puri in Fortran. Non avevano idea (e non volevano sapere) della programmazione strutturata e di altre "cose inutili". Poi queste fonti sono state tradotte in Ce con l'aiuto del debilitatore F2C, e poi lo studente tirocinante le ha messe in testi.

Anche se formalmente funziona, è impossibile usarlo, perché è impossibile per una persona normale capire la logica di interazione tra i moduli di tutti questi programmi "scientifici". Infatti, questo è il motivo per cui gli ex fisici e matematici che hanno scritto MatLab-e fanno soldi - almeno puoi usarlo, invece di passare anni a cercare di capire la logica marziana sballata di qualcun altro.

 
grasn >> :

trovato, è questo che non è chiaro tra le altre cose.

Da dove prendiamo le informazioni e i valori di ipiv? O la funzione dovrebbe restituirci questi valori e noi dobbiamo solo passare i parametri dove restituirli? Prossimo

Questi array sono utilizzati per le necessità interne delle funzioni Forthran, e per riportare il risultato dell'esecuzione.

La funzione restituisce alcuni dati intermedi da passare alla funzione successiva. Se usate

la versione compilata della libreria clapack.dll, utilizza uno schema di lavoro simile.


grasn ha scritto >>.

Abbiamo passato l'ipiv con la matrice LU calcolata e ottenuto la matrice invertita riscritta nello stesso array?

La matrice invertita viene restituita nella matrice originale a[][] che è stata passata come parametro della funzione.

grasn ha scritto >>.

Inoltre, non sono riuscito a trovare la parte della risposta. Dove sono queste funzioni complicate? E la velocità dei calcoli, e la dimensionalità delle matrici? Fortran può farlo, ma MQL?

Non capisco bene la domanda. Queste funzioni sono date nel file lapack.mqh allegato al post.

Non ho testato la velocità dei calcoli, ma ho usato la versione compilata della libreria per le mie esigenze - è stato più facile così.

Non ho notato alcun ritardo notevole nell'esecuzione di queste funzioni, anche se la dimensione delle mie matrici non superava [10 10].

 

a AlexEro

Не вздумайте комплексовать по этому поводу, коллега.


Sto cercando di tenere duro. È importante gonfiare le guance. :о)))


a Ilnur

La matrice invertita viene restituita nella matrice originale a[][], che è stata passata alla funzione come parametro.

Sì, l'ho capito, proprio qui sotto :o)

Non capisco bene la sua domanda. Queste funzioni sono date nel file lapack.mqh allegato al post.

Ecco cosa significa distrazione, non l'avevo notato, accidenti, mi dispiace. ok, ci proverò una seconda volta ma in un attimo, (ma segretamente sperando in Urain:o). Il mio brontolio può essere facilmente spiegato - in un certo senso non è molto conveniente (sottolineo che questo non è un reclamo, nessun modo, o altrimenti frainteso), cioè non è una biblioteca nel pieno senso del termine, e una persona non esperto difficile da usare. Capisco che nessuno l'ha portato a questo livello perché non è necessario. Un peccato, naturalmente.

 
grasn >> :

Il mio brontolio può essere facilmente spiegato - in alcuni modi non è molto conveniente (sottolineo che questa non è una lamentela, in ogni caso, altrimenti la gente fraintenderà), cioè non è una biblioteca nel pieno senso del termine, e una persona non esperta la trova difficile da usare. Capisco che nessuno l'ha portato a questo livello perché non è necessario. È un peccato, naturalmente.

Sono d'accordo che l'interfaccia della biblioteca non è user-friendly. Ma, quando avevo bisogno di funzioni per lavorare con le matrici,

In particolare l'operazione di manipolazione, non ne ho trovata una migliore al momento. Così ho dovuto usarlo.

 
YUBA >> :

1. Il mercato non è un sistema chiuso. Qualsiasi estrapolazione è possibile in assenza di influenze esterne.

[...]

3. Qual è la durata del processo di transizione nel mercato, la risposta all'impatto? Lo sai? Come si calcola allora? Il 1° segmento è un impatto, il 2° è completamente diverso, e noi li sommiamo qui. :)

Significa che è possibile prevedere qualcosa solo nel segmento tra le influenze e non oltre.

1. Sì, non è affatto chiuso. Ed è descritto, probabilmente, da qualche complicato diphurk come un oscillatore parametrico non lineare (un oscillatore, naturalmente, nel senso della teorofisica) - per uno strumento. L'energia al sistema viene comunicata attraverso un cambiamento dei parametri di diffusione (a tappe). Poi c'è un processo transitorio, fino a un nuovo salto dei parametri.


3. Inoltre, le influenze stesse devono fissare nuove costanti di questi transitori, che possono anche definire il carattere di questi transitori (un'onda sinusoidale smorzata o non smorzata o un esponente reale).


P.S. A tutti i colleghi che vivono su un'isola deserta, ciao. Questo è più o meno ciò di cui parleremo dopo.

 
Mathemat >> :

1. Sì, non è affatto chiuso. Ed è descritto, probabilmente, da qualche non semplice diphurk di tipo oscillatore parametrico non lineare (oscillatore - ovviamente, nel senso della teorofisica) - per uno strumento. L'energia al sistema viene comunicata attraverso un cambiamento dei parametri di diffusione (a tappe). Quello che segue è un processo transitorio, fino a un nuovo salto dei parametri.


3. Inoltre, le influenze stesse devono stabilire nuove costanti di questi transitori, che possono anche determinare la natura di questi transitori (un'onda sinusoidale smorzata o non smorzata o un esponente reale).


P.S. A tutti i colleghi che vivono su un'isola deserta, ciao. Questo è più o meno ciò di cui parleremo dopo.

Sì, più il rumore, che è paragonabile, e a volte anche superiore, al livello del segnale. E sospetto qualcosa come 1/f, o 1/f^2. :)

 
VladislavVG писал(а) >>

Poi aggiungerei anche - c'è qualcuno che legge ;) .

Un'altra cosa da sottolineare è che il PF può essere applicato dove il processo può essere rappresentato da una diff. parabolica (secondo ordine con solo derivate pari). Poiché la serie di Fourier è una soluzione generale di questo diffeomorfismo in forma trigonometrica (ce ne sono anche di complesse). I diffusori di questo tipo descrivono sistemi potenziali (cicli oscillatori senza scambi con l'ambiente esterno) - cioè sistemi in cui la dissipazione (dissipazione di energia) può essere trascurata e in cui si ottiene una soluzione con una buona approssimazione. La radiotecnica/radiolocalizzazione si occupa principalmente di tali sistemi. Se lo scambio non può essere trascurato - allora appaiono termini con derivate dispari (primo ordine - isteresi, per esempio). Per la maggior parte di questi problemi non esiste una soluzione analitica. E la serie di Fourier non è più una soluzione in forma generale - questo è l'importante. E ora una domanda - sei sicuro che la massa di denaro, "gettata" nel mercato Forex e che muove il prezzo è costante durante un giorno, sessione di trading? Se è così, allora sentitevi liberi di usare Fourier.

...

La mia memoria non è così acuta, ma non molto tempo fa (su un forum vicino, in un thread iniziato da Alex), qualcuno ha calcolato l'energia potenziale in Forex. :о)