"New Neural" è un progetto di motore di rete neurale Open Source per la piattaforma MetaTrader 5. - pagina 25

 
-Alexey-:

Se avete bisogno di un codice di esempio per il metodo dell'evoluzione differenziale, posso mandarvelo. Il metodo è abbastanza semplice. Cerca gli estremi globali.

Può essere utile. Preferibilmente con riferimenti alle descrizioni, se possibile. Grazie.
 
joo:
No, non è quello che ho detto.

Il periodo di test e di ottimizzazione è un parametro di sistema importante quanto il valore di take profit, se viene usato per esempio. Ed è sciocco rimuovere alcuni dati o aggiungere alcuni dati solo perché la rete viene riqualificata. È meglio cambiare qualcosa nel conservatorio (per esempio, cambiare la topologia della rete).

TheXpert, grazie, darò un'occhiata

 
cartapesta:

Create un tale NS, signori programmatori, e cominceremo a testarlo.

Sembra che tu programmi un po'.

Lasciate che vi dia un dll con una griglia e vi mostri come usarlo (non è difficile), e voi fornite un modello per prove e discussioni. Dopo tutto, siete voi che create gli input e gli output, la griglia non si preoccupa di cosa imparare.

Vero ahimè, posso solo fornire un esempio per il 4k. Griglia eco griglia.

Non voglio darvi il codice sorgente della DLL. Se avete paura, posso dare le fonti a una persona di fiducia per la compilazione.

Posso mettere anche l'assemblaggio (dllka + EA) per far vedere a tutti.

 
Avals:
Il periodo di test e di ottimizzazione è un parametro di sistema importante quanto il valore del take profit, se viene usato per esempio. Ed è sciocco rimuovere alcuni dati o aggiungere alcuni dati solo perché la rete viene riqualificata. È meglio cambiare qualcosa nel conservatorio (per esempio la topologia).
Se hai lavorato sulle reti per circa 10 anni, allora potresti voler rispolverare la tua conoscenza del settore prima di dire qualcosa.
 
joo:
Se siete stati coinvolti nel networking circa 10 anni fa, dovreste prima rinfrescare le vostre conoscenze nel campo pertinente prima di dire qualcosa.

Vieni tu. MLP è quanto di meglio si possa fare.

Non litighiamo, signori, questo è il mio punto.

 
TheXpert:

Non litighiamo, signori, è quello che sto dicendo.

Nessuno l'ha ancora fatto.

