Previsione di mercato basata su indicatori macroeconomici - pagina 9

 
transcendreamer:


Sarei ancora in disaccordo - la regressione funziona bene con qualsiasi dato, non necessariamente meglio di altri metodi, ma ancora abbastanza bene soprattutto quando si considera l'estrema mancanza di richiesta di risorse computazionali


La regressione NON funziona con nessun dato. Questo è particolarmente vero per la regressione lineare, che è menzionata all'inizio di questo thread.

Il problema dell'applicazione della regressione lineare può essere diviso in due livelli.

1. Stima primaria dei coefficienti di regressione. Esattamente la VALUTAZIONE. Se scriviamo y=a+inx, non c'è precisione qui, poiché la regressione non è un'equazione e la voce corretta y ~ a+inx, dove il segno tilde sottolinea che i coefficienti non sono costanti, ma stime di variabili casuali con una certa precisione, e quindi non possiamo sommarli, come suggerisci nel tuo post.

Di conseguenza, quando si usa un qualsiasi pacchetto di adattamento della regressione, ogni coefficiente è abbinato a un certo insieme di numeri che caratterizzano il valore del coefficiente specificato come una variabile casuale. Il risultato totale viene visualizzato nella colonna all'estrema destra sotto forma di asterischi. Tre asterischi significano che si può prendere il valore di un coefficiente come una costante, o piuttosto come una stima di un valore casuale con un piccolo errore e un piccolo spread. Se non ci sono asterischi, il valore dato non è nulla e non può essere usato in alcun modo.

Ma questo non è tutto il problema. E i problemi principali sono i seguenti.

2. la regressione lineare è applicabile SOLO a dati stazionari, cioè con mo e varianza approssimativamente costanti. La trasformazione di cui hai parlato, che porta alla rimozione della tendenza, è proprio il tentativo di portarla a una forma stazionaria. Tutto questo è generalizzato in forma di modelli ARIMA, ma ci sono tali serie finanziarie, e ce ne sono la maggior parte, quando i modelli ARIMA non risolvono i problemi.

Se non si distinguono tutte queste sottigliezze, i risultati ottenuti con la regressione lineare sono un vuoto gioco di numeri.

 
faa1947:

La regressione NON funziona con nessun dato. Questo è particolarmente vero per la regressione lineare, che è menzionata all'inizio di questo thread.

Il problema dell'applicazione della regressione lineare può essere diviso in due livelli.

1. Stima primaria dei coefficienti di regressione. Esattamente la VALUTAZIONE. Se scriviamo y=a+inx, non è più esatto, perché la regressione non è un'equazione e la voce corretta y ~ a+inx, dove il segno tilde sottolinea che i coefficienti non sono costanti, ma stime di variabili casuali con una certa precisione, e quindi non possiamo sommarli, come suggerisci nel tuo post.

Di conseguenza, quando si usa un qualsiasi pacchetto di adattamento della regressione, ogni coefficiente è abbinato a un certo insieme di numeri che caratterizzano il valore del coefficiente specificato come una variabile casuale. Il risultato totale viene visualizzato nella colonna all'estrema destra sotto forma di asterischi. Tre asterischi significano che si può prendere il valore di un coefficiente come una costante, o piuttosto come una stima di un valore casuale con un piccolo errore e un piccolo spread. Se non ci sono asterischi, il valore dato non è nulla e non può essere usato in alcun modo.

Ma questo non è tutto il problema. E i problemi principali sono i seguenti.

2. la regressione lineare è applicabile SOLO a dati stazionari, cioè con mo e varianza approssimativamente costanti. La trasformazione di cui hai parlato, che porta alla rimozione della tendenza, è proprio il tentativo di portarla a una forma stazionaria. Tutto questo è generalizzato in forma di modelli ARIMA, ma ci sono tali serie finanziarie, e ce ne sono la maggior parte, quando i modelli ARIMA non risolvono i problemi.

Se non si distinguono tutte queste sottigliezze, i risultati ottenuti con la regressione lineare sono un vuoto gioco di numeri.

Funziona bene per me )))) ed è solo regressione lineare

Sommare i coefficienti è un metodo rozzo, sono d'accordo.

Ho provato ad analizzare la significatività dei coefficienti e l'analisi della varianza, ma in pratica mi sembra poco utile

è molto più facile e comodo vedere come si comporta la curva finale e quanto bene si avvicina ai valori teorici ai dati originali visivamente sul grafico

Ecco perché prendo il vettore soluzione così com'è, e per la maggior parte dei casi è sufficiente

se si adatta bene ai dati, tutto va bene.

Ho provato altre soluzioni migliori, altri metodi - il risultato non è molto diverso da quello della regressione

Ho notato che alcuni coefficienti possono fluttuare entro certi limiti, e questo non influenza molto la curva finale

Ma anche questo non è un problema, questi coefficienti saranno comunque instabili, cambieranno gradualmente nel tempo, quindi non ha senso valutarli

sulla stazionarietà - ovviamente non esiste nel mercato, quindi cosa fare allora?

probabilmente non è accademico farlo nel modo in cui lo faccio io.

ma allora cosa prendere come sostituto?

 
transcendreamer:

.....

ma allora cosa si dovrebbe sostituire?

Ti sei limitato alla regressione lineare, ma potresti porre la domanda come segue: scegli il tipo di regressione più appropriato a seconda dei compiti da svolgere. Si può pensare a tutte le numerose regressioni (non solo lineari) come a un mucchio di scatole nere e concentrarsi su problemi significativi nella valutazione dei risultati ottenuti.

Per uscire da una regressione lineare come dai pantaloni corti bisogna spendere molto tempo.

Successivamente, decidete il tipo di ciò che state prevedendo, vale a dire: avete intenzione di prevedere il valore, per esempio il prezzo di una coppia di valute, o prevedere la direzione del prezzo, una sorta di caratteristica qualitativa "long-short" o altri ordini del terminale.

Ora devi decidere una sorta di investimento di tempo.

Nella prima fase raccomando Rattle come porta d'accesso al mondo di più di 100 modelli. A giudicare dal livello del tuo ragionamento sulla regressione lineare è un giorno o due del tuo tempo. Ti ritrovi con 6 tipi di modelli, uno dei quali quasi il tuo preferito, chiamato solo "lineare generalizzato", ma gli altri sono molto più interessanti, con i quali puoi effettivamente fare modelli di predizione.

 
faa1947:

Ti sei limitato alla regressione lineare, ma potresti porre la domanda come segue: scegli il tipo di regressione più appropriato a seconda dei compiti da svolgere. Si può pensare a tutte le numerose regressioni (non solo lineari) come a un mucchio di scatole nere e concentrarsi sui problemi significativi della valutazione dei risultati.

Per uscire da una regressione lineare come dai pantaloni corti bisogna spendere molto tempo.

Successivamente, decidete il tipo di ciò che state prevedendo, vale a dire: avete intenzione di prevedere il valore, per esempio il prezzo di una coppia di valute, o prevedere la direzione del prezzo, una sorta di caratteristica qualitativa "long-short" o altri ordini del terminale.

Ora devi decidere una sorta di investimento di tempo.

Nella prima fase raccomando Rattle come porta d'accesso al mondo di più di 100 modelli. A giudicare dal livello del tuo ragionamento sulla regressione lineare è un giorno o due del tuo tempo. Ti ritrovi con 6 tipi di modelli, uno dei quali è quasi il tuo preferito, chiamato solo "lineare generalizzato", ma gli altri sono molto più interessanti, con i quali puoi effettivamente fare modelli di predizione.

purtroppo come ho detto altri ottimizzatori non hanno mostrato risultati significativamente migliori rispetto alla regressione lineare

forse in alcune applicazioni scientifiche possono dare un vantaggio, ma nel trading la previsione accurata è un'illusione.

GLM è stato sviluppato per le assicurazioni, se non sbaglio, SVM e ADA sono troppo focalizzati, la regressione logistica non è adatta per ovvi motivi

Le reti neurali e le foreste casuali sono versatili e più vantaggiose perché aggirano il problema della radice zero e qualsiasi funzione obiettivo può essere specificata

ma è un vero rompicapo là fuori, almeno per me, un umanitario.

il metodo dei componenti principali è stato una scoperta per me, ma non sono stato in grado di applicarlo al mio problema (portafogli)

Le foreste casuali sono sicuramente degne di attenzione e ho intenzione di provarle dopo qualche tempo, ma non mi aspetto molto effetto.

Peccato che non ci sia una GA in rattle, o non potrei trovarne una

 

Non chiamerei la regressione lineare "di cattivo gusto". E non c'è bisogno di supporre che non abbia provato un sacco di altri modelli.

Tutti sanno che qualsiasi modello non lineare y = f(x1,x2,...) può essere decomposto in una serie di Taylor:

y = a0 + a11*df/dx1*x1 + a12*df/dx2*x2 + ... + a21*d^2f/dx1^2*x1^2 + a22*d^2f/dx2^2*x2^2 + b11*d^2f/dx1/dx2*x1*x2 + ...

Quelli ben versati in matematica sanno che si tratta di una decomposizione della funzione f(x1,x2,...) in basi polinomiali (più precisamente monomie) x, x^2, x^3 ecc. Una regressione lineare conserva solo i termini lineari di questa espansione, quindi è un'approssimazione di primo ordine. Le basi non lineari possono essere scelte tra vari polinomi ben noti, per esempio Chebyshev, Hermite, Legendre, ecc. Ma il metodo corretto di selezione dei polinomi è la decomposizione QR o nel caso più generale la selezione dei polinomi ortogonali tenendo conto delle proprietà statistiche degli input x1, x2, ... Le reti neurali cercano di fare la stessa decomposizione ma su funzioni exp di input secondo il teorema di Kolmogorov. Questa è una decomposizione abbastanza scomoda perché le funzioni esponenziali degli ingressi non sono ortogonali tra loro, il che porta a un sacco di problemi numerici e varianti di soluzione. In ogni caso, tutte queste decomposizioni della nostra funzione non lineare avranno un modello lineare come approssimazione di primo ordine. Quindi, se un'approssimazione lineare (regressione) non ci dà il risultato atteso, allora non ha senso andare a gradi più alti di non linearità. Anche la regressione lineare può essere risolta con diversi metodi (RMS, MNM, e altre funzioni di errore arbitrarie), che ho provato tutti.

A proposito, tutti i modelli econometrici ARMA, ARIMA e altri modelli sono casi individuali del suddetto modello y[n] = f(x1[n-d1],x2[n-d2],...) dove alcuni input sono output ritardati, cioè y[n-1], y[n-2], da cui il nome di modelli "autoregressivi". Anche se non è salutare risolvere i modelli autoregressivi con i metodi RMS o CMM perché i coefficienti ottenuti portano a modelli oscillatori. Abbiamo bisogno di Burg, Covarianza modificata e così via. Ma ho superato questo capitolo "autoregressivo" molto tempo fa e non voglio tornare indietro. Anche se il mio modello di mercato permette di selezionare un'uscita ritardata come uno degli input. Ma finora non ha mai scelto un input "autoregressivo", il che significa che gli indicatori economici sono più adatti a predire il prezzo che il prezzo stesso in passato (che costituisce la base della grande maggioranza dei metodi dei trader basati sull'analisi tecnica)

 
faa1947:

Ho un suggerimento.

Rilascia un file tsv con i nomi delle colonne. Specifica quali (quali) colonne dovrebbero essere usate come variabili di destinazione. Naturalmente, la riga della tabella dovrebbe riferirsi a un punto nel tempo.

Lo eseguirò in Rattle e con il tuo permesso posterò qui il risultato per 6 modelli molto decenti.


Suggerimento accettato. Specificare un formato di file di dati accettabile. Andrà bene il tappetino? Sono un sacco di dati, il CSV si mangia tutto il disco. MAT solo 6MB.

Ma ho una condizione: le previsioni sono fatte per il periodo dal 2000 al 2015, ma solo sulla base dei dati disponibili prima della data prevista. Cioè, se si fanno previsioni per il 1° trimestre 2000, si opera con dati fino al 1° trimestre 2000. Selezionare i predittori da tutti i dati disponibili, incluso il 2015, e poi usarli per prevedere il Q1 2000, anche se i coefficienti del modello sono calcolati dai dati prima del Q1 2000, è guardare avanti. Ho avuto questo errore in passato e il mio modello ha avuto previsioni incredibilmente accurate. In breve, la mia condizione è che i predittori siano selezionati e che il modello predittivo stesso sia calcolato dai dati PRIMA della data prevista.

 
gpwr:

Offerta accettata. Specificare un formato di file di dati accettabile. Il tappetino va bene? Troppi dati, il CSV si mangia tutto il disco. MAT solo 6MB.


Il primo problema è il file. Dovremo pensarci. Sono sicuro che MAT prende R - R e MATLAB sono molto amichevoli, ma non so come fare. Mentre mi preparo, scriverò di nuovo.

 
gpwr:

Non chiamerei la regressione lineare "di cattivo gusto".



"Pietoso" per i dati non stazionari.

E per riassumere i miei post: lo strumento deve essere adatto al problema.

Per le regressioni - la non stazionarietà delle serie finanziarie è il problema di fondo. Quindi, quando si sceglie un toolkit è necessario guardare come lo strumento scelto risolve il problema della non stazionarietà. Il mio menzionato ARIMA risolve il problema della non stazionarietà in una certa misura, ma non ho mai sentito parlare di serie di Taylor che risolvono il problema della non stazionarietà. Nel quadro delle regressioni, l'ARIMA non è l'unico strumento, anche se è ancora usato nelle strutture governative statunitensi e non è il più avanzato. Di quelli noti, citerò ARCH con un mucchio di modifiche.

Il risultato della non stazionarietà è il superfitting del modello. Si manifesta nel fatto che si può costruire un modello con una precisione straordinaria, ma non funziona al di fuori del campione di allenamento, e in modo subdolo: poi funziona, poi no. Le sue parole sulla superiorità dei modelli semplici su quelli complessi è un fatto ben noto e si basa sul fatto che un modello complesso è molto più facile da adattare di uno semplice.

 
gpwr:

Non chiamerei la regressione lineare "di cattivo gusto". E non c'è bisogno di supporre che non abbia provato un sacco di altri modelli.

Tutti sanno che qualsiasi modello non lineare y = f(x1,x2,...) può essere decomposto in una serie di Taylor:

y = a0 + a11*df/dx1*x1 + a12*df/dx2*x2 + ... + a21*d^2f/dx1^2*x1^2 + a22*d^2f/dx2^2*x2^2 + b11*d^2f/dx1/dx2*x1*x2 + ...

Quelli ben versati in matematica sanno che si tratta di una decomposizione della funzione f(x1,x2,...) in basi polinomiali (più precisamente monomie) x, x^2, x^3 ecc. Una regressione lineare conserva solo i termini lineari di questa espansione, quindi è un'approssimazione di primo ordine. Le basi non lineari possono essere scelte tra vari polinomi ben noti, per esempio Chebyshev, Hermite, Legendre, ecc. Ma il metodo corretto di selezione dei polinomi è la decomposizione QR o nel caso più generale la selezione dei polinomi ortogonali tenendo conto delle proprietà statistiche degli input x1, x2, ... Le reti neurali cercano di fare la stessa decomposizione ma su funzioni exp di input secondo il teorema di Kolmogorov. Questa è una decomposizione abbastanza scomoda perché le funzioni esponenziali degli ingressi non sono ortogonali tra loro, il che porta a un sacco di problemi numerici e varianti di soluzione. In ogni caso, tutte queste decomposizioni della nostra funzione non lineare avranno un modello lineare come approssimazione di primo ordine. Quindi, se un'approssimazione lineare (regressione) non ci dà il risultato atteso, allora non ha senso andare a gradi più alti di non linearità. Anche la regressione lineare può essere risolta con diversi metodi (RMS, MNM, e altre funzioni di errore arbitrarie), che ho provato tutti.

A proposito, tutti i modelli econometrici ARMA, ARIMA e altri modelli sono casi individuali del suddetto modello y[n] = f(x1[n-d1],x2[n-d2],...) dove alcuni input sono output ritardati, cioè y[n-1], y[n-2], da cui il nome di modelli "autoregressivi". Anche se non è salutare risolvere i modelli autoregressivi con i metodi RMS o CMM perché i coefficienti ottenuti portano a modelli oscillatori. Abbiamo bisogno di Burg, Covarianza modificata e così via. Ma ho superato questo capitolo "autoregressivo" molto tempo fa e non voglio tornare indietro. Anche se il mio modello di mercato permette di selezionare un'uscita ritardata come uno degli input. Ma finora non ha mai scelto una tale entrata "autoregressiva", il che significa che gli indicatori economici sono più adatti a prevedere il prezzo che il prezzo stesso in passato (che costituisce la base della stragrande maggioranza dei metodi dei trader basati sull'analisi tecnica)

Immagino che sia quello che intendevo ))))

Costruisco la regressione sull'insieme dei dati e ottengo modelli "così così", e anche altri metodi danno quasi sempre modelli "così così".

e se una regressione lineare dà un modello "più o meno", allora noto che altri metodi possono migliorarlo un po

 
Sarebbe utile dare una definizione chiara, o almeno un chiarimento di ciò che si intende per "previsione", "previsione", ecc. Qual è l'orizzonte di una "previsione"? Senza questo, le "previsioni" non hanno senso. Perché, a seconda dell'orizzonte, la stessa "previsione" può essere corretta per un orizzonte e scorretta per un altro orizzonte. Inoltre, tali trame possono alternarsi molte volte.
Motivazione: