Regressione bayesiana - Qualcuno ha fatto un EA usando questo algoritmo? - pagina 46

 
Yuri Evseenkov:

A un tentativo di applicare la formula bayesiana. Di nuovo.

Compito. Usando il teorema di Bayes, determinare quale valore di una zecca non ancora arrivata è più probabile.

Dato. Serie temporale x,y.

y=ax+b Una linea dall'ultimo tick al futuro.

P(a,b|x,y)=P(x,y|a,b)*P(a)*P(b)/P(x,y); (1) formula di Bayes.

P(a,b|x,y)è la probabilità che i coefficienti a e b corrispondano alle coordinate x e y di un futuro tick.

Dobbiamo trovare a e b tali che questa probabilità (o più correttamente,una misura di probabilità) sia massima.

P(x,y|a,b) - prendiamo l'istogramma reale della distribuzione dei tick per livelli di prezzo come funzione di verosimiglianza. La funzione è definita da un array bidimensionale (matrice): range di prezzo - probabilità, rapporto percentuale di tick che rientrano in questo range rispetto al numero totale di tick.

P(b) - la distribuzione normale degli incrementi è presa come probabilità a priori b. Viene usato il PRNG con il valore normalmente distribuito.

Il coefficiente P(a) a determina la pendenza della linea retta e il segno dell'incremento previsto. Per ora sto pensando di usare il codice di regressione lineare che ho postato prima. Cioè prendere la probabilità del coefficiente a trovato lì come unità. E in (1) sostituire la probabilità P(a) calcolata tenendo conto della differenza di questa a e quella calcolata per la y data.

Forse avete qualche idea su come si comporta il segno incrementale di ogni tick?


Abbozzato 2 indicatori, lavorando sulle zecche. Il primo definisce A e B per la regressione lineare (per l'offerta e la domanda separatamente, nel caso), e traccia una linea. Il secondo è un istogramma di valori di tick (rosso - Ask, blu - Bid). Ogni barra dei grafici a tick è un nuovo tick, non coincidono con le barre del grafico stesso.

Questo è tutto ciò che ho capito dal post. Cosa c'è dopo? Se capisco la logica, la finirò.


 
Dr.Trader:

Usare i tick per la previsione è pericoloso secondo me, e il modello dovrebbe essere impostato per ogni broker separatamente.

Per quanto riguarda i tick effettivi - possono essere molto diversi da broker a broker.

Sono d'accordo. Ho scritto sopra. Lo dirò di nuovo.

Forex è un sacco di società di intermediazione, società di forex, cucine - europeo, cinese, Bahamas, Bermuda ... Ce ne sono molti. Nessuno di loro domina e non contribuisce in modo decisivo alla formazione dei prezzi, e nemmeno nessun attore del mercato. L'ipotesi si basa sul teorema del limite centrale della teoria della probabilità (CLT):

"La somma di un numero sufficientemente grande di variabili casuali debolmente dipendenti che hanno approssimativamente la stessa grandezza (nessuna singola sommatoria domina, nessun contributo determinante alla somma) ha una distribuzione che è vicina alla normalità" (Wikipedia).

Come lo capisco in relazione al forex. Se raccogliamo tutti i tick di TUTTE le società di intermediazione in una barra M5 (milioni di tick) allora la distribuzione dei tick all'interno della barra sarà vicina ad una normale. E più vecchio è il timeframe, più è vicino. Ogni particolare società di intermediazione ha il proprio flusso di quotazioni che differisce dal flusso globale dominante per la misura della svalutazione di questa società di intermediazione. Questo flusso dominante sul grafico è una curva (certamente non dritta!) dalla quale nessuna società di intermediazione può andare lontano.

Qui in questo thread la gente ha reagito in modo scettico alla formulazione di wikipedia della CDT. Anche a me sembra scorretto. Anche se da allora ho incontrato questa formulazione in altre fonti. Anche il Riferimento MQL4 ha un esempio dell'indicatore secondo questa dicitura.

Così, penso che il TPT si regoli su un numero sufficientemente grande di incrementi nel periodo della debole influenza dei fattori fondamentali.

 
Dr.Trader:

Abbozzato 2 indicatori, lavorando sulle zecche. Il primo definisce A e B per la regressione lineare (per l'offerta e la domanda separatamente, per sicurezza), e traccia una linea. Il secondo è un istogramma di valori di tick (rosso - Ask, blu - Bid). Ogni barra dei grafici a tick è un nuovo tick, non coincidono con le barre del grafico stesso.

Questo è tutto ciò che ho capito dal post. Cosa c'è dopo? Se capisco la logica, la finirò.


Voglio calcolare le probabilità usando la formula di Bayes. La regressione lineare e il coefficiente a trovato si applicano solo per calcolare la probabilità a priori P(a).
 

Supponiamo che ci sia un prezzo di riferimento, che è dato dai fornitori di liquidità, e le quotazioni dei broker rimbalzano intorno ad esso. In questo caso la quotazione di ogni broker ballerà in un certo intervallo intorno al "prezzo principale", formando una specie di cupola sull'istogramma. Se si sommano gli istogrammi delle cupole, si finisce con qualcosa che assomiglia a una distribuzione normale nella forma, sono d'accordo.

Ma ancora non funziona per noi, stiamo lavorando con le quotazioni di un particolare broker, e una distribuzione normale è improbabile. Ho osservato l'istogramma per un po', il mio broker mi dà un massimo di 4000 tick (che sono circa 20 minuti), li uso tutti per l'istogramma. È più simile a una mezza elisse sdraiata su un lato. Se il prezzo inizia a salire/scendere - l'elisse cresce un lato sottile, ma alla fine riprende la sua forma. Ma a volte ci sono due picchi. Si può provare a descrivere questo dato medio con qualche altra distribuzione e usarlo nei calcoli (e non con la Gaussiana). Se fai un istogramma con un piccolo numero di tick, per esempio un centinaio, è solo una distribuzione informe che salta continuamente, non credo che funzionerà, hai bisogno di mille o più tick.

L'istogramma nell'immagine qui ha il terzo destro come risultato di rapidi cambiamenti di prezzo, e poi il tutto dovrebbe prendere la forma dei due terzi di sinistra.

 
Dr.Trader:

Supponiamo che ci sia un prezzo di riferimento, che è dato dai fornitori di liquidità, e le quotazioni dei broker rimbalzano intorno ad esso. In questo caso la quotazione di ogni broker ballerà in un certo intervallo intorno al "prezzo principale", formando una specie di cupola sull'istogramma. Se si sommano gli istogrammi delle cupole, si finisce con qualcosa che assomiglia a una distribuzione normale nella forma, sono d'accordo.

Ma ancora non funziona per noi, stiamo lavorando con le quotazioni di un particolare broker, e una distribuzione normale è improbabile.

Questa è un'altra domanda. Riguarda l'applicazione pratica.

Nella formula (1) la funzione di probabilità P(x,y|a,b) è un istogramma reale di tick reali di un broker concreto reale. Per esempio la probabilità P(x,y|a,b)=0,12 se il 12% di tutti i tick nella finestra cade in y(prezzo)+range(set). Costruisco l'istogramma nel profilo.



Poi ci sono i moltiplicatori di correzione, le probabilità a priori P(a) e P(b). Quindi, come P(b) ho scelto una distribuzione normale dei prezzi PRIRATI. Perché, è scritto nei post precedenti.

 

Ho letto il documento nel primo post, non viene fuori bene per niente.

Non è riuscito a superare molte delle formule, quindi ecco solo una libera parafrasi. L'autore ha un prezzo bid e ask per bitcoin per mezzo anno, con un intervallo di 10 secondi. Fa un programma (classificatore) che prenderà i prezzi attuali e restituirà tre segnali - per comprare, per vendere e solo per tenere le posizioni aperte. La previsione è fatta per 10 secondi avanti. Ogni 10 secondi, il programma dovrebbe ricevere nuovi dati e contarli di nuovo tutti. I dati iniziali sono divisi in diversi vettori e utilizza questi vettori per la previsione dei prezzi. Il classificatore ottiene tre array di dati - uno per gli ultimi 30 minuti, il secondo per gli ultimi 60 minuti, il terzo per gli ultimi 120 minuti (ogni array è ancora il prezzo con 10 secondi di intervallo). Non capisco più niente. Le formule sono molto simili a quelle dei neuroni, cioè ogni valore di input corrisponde a qualche peso. Ma questi pesi sono applicati a tre matrici contemporaneamente. E poi improvvisamente si scopre che i pesi non possono essere trovati (ma questo è un neurone, no?) e dobbiamo provare tutte le varianti. Empiricamente l'autore ha dedotto qualche formula, che dovrebbe aiutare con l'ottimizzazione dei pesi, rifiutando ciò che ovviamente non è adatto, e da qualche parte si usa la regressione bayesiana. Anche il risultato della regressione è probabilmente usato come valore di input per il classificatore.

Mi sembra la tesina di uno studente fatta un paio di notti prima della scadenza. Non ci sono prufs di guadagno :)

Anche se la regressione bayesiana è usata, è lì come una piccola parte di un sistema complesso. Forse a causa dei pesi ottimizzati la sua influenza è ridotta a zero. Tanto vale mettere un generatore di numeri casuali nei neuroni o nel calendario Maya, tanto la loro influenza sarà ridotta a zero durante l'ottimizzazione.

 
Non sono riuscito a superare il primo post in lingua inglese. Sto cercando di capire gli esempi del teorema bayesiano in altri settori. E sto solo cercando di calcolare le probabilità di accadimento di questo o quel prezzo usando la formula di Bayes. E la distribuzione normale non è affatto un attributo necessario. È solo una delle ipotesi di una delle probabilità a priori finora.
 

Mi sono imbattuto in due articoli sul tema del ramo - può essere utile agli appassionati

Articolo 1.

Regressione bayesiana con STAN: parte 1 regressione normale

Articolo 2

Regressione bayesiana con STAN Parte 2: oltre la normalità

Ogni articolo è una pubblicità per due libri con lo stesso titolo

Bayesian regression with STAN: Part 1 normal regression
Bayesian regression with STAN: Part 1 normal regression
  • Lionel Hertzog
  • datascienceplus.com
This post will introduce you to bayesian regression in R, see the reference list at the end of the post for further information concerning this very broad topic. Bayesian regression Bayesian statistics turn around the Bayes theorem, which in a regression context is the following: $$ P(\theta|Data) \propto P(Data|\theta) \times P(\theta) $$...
 

Voi - ingegneri, fisici, operatori radio - siete così strani.....

Molte volte vi ho detto qui che i quint, gli alt-traders, i market-makers - non sono idioti, che sono BUONI in matematica, che non sono pagati PER SEMPRE a 100K+ GEL all'anno + bonus, ma voi tutti sembrate non capirlo.

Il prezzo nel mercato azionario è l'espressione di un sistema CONNESSO, quindi qualsiasi modello di prezzo utile (marginalmente adeguato) NON può essere semplice. Sì, ci può essere la regressione bayesiana all'interno, ma solo come metodo numerico ausiliario. E tu lanci una mandria contro "questa tua coda, la calpesteremo qui con il solo metodo bayesiano!

Beh, forse questo vi farà capire: l'elenco dei metodi matematici utilizzati attivamente nel trading da grandi market maker, banche e hedge fund. Questa lista è anche divisa per sotto-specialità, cioè per tipi di strumenti finanziari negoziati e per tipi di previsione nelle banche. Questa lista è stata redatta da un ex dipendente senior di Citi e JPMorgan. L'elenco non è segreto, lo si può capire da 5-10 libri di matematica finanziaria (in inglese). Ma sul forum russo, e anche in una forma così completa - la lista è rara.

Scienziato dei dati, statistico
25000 USD
Descrizione del lavoro
REQUISITI PROFESSIONALI (apprezziamo di più il desiderio di imparare in movimento)

Conoscenze avanzate di statistica e serie temporali: processi stocasticiStrumenti: SSA/SVD, RSSA, FIMA/ARFIMA, Nonlinear Autoregressive Exogenous Model (NARX), (N)GARCH e i suoi derivati, esponente di Hurst e le sue applicazioni, analisi di quantificazione della ricorrenza (RQA)
Esperienza di programmazione (o pronto a imparare) in Python (e set di librerie per tutte le cose statistiche)
Librerie di analisi dei dati in Python (theano, keras, Torch, Pandas, NumPy, scikit-learn) o i loro equivalenti in R
qualche esperienza con il Machine Learning, il filtraggio collaborativo, l'analisi dei cluster, la teoria dei grafici
Altri approcci misti: ANFIS (adaptive network-based fuzzy inference system)
Reti neurali: apprendimento non supervisionato: RNN (reti neurali ricorrenti), FNN, RBF, ecc.

COMPITI E AMBIENTE:
analisi statistica dei dati finanziari, applicazioni econometriche

Moderatori: si prega di eliminare accidentalmente no-fast-deleted link alla fonte originale, non posso, si blocca ancora nel vostro forum di database nel seminterrato del post. Altrimenti penseranno che sia pubblicità. Grazie.

Все вакансии компании TenViz LLC
Все вакансии компании TenViz LLC
  • www.work.ua
New York, US, based product (services) company with growing sales on 3 continents and 25−35 employees and contractors. We have a growing team in Ukraine, and are hiring full- and part-time people with...
 
Machine Learning, analista di reti neurali
28000 UAH

Descrizione del lavoro

REQUISITI PROFESSIONALI (apprezziamo soprattutto il desiderio di imparare in movimento):

Conoscenza delle reti neurali artificiali e dell'apprendimento automatico, tra cui:

Rete neurale FeedForward (FNN)
Famiglia delle reti neurali ricorrenti (RNN): incluso il Long-Short Term Memory Model (LSTM)
CNN - Convolutional Neural Networks
Radial Basis Function (RBF)
approcci misti ANFIS (Adaptive Network-based Fuzzy Inference System)
Esperienza di programmazione (o pronto ad imparare) in Python (e set di librerie per tutte le cose statistiche)
Machine Learning e librerie di analisi dei dati in Python (theano, keras, Torch, Pandas, NumPy, scikit-learn)
inoltre, una buona conoscenza di R e/o Matlab sarebbe utile

AREE RELATIVE DI CONOSCENZA:

conoscenza avanzata della statistica e delle serie temporali (processi e strumenti stocastici): ARFIMA, modello esogeno autoregressivo non lineare (NARX), trasformate wavelet
modelli di stima dello spettro - analisi dello spettro singolare (SSA) (SVD)
filtraggio collaborativo, analisi dei cluster, teoria dei grafi

COMPITI (ordine di priorità):

analisi statistica dei dati finanziari, applicazioni econometriche
costruzione di servizi e strutture per l'elaborazione interattiva distribuita di query su grandi volumi di dati del mercato finanziario