Tuttavia, dobbiamo capire perché riducono il numero di neuroni negli strati e aumentano il numero di campioni in Sample (l'essenza è la stessa in entrambi i casi - ridurre i gradi di libertà dei neuroni) - naturalmente fino a certi limiti - finché la rete smette di imparare.

A chi serve questo compito sisifeo di creare un motore neurale, se nessuno capirà come lavorarci nel modo più semplice. Sembra che dovrai scrivere un manuale for dummies per lavorare efficacemente con il motore - come consigli utili. Altrimenti ci troveremo di fronte a un sacco di accuse da parte di semplici utenti, commercianti: "Io uso il neuro motore, ma il mio deposito si sta sciogliendo davanti ai miei occhi - che razza di oltraggio è questo? Mi lamenterò!

 
TheXpert:
Beh, è quello che è auspicabile avere qualcuno competente, ma non un programmatore.
Forse potrei farlo io. Non sono qualificato come programmatore, non ho due lauree. Ma sono bravo in qualcosa.
 

Non c'è bisogno di fare un'astronave ora, per quanta esperienza e bagaglio ognuno di voi abbia già sotto la cintura.

Non hai bisogno di una macchina, non hai bisogno di una bicicletta, solo di uno scooter. Semplice, schietto, comprensibile e affidabile. Vi solleverà a questo punto dalle dispute sulla formula del miglior carburante per un'astronave.

Il solo fatto di avere uno scooter funzionante attirerà l'attenzione. Non risolverà il super problema? Non è necessario. È sufficiente per attirare l'attenzione e ti renderà più facile scendere a compromessi sul semplice.

 
cartapesta:

Formulerò ciò di cui ho bisogno per commerciare. Gli altri commercianti aggiungeranno.

...

In quello che vorrei ottenere.

Create, signori programmatori, un tale NS e cominceremo a testarlo. Pubblicheremo i risultati dei test sul forum e li discuteremo. Con questo approccio, i commercianti e i programmatori per non molto tempo inizieranno a parlare una lingua che è comprensibile per entrambe le parti.

Da quanto precede concludo che:

Devi avere tre blocchi

1 unità di pre-elaborazione

2 NS

3 unità di post-elaborazione

La pre-elaborazione preparerà e distribuirà i dati necessari agli input.

L'NS penzola tra di loro

La post-elaborazione include sia i campioni di output che l'interpretazione degli output per Expert Advisor.

La pre-elaborazione e la post-elaborazione devono essere nella stessa classe, altrimenti potremmo avere problemi con la corrispondenza degli input e degli output per l'allenamento. Questa classe esporta due array di output (input e output) al NS, l'array di output è esportato attraverso metodi mutualmente esclusivi (in modalità di allenamento solo lettura, in modalità di lavoro solo scrittura).

Così, l'utente satura i metodi virtuali di pre e post processing con i propri, si collega alla classe di pre_post_processing di NS e chiama la classe dall'EA. La classe Expert Advisor restituisce solo dati post-elaborati (riceve dati direttamente dall'ambiente di mercato).

Qualcosa del genere.


 
Vinin:
Forse posso farlo. Non posso essere un programmatore, non ho due lauree. Ma sto arrivando a qualcosa.

Victor, qualsiasi aiuto è benvenuto.

Mischek:

Non avete bisogno di costruire un'astronave ora, per quanto possiate desiderare di farlo, data la vasta esperienza e il bagaglio che ognuno di voi ha già sotto la cintura.

Non hai bisogno di una macchina, non hai bisogno di una bicicletta, solo di uno scooter. Semplice, schietto, comprensibile e affidabile. Vi solleverà a questo punto dalle dispute sulla formula del miglior carburante per un'astronave.

Il solo fatto di avere uno scooter funzionante attirerà l'attenzione. Non risolverà il super problema? Non è necessario. È sufficiente per attirare l'attenzione e ti renderà più facile scendere a compromessi sul semplice.

Sono d'accordo. Che dire di queste astronavi, facciamo uno scooter/bicicletta (voglio dire, non bisogna inventarlo, basta implementarlo in MQL).


Fissiamo un compito specifico e pensiamo a come massimizzare la sua efficacia. Per esempio, immaginate che io non sappia cosa sia MQL5 (e conosco OOP solo a livello di dummies), non ho mai avuto a che fare con NS (non che con NS, non capisco i sistemi Expert Advisor ecc.) Ma posso scambiare le mani e avere un certo TS.

Quindi, immaginiamo che tutte le mie conoscenze siano sufficienti per formulare quanto segue:

1. Ho bisogno di un neurone che in base a certi dati e certe regole (non note in anticipo) produca un certo risultato sotto forma di un certo segnale. All'uscita avremo le seguenti opzioni: comprare, vendere, aspettare.

2 I segnali dovrebbero provenire da fonti diverse. Per esempio, può essere: semplici modelli di candele, indicatori standard (CCI, MA, RSI, Stocastico, ecc.), l'andamento dei prezzi e altre cose che possono venire in mente a un trader.

La logica e la funzionalità della rete saranno implementate in nessuna materia, e come esattamente la rete sarà addestrata, non è importante (per me NS è una scatola BLACK/SWARN). Ma in termini di formazione è importante avere l'opportunità di allenarsi utilizzando i dati da un file (o più file) pre-preparati, per le azioni di un trader/esperto su un conto di trading (o alcune altre opzioni possono essere disponibili).

4. L'insieme delle regole deve poter essere salvato in un file e, se necessario, caricato da esso.

Procedendo da tutto questo, dobbiamo ottenere un NS che consisterà di "due" strati di neuroni (ricordate, sono un tonto!):

a) Il primo strato è composto da neuroni che analizzano il segnale grezzo (indicatori, modelli di candele, flusso di quotazioni, ecc.) In una versione semplificata, ogni neurone elabora solo una fonte di input e all'uscita si ottengono tre opzioni: comprare, vendere, aspettare.

b) Riceve un segnale codificato (comprare, vendere, aspettare) da uno o più neuroni di livello "iniziale". Genera un singolo segnale basato sulle regole.