Galateo del mercato o buone maniere in un campo minato - pagina 18

 
paralocus >> :

Neutron, volevo anche chiedere della formazione di Hebb (letta da Wasserman). Sembra che la formula per la correzione dei pesi sia molto semplice:

Wij(t+1) = Wij(t) + [OUTi(t) - OUTi(t-1)]*[OUTj(t) - OUTj(t-1)] e nessuna caduta di gradiente. Funzionerà?

Leggete per quali reti e in quali casi viene utilizzato.

 
HideYourRichess писал(а) >>

Ho una dimensione fissa. Inoltre, se i vostri importi di vincita/perdita sono distribuiti secondo una legge normale, allora sospetto che questo corrisponda a un importo fisso.

Ora anche le mie tangenti perdenti e vincenti sono uguali. Per questo ho dovuto scavare in tutto il TC, affilando ad una dimensione fissa dei trucchi, ma si può usare tutta la potenza del MM ottimale, che in questo caso ha una rappresentazione analitica accurata e, inoltre, nel lungo periodo, quando si reinvestono fondi, nessun altro TS diverso da questo non darà più redditività! Per essere giusti, bisogna notare che in generale questa affermazione non è vera e che esiste una strategia a rendimento più elevato, ma solo per un mercato in tendenza e un alto grado di prevedibilità(p>0,2), che per il mercato non è mai il caso. Questa strategia sarebbe quella di "bloccare le perdite per far crescere i profitti".

La fig. a sinistra è l'immagine familiare che mostra il logaritmo del profitto TS ottimale per diversi valori della leva di trading L. Combina i risultati della simulazione numerica con il metodo Monte Carlo di funzionamento del TS a quotazioni identiche a quelle del mercato (EURUSD) tenendo conto della commissione - Sp. La media viene effettuata per 200 sessioni di trading indipendenti, ogni sessione ha 1000 scambi. Il capitale iniziale è preso come 1 (ln(1)=0), i baffi mostrano la dispersione tipica dei risultati di trading sul livello 1/e. Il blu mostra il risultato della soluzione analitica della Basic Trading Equation:

...1.

A proposito, il lavoro di Edward Thorpe "Kelly's Criterion in Blackjack, Sports and Stock Market" fornisce una soluzione analitica per la varianza del saldo del conto alla fine del trading e permette di stimare la fascia in cui è probabile che il nostro conto finisca dopo n-transazioni. Ma Thorpe ha commesso un errore nel ricavarlo e il risultato non corrisponde alla realtà. Sono stato in grado di ottenere una relazione simile e il risultato è rappresentato come linee di cerchi blu. Si può vedere l'eccellente accordo con i risultati degli esperimenti numerici. Ecco un'espressione per la varianza dei risultati degli scambi con fondi reinvestiti:

............................................... 2.

Naturalmente, per noi, come commercianti, l'interesse principale è l'analisi del rischio di rovina completa. La figura a destra mostra i risultati della simulazione numerica del massimo prelievo del deposito come percentuale del suo valore attuale (linea blu). Possiamo vedere che più grande è la leva che usiamo, più rischioso è il drawdown del conto. Possiamo trovare il valore medio di questi drawdown massimi e la dispersione del processo (dati rossi). Sfortunatamente, questa caratteristica del processo di trading non è affatto informativa. La questione è che all'aumentare del tempo trascorso da un trader sul mercato, aumenta il numero di transazioni effettuate e, di conseguenza, aumenta il rischio di rovina. Cioè, il fatto del fallimento è una questione di tempo! E non importa quanto siano attente le tattiche utilizzate nel commercio, prima o poi saremo portati a zero! Questo è vero. È importante fermarsi in tempo e togliere la crema. In ogni caso la MM ottimale garantisce il massimo tasso di crescita del deposito ai parametri misurati del TS (grado di prevedibilità - p e l'orizzonte commerciale - H). Sì, perderemo il deposito, ma ricominceremo anche da capo e il tasso di crescita globale del nostro benessere (tenendo conto delle possibili perdite) sarà il più alto possibile in Natura!

Vi ricordo che un MM ottimale garantisce il massimo tasso di crescita del deposito solo quando il TS è positivo MO o, analogamente, quando p>0 e voglio notare che il tasso di crescita del deposito (il valore inverso del tempo caratteristico di raddoppio del deposito) a valori ottimali di leverage e orizzonte di trading aumenta significativamente con l'aumentare della credibilità della previsione p:

................................................................................... 3.

- come quarto grado del parametro. In una tale situazione è molto importante mettere il massimo impegno nello sviluppo di un TS che permetta di ottenere la massima precisione di previsione possibile, e se ciò richiede di aumentare la capacità del NS (il numero di neuroni nello strato nascosto), non bisogna risparmiare energia e tempo, perché l'obiettivo paga. Bene, l'obiettivo dell'ottimizzazione di TC è trovare la massima funzionalità:

......................... 4.

Lo si cerca cercando un solo parametro - l' orizzonte di trading H, poi si calcola l'affidabilità della previsione che gli corrisponde - p. Il valore H trovato è considerato ottimale e viene scambiato finché la tendenza generale del mercato non cambia. Il mercato è monitorato continuamente. Fortunatamente, questo non richiede molte risorse se è disponibile una soluzione analitica.

Si dimostra che al reinvestimento dei fondi il TS ottimale è il TS di Bernoulli, cioè il TS in cui SL e TP dell'ordine sono uguali e pari a Hopt trovato dalla massimizzazione del funzionale sui risultati del trading. Inoltre, c'è una leva ottimale Lopt che fornisce il massimo tasso di crescita del deposito tale che qualsiasi altra MM darà un profitto minore su un lungo intervallo di tempo:

......................................................................... 5.

A questo punto, il tema di una MM ottimale quando si lavora con uno strumento può essere considerato risolto teoricamente e finito nella pratica. La questione della massimizzazione dell'affidabilità della previsione degli incrementi di prezzo per il trading range specificato Hopt rimane irrisolta. È ovvio che questo compito per la rete neurale con un blocco di riapprendimento ad ogni transazione.

 
Neutron >> :

Ora state risolvendo il problema dell'ingresso ottimale del NS. Naturalmente, si può semplicemente mettere tutti i tipi di indici sull'input, sperando che la griglia decida cosa è meglio per lui... Ma è meglio pensare "qual è il TS ottimale sul mercato? Forse dovresti prevedere i suoi momenti?

Leggete questo lavoro. Naturalmente ci sono alcuni difetti, ma non sono principali:

Durante la lettura di Ezhov, ho il sospetto che gli induks, almeno in quella forma, non siano affatto necessari! Tutti questi RSI e stocastici non servono a niente::)

 

Lo dico da molto tempo.

Il fatto è che una parte significativa di tutti gli indicatori usati nell'AT sono in qualche modo costruiti usando la media delle serie di prezzi. Per esempio, l'RSI contiene la media degli incrementi di tasso positivi e la media di quelli negativi. Andrebbe bene, ma l'inevitabile FP che appare quando si cerca di fare la media della BP, riduce tutti i nostri sforzi a niente. E non è casuale; si può dimostrare rigorosamente che la previsione di BP usando lo smoothing è possibile solo per GR, le cui letture della prima differenza sono positivamente correlate. Per i BP di tipo prezzo questa condizione non è mai soddisfatta! Da qui i risultati inevitabilmente deludenti. Non è possibile fare la media o smussare le serie di prezzi per la previsione. Avete bisogno di altri approcci di analisi. In particolare, metodi di regressione (se c'è un modello) o metodi di rete neurale (se non c'è un modello).

La bellezza della soluzione analitica che ho presentato nel post precedente è che abbiamo esplicitamente la funzione (4), la cui massimizzazione può essere trasferita a NS. Il nostro compito in questo caso è estremamente semplice - dobbiamo assicurarci che Internet non cada :-)

 
Neutron >> :

Lo dico da molto tempo.

Il fatto è che una parte significativa di tutti gli indicatori usati nell'AT sono in qualche modo costruiti usando la media delle serie di prezzi. Per esempio, l'RSI contiene la media degli incrementi di tasso positivi e la media di quelli negativi. Andrebbe bene, ma l'inevitabile FP che appare quando si cerca di fare la media della BP, riduce tutti i nostri sforzi a niente. E non è casuale, possiamo dimostrare rigorosamente che la previsione di BP usando lo smoothing è possibile solo per GR, le cui letture della prima differenza sono positivamente correlate. Per i BP di tipo prezzo questa condizione non è mai soddisfatta! Da qui i risultati inevitabilmente deludenti. Non è possibile fare la media o smussare le serie di prezzi per la previsione. Avete bisogno di altri approcci di analisi. In particolare, metodi di regressione (se c'è un modello) o metodi di rete neurale (se non c'è un modello).

La bellezza della soluzione analitica che ho presentato nel post precedente è che otteniamo esplicitamente il funzionale (4), la cui massimizzazione può essere trasferita a NS. Il nostro compito in questo caso è estremamente semplice - dobbiamo assicurarci che internet non vada in crash :-)

Neutron, credo di cominciare a capire qualcosa! Ho molte domande e anche un paio di idee.

Tacchini all'inferno! Ieri ho fatto un esperimento divertente: volevo scoprire qual è la capacità di un perceptron di prevedere gli incrementi.

L'immagine mostra UN !!! perceptron per 2 mesi dopo l'ottimizzazione. Sono scioccato!



Ho molte domande, non riuscirò a scriverle tutte insieme.

1. Influenzo il segnale d'ingresso con un'ipertangente, e per uniformare la sua densità di distribuzione, moltiplico prima il segnale per il coefficiente K > 1 (prima dell'ipertangente).

Il più delle volte, è possibile ottenere una distribuzione abbastanza uniforme, cioè si ottiene la seguente funzione: F(t) = tn(K * Y(t)). Scelgo K empiricamente, in un indicatore appositamente affilato. Tuttavia non è sempre possibile. Di solito, la densità della distribuzione ipertangente del segnale d'ingresso, prima della moltiplicazione di questo segnale per K, si presenta così:



E dopo aver moltiplicato per K appare così:


Cioè, il segnale d'ingresso (la sua ipertangente) è un po' allungato su un intervallo di +/-1.

Ma nel caso degli incrementi BP otteniamo un segnale che non può essere ridotto a una distribuzione uniforme.

Ecco il segnale prima della moltiplicazione:


Dopo la moltiplicazione: (vedere questo nel mio indicatore non è sempre possibile perché il centro "scompare")



Dato che ho già visto che lo sbiancamento dell'input influenza significativamente la qualità dell'apprendimento e, di conseguenza, la prevedibilità, vorrei sapere se non c'è altro metodo che la moltiplicazione del segnale?

E se no, cosa fare?

 
Neutron >> :

La bellezza della soluzione analitica che ho dato nel post precedente è che abbiamo ottenuto esplicitamente il funzionale (4), la cui massimizzazione può essere trasferita a NS. Il nostro compito in questo caso è molto semplice - è necessario assicurarsi che Internet non cada :-)

Il tema principale di questo thread ho già avuto modo di apprezzarlo! -:) Sei un genio e non sto scherzando!

Ho un'idea. Molto probabilmente uno fresco. Ho avuto un "corto circuito" ieri sera... su tutti i livelli della mia rete neurale personale -:)

Il punto è che ho studiato l'uomo per tutta la vita, non solo nel contesto della sua realizzazione sociale e personale - perché tutto questo è "superficie" - ma come un fenomeno olistico dell'essere e un "vaso di coscienza". Nel giro di una notte, tutto ciò che avevo raccolto nel corso degli anni era ora sistematizzato (auto-organizzato) da una raccolta strutturata di fatti e ipotesi in un tutto integrale.

Non posso nascondere la mia gioia! Oh, bene... Questa era una digressione.

L'idea è semplice:

Per aumentare la robustezza dei NS di qualsiasi scala o scopo, bisogna cercare di infettarli... infettarli. Un virus è certamente fatale per la logica deterministica di una macchina di Turing - per la NS e l'intelligenza artificiale, con un'applicazione adeguata e "dosata" può rivelarsi solo "acqua viva". Ora parliamone uno per uno:

1. Tutti gli organismi viventi sono l'essenza delle reti neurali. L'affermazione può sembrare troppo audace, ma è un fatto fenomenologico.

2. Tutti gli organismi viventi sono posti in un ambiente aggressivo allo scopo di imparare - la chiamiamo evoluzione. Dobbiamo solo ricordare che insieme all'evoluzione delle forme, c'è una continua evoluzione delle coscienze individuali incarnate in quelle forme. La coscienza stessa è un effetto della complessità del sistema (rete neurale), e il suo "Planck" evolutivo - :), presumo - è il rapporto tra la complessità del sistema e l'entropia del sistema.

3. I sistemi la cui entropia è scesa sotto un certo limite si estinguono perché sono incapaci di un'ulteriore evoluzione; tuttavia, anche i sistemi la cui entropia è salita oltre un certo limite si autodistruggono. Da qui, la conclusione: perché un sistema possa evolvere con successo, la sua entropia dovrebbe periodicamente, per un certo periodo di tempo, raggiungere i valori massimi ammissibili nel sistema dato. Un tale stato di cose lo chiamiamo "malattia". Dicendo la parola "malattia" la intendo in un senso piuttosto ampio - un criminale dall'aspetto abbastanza sano è un uomo malato. Solo che non è il suo corpo ad essere malato, ma la sua mente e il dolore che riceve, per lo più non sotto forma di febbre o influenza, ma sotto forma di una cosiddetta "croce pesante", "destino" e così via. Tuttavia, questo dolore "sociale" che ricevono è una sorta di influenza pedagogica del continuum evolutivo - innalzando l'entropia della creatura a limiti difficilmente sopportabili. Questo solleva una questione filosofica sull'insegnante e i suoi obiettivi... che, tuttavia, è ben oltre lo scopo della nostra discussione sul forum -:)

4. quelli che sopravvivono - hanno sviluppato l'immunità - nel senso più ampio - cioè non solo contro i germi patogeni e sociali, ma più importante per l'evoluzione - esterno transazionale e interno transazionale.

5. In qualsiasi sistema vivente, ci sono tali "microrganismi" che sicuramente lo uccideranno se il sistema immunitario è abbastanza indebolito. Perché la natura ha fatto questo? Per aumentare la capacità dello stesso sistema di resistere ai fattori dell'ambiente, cioè per avere più opportunità (tempo) di continuare l'evoluzione individuale attraverso un costante "allenamento" interno del sistema per la sopravvivenza.

6. Supponiamo che il compito di un sistema in evoluzione sia quello di sviluppare l'immunità (in tutti i sensi). Poi si scopre una cosa interessante: il numero di ingressi dei NS viventi così come il numero di uscite (ancora meno) è ridicolmente piccolo in confronto al numero dei loro neuroni e connessioni! Cioè aumentiamo bruscamente il numero di neuroni nello strato intermedio (se ci sono tre strati - input, nascosto e output), e ora possiamo provare a "infettare" il NS. Questo può essere fatto introducendo un errore randomizzato misurato durante la correzione dei pesi! E andando un po' oltre, è possibile un allenamento alternativo del NS aumentando o diminuendo la frequenza o l'ampiezza di questo errore randomizzato.

Per esempio, prima della correzione dei pesi potremmo provare ad aggiungere un piccolo errore al correttore con una funzione che (casualmente) una volta ogni 1000 chiamate ad essa restituisca un valore casuale da un certo intervallo (ad esempio +0,01 / -0,01 ). Non si sa quando o quale neurone avrà un piccolo incremento errato. Più spesso si verificano tali incrementi - più alta è l'entropia del sistema. In questo caso la NS dovrà tener conto... il proprio errore!

Tali pensieri...

 
Neutron >> :

Tutto questo è fantastico, tranne che per una piccola cosa. Avete un errore nella formula originale. Il punto è che l'espressione 1+(L*(sigma*H-Sp)/S) non è equivalente al guadagno di capitale per scambio, che è quello che stai cercando di usare invece questa espressione. Francamente, non capisco su quale base l'hai preso per "ovvio". Questo è il primo punto. In secondo luogo, la formula deve essere diversa per le diverse coppie di valute. Ci sono solo tre versioni della formula: per coppie con "quotazioni dirette", "quotazioni inverse" e "tassi incrociati". Per le coppie "a quotazione diretta", per esempio, l'importo del guadagno, come frazione del capitale totale, può essere calcolato come segue: (TakeProfit-Spread)*size_one_lot*numero di_lotti/deposito. Corrispondentemente, per trovare il rapporto di guadagno, aggiungete 1 alla formula. L'espressione "size_one_lot*number_lots" è il volume di denaro coinvolto nella transazione, tenendo conto della leva. Più in generale, per le quotazioni dirette, c'era una formula da qualche parte tra gli articoli: risultato finanziario = (Prezzo di vendita - prezzo di acquisto) * numero di lotti * dimensione di un lotto - commissione * numero di lotti ± interesse bancario. In questa formula, lo spread è direttamente calcolato nei prezzi.

 
HideYourRichess писал(а) >>

È tutto fantastico, tranne una piccola cosa. Avete un errore nella formula originale. Il punto è che 1+(L*(sigma*H-Sp)/S) non è equivalente al guadagno di capitale per trade, che è quello che stai cercando di usare.

Grazie, HideYourRichess, per esserti preso la briga di controllare i calcoli. So quanto sia doloroso controllare i calcoli di qualcun altro. Naturalmente, non escludo errori nelle formule e nelle ipotesi da cui sono derivate, quindi cerco di controllare i risultati della soluzione analitica con un esperimento numerico. Nel nostro caso abbiamo modellato il processo di incremento discreto del prezzo con il passo di incremento uguale H punti. Inoltre, c'era una dipendenza fissa dell'incremento atteso dall'incremento precedente: p= somma di tutti gli incrementi consecutivi divisa per il numero raddoppiato di tutti i movimenti. Per un quoziente di mercato reale si può visualizzare una ripartizione simile e trovare il coefficiente p corrispondente.

Quindi i risultati della modellazione numerica coincidono perfettamente con i risultati della soluzione analitica ottenuta da me (vedi fig. a sinistra sopra). Di conseguenza, non c'è nessun errore in questa formulazione del problema e nella sua soluzione analitica! È possibile discutere sulla corrispondenza del modello alla realtà, ma non c'è nessun problema qui - posso sempre implementare questo partizionamento su un quoziente e trovare p.

paralocus ha scritto >>.

Sono già riuscito ad apprezzare l'argomento principale di questo thread!

Grazie per le gentili parole, ma cosa ci può essere di speciale nel sapere come prendere le derivate e trovare l'estremo di una funzione? Molte persone semplicemente non vogliono essere impegnate in un'analisi dettagliata, è più facile correre direttamente alla cava.

Più tardi penserò attentamente a quello che hai scritto sopra.

 
Neutron >> :

Grazie per le vostre gentili parole...


Grazie!

Eccone un altro:

1. Un'altra opzione per infettare il sistema è quella di introdurre un ulteriore input casuale in un neurone o un gruppo di neuroni - un organo.

2. "Organo" può essere rappresentato come un gruppo specializzato di neuroni che hanno un feedback universale - cioè ogni neurone dell'organo "sa" cosa c'è all'uscita di ogni altro neurone del suo gruppo (organo o famiglia), e ogni gruppo è consapevole di cosa c'è all'uscita dell'organismo. Un tale NS sarà capace di auto-adattamento dinamico e la necessità di apprendimento sarà una delle sue dominanti - cioè, il sistema può intenzionalmente e auto-motivatamente cercare e generalizzare la conoscenza di cui ha bisogno. Il nostro compito sarà quello di costruire ostacoli per esso e spargere pezzi di conoscenza qua e là -:)

 
Neutron >> :


Quindi, i risultati della simulazione numerica coincidono perfettamente con i risultati della soluzione analitica ottenuta da me (vedi fig. a sinistra sopra). Di conseguenza, non c'è nessun errore in questa formulazione del problema e nella soluzione analitica ottenuta! È possibile discutere sulla corrispondenza del modello alla realtà, ma qui non c'è alcun problema - posso sempre implementare questo partizionamento su un quoziente e non ci sono problemi nel trovare p.


C'è un po'qui sulla leva e alcuni dei "trucchi" associati ad essa. Questa è una simulazione su un emulatore di server di trading.