Indicatore a zig zag e reti neurali - pagina 9

 
Piligrimm:
L'intero programma è scritto in Matlab, la parte che calcola le previsioni è compilata in Matlab e gira come un eseguibile in esecuzione dall'indicatore che raccoglie i dati di input all'arrivo di una nuova barra ogni minuto. La parte che esegue l'addestramento della rete e l'ottimizzazione dei coefficienti di soglia funziona direttamente in Matlab e funziona su un timer ogni 5 minuti, perché il file ehem compilato con l'addestramento della rete non funziona, non riesco a capire il motivo, la compilazione va senza errori.


Grazie, mi occuperò della costruzione della rete in Matlab e del collegamento a MT4. Se hai qualcosa di tuo, mandalo a loknar@list.ru . Vi sarò molto grato.

 
Mathemat:
Piligrimm ha scritto (a): Ora il mio sistema si riqualifica ogni 5 minuti e ricalcola le previsioni ogni minuto all'arrivo di una nuova barra, se avessi un ordine di grandezza in più di RAM e di prestazioni, la riqualificazione sarebbe fatta ad ogni passo insieme al calcolo, e la precisione delle previsioni migliorerebbe notevolmente

Riaddestrare ogni 5 minuti e ricalcolare le previsioni ogni minuto - non è troppo spesso? E il tuo desiderio di aumentare ulteriormente la frequenza del retraining (e dei calcoli) per migliorare la precisione della previsione (ad ogni tick, o cosa?) mi sembra strano. Dubito che un sistema veramente funzionante trarrebbe beneficio da un riaddestramento ad una frequenza che coincide con quella dei dati in entrata.

P.S. E pf>25 non è solo un sogno, ma qualcosa di fuori discussione... Anche se con un rapporto di 5:1 di operazioni redditizie rispetto a quelle non redditizie e TP/SL = 5 è abbastanza fattibile.


Il diritto di dubitare è un vostro diritto. Sto solo esprimendo la mia visione del mercato e di come implementare la mia strategia. Se lavorate in un mercato relativamente calmo, allora la riqualificazione ogni 5 minuti è sufficiente. Per esempio, ho addestrato il sistema durante un giorno e poi mi collego di nuovo al mercato senza riqualificazione e faccio previsioni usando le vecchie impostazioni. Anche se l'errore nel campione di prova è dal 14% al 28%, il sistema fa previsioni soddisfacenti, anche se non c'è garanzia che la previsione per il periodo di interesse sia errata.

Cercando di fare il retraining prima di ogni calcolo, sto cercando di indirizzare la stabilità e la precisione del sistema in tutte le condizioni, i comunicati stampa, ecc. Anche se questo può sembrare ridondante, dalla mia esperienza di ricerca di mercato è un prerequisito per un sistema efficiente e inaffondabile che va sempre un passo avanti in tutte le condizioni, che è quello che ho intenzione di attuare.

 
Loknar:
Piligrimm:
L'intero programma è scritto in Matlab, la parte che calcola le previsioni è compilata in Matlab e viene eseguita come un eseguibile in esecuzione dall'indicatore che raccoglie i dati di input ogni minuto dopo il passaggio di una nuova barra. La parte che esegue l'addestramento della rete e l'ottimizzazione dei coefficienti di soglia funziona direttamente in Matlab e funziona su un timer ogni 5 minuti, perché il file ehem compilato con l'addestramento della rete non funziona, non riesco a capire il motivo, la compilazione va senza errori.


Grazie, cercherò di costruire reti in matlab e collegarle a MT4. Se hai qualcosa di tuo, mandalo a loknar@list.ru . Te ne sarei molto grato.

Per darvi un esempio, una rete semplice, ma che funziona efficacemente, io uso uno di questi:

 
Piligrimm:

Per darvi un esempio, una rete semplice ma efficace, io uso uno di questi:



Grazie per le informazioni

Se avete bisogno di qualche dispositivo per Matlab (sto scaricando la 7.5 con un mucchio di addons) o tutto il software associativo per le reti neurali, sono pronto a collaborare.

 

Per chiunque sia interessato, posso condividere la "formula della felicità"!

GP1[iq+1] = 0.3*((-0.610885 *GP1[iq-1]*GP1[iq-1]*GP1[iq-2]-0.0795671 *GP1[iq]*GP1[iq-1]*GP1[iq-1]*GP1[iq-1]*GP1[iq-2]+1.19161 *GP1[iq-1]*GP1[iq-1]-0.422269 
                   *GP1[iq])/(GP1[iq-1]*GP1[iq-1]-0.505662 *GP1[iq]*GP1[iq-1]*GP1[iq-1]-0.415455 *GP1[iq-2]*GP1[iq-2]))+0.7*((-0.610885 *GP1[iq-2]*GP1[iq-2]*GP1[iq-3]
                   -0.0795671*GP1[iq-1]*GP1[iq-2]*GP1[iq-2]*GP1[iq-2]*GP1[iq-3]+1.19161 *GP1[iq-2]*GP1[iq-2]-0.422269 *GP1[iq-1])/(GP1[iq-2]*GP1[iq-2]-0.505662 *GP1[iq-1]
                   *GP1[iq-2]*GP1[iq-2]-0.415455 *GP1[iq-3]*GP1[iq-3]));
 
GP1 - это или точки перелома в Зиг-Заге, или в любой другой последовательности, которую Вы хотите прогнозировать, например, МА, или просто цены валют, 
хотя я в этих вариантах не проверял, но думаю будет работать.
В расчетах используются переменные сформированные в обратном порядке по отношению к стандартной индексации в МТ4, если хотите применять формулу для
прямой индексации МТ4,то iq-..., замените на iq+... .
Прогноз не 100%, но лучше, чем ничего, использовать в индикаторах можно.

Per l'adattamento individuale al vostro compito potete anche giocare con i coefficienti: 0,3*( e 0,7*(, in totale dovrebbe essere uno.

 
Piligrimm:

Per chiunque sia interessato, posso condividere la "formula della felicità"!

GD[iq] 
Qualche polinomio selvaggio di numeri casuali (se GD[iq] è una citazione). Forse avrebbe senso se per qualche legge si ricalcolassero i coefficienti costanti -0,610885 ecc. Potresti per favore dirmi la teoria con cui si ottiene questa terribile formula :-). O è la proverbiale intelligenza di NS
 
Piligrimm:

Per chiunque sia interessato, posso condividere la "formula della felicità"!

Per l'adattamento individuale al vostro compito potete anche giocare con i coefficienti: 0,3*( e 0,7*(, in totale dovrebbe essere uno.


Allora, cos'è l'iq? Se parliamo di uno zigzag, è semplicemente una sequenza dei suoi indici? Cioè iq-1 sarebbe il punto di rottura precedente dello zigzag?
 
Loknar:
Piligrimm:

Per chiunque sia interessato, posso condividere la "formula della felicità"!

Per un adattamento individuale al vostro compito potete anche giocare con i coefficienti: 0,3*( e 0,7*(, la somma dovrebbe essere uno.


Quindi cos'è l'iq? Se parliamo di uno zigzag, è solo una sequenza dei suoi indici? Cioè iq-1 è il punto di rottura precedente dello zigzag?

Sì, esattamente così, iq-1 è il punto precedente. Ho sviluppato questo polinomio per il mio indicatore i cui grafici sono mostrati sopra. Non l'ho controllato ma spero che possa essere utile a qualcuno.

Se parliamo dell'algoritmo utilizzato per costruire questo polinomio, si basa sul trovare leggi che collegano diversi argomenti, in questo caso argomenti in ritardo rispetto alla tendenza da prevedere.

La figura mostra come questo polinomio funziona per me: la linea blu è l'andamento sui punti di flesso, la linea rosa è quella passata attraverso il polinomio. I dati inseriti sono normalizzati, da cui questa scala di scala.

 
Piligrimm писал (а): Per chiunque sia interessato, posso condividere la "formula della felicità"!
GP1[iq+1] = 
Eccoti qua, renna...
 
Prival:
Piligrimm:

Per chiunque sia interessato, posso condividere la "formula felice"!

GD[iq] 
Qualche polinomio selvaggio di numeri casuali (se GD[iq] è una citazione). Forse avrebbe senso se per qualche legge ricalcolasse i coefficienti costanti -0,610885, ecc. Potresti per favore dirmi la teoria con cui si ottiene questa terribile formula :-). O è la proverbiale intelligenza di NS

Il polinomio che ho mostrato prima non è così selvaggio, per esempio posso mostrare un polinomio davvero selvaggio che uso nei miei calcoli.

È scritto in Matlab, ho rimosso le ultime due righe per evitare che vada in circolazione.

GR(i)=0.25*(0.4*(0.55*(0.6*(0.09*(-0.00192393 +GM(i+3)*(-0.1725) +GM(i+6)*(1.17444))+0. 28*(-0.00130286 +(-0.000123992 +GM(i+5)*(-0.821849) ...

+GM(i+6)*(1.82199))*(0.302188) +(-0.00145804 +GM(i+4)*(-0.153087) +GM(i+6)*(1.15453))*(0. 699112))+0.09*(-0.000577229 +GM(i+3)*(-0.162435)...

+GM(i+6)*(1.16299))+0.09*((0.832328 *GM(i+4)*GM(i+6)-0.119317 *GM(i+6)*GM(i+5)-0. 100951 *GM(i+5)-0.0192996 *GM(i+2))/(GM(i+4)-0.361992...

*GM(i+5)-0.0452508 *GM(i+6)))+0.09*((1.00001 *GM(i+6)*GM(i+6)*GM(i+6)*GM(i+6)-1. 03818 *GM(i+6)*GM(i+6))/(GM(i+6)*GM(i+6)-1.03817...

*GM(i+6)))+0.09*((1.07271 *GM(i+6)-0.512733 *GM(i+6)+0.684408 *GM(i+4)-0.485238 *GM(i+4)*GM(i+4))/(1-0.240858 *GM(i+5)*GM(i+6))+0.09...

*((1.00137*GM(i+6)*GM(i+6)-0.000473002 *GM(i+4)*GM(i+6)-0.998682 *GM(i+6)*GM(i+6)+6.

*GM(i+6)))+0.09*(0.730651 *GM(i+4)*GM(i+4)*GM(i+6)/(GM(i+4)*GM(i+4)-0.269349 *GM(i+5)*GM(i+5)))+0. 09*((0.717833 *GM(i+6)*GM(i+4)*GM(i+6)...

-0.11191*GM(i+4)*GM(i+4)*GM(i+4))/(GM(i+6)*GM(i+4)-0.471068 *GM(i+6)*GM(i+5)+0.209781 *GM(i+6)*GM(i+6)-0.132089 *GM(i+3)*GM(i+6)-0.000702832 ....

*GM(i+5))))+0,4*(0,2*(0,6*(-0,00130286 +(-0,000123992 +GM(i+5)*(-0,821849) +GM(i+6)*(1. 82199))*(0,302188) +(-0,00145804 +GM(i+4)...

*(-0.153087) +GM(i+6)*(1.15453))*(0.699112))+0.4*((0.717833 *GM(i+6)*GM(i+4)*GM(i+6)-0. 11191 *GM(i+4)*GM(i+4))/(GM(i+6)*GM(i+4)...

-0.471068 *GM(i+6)*GM(i+5)+0.209781 *GM(i+6)*GM(i+6)-0.132089 *GM(i+3)*GM(i+6)-0. 000702832 *GM(i+5))))+0.25*(-0.000577229 +GM(i+3)*(-0.162435)...

+GM(i+6)*(1.16299))+0.35*((1.00001 *GM(i+6)*GM(i+6)*GM(i+6)-1.03818 *GM(i+6)*GM(i+6))/(GM(i+6)*GM(i+6)*GM(i+6)-1. 03817 *GM(i+6))

+0.2*((1.07271 *GM(i+6)-0.512733 *GM(i+6)+0.684408 *GM(i+4)-0.485238 *GM(i+4)*GM(i+4))/(1-0. 240858 *GM(i+5)*GM(i+6)))))+0.45*(0.4*((1.73835 ...

*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0.0334794 *GM(i+3)*GM(i+4)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0. 919558 *GM(i+4)...

*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0.376192 *GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0.345737)/(GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0. 0355159...

*GM(i+3)-0.901092 *GM(i+4)))+0.6*((-2.01988 *GM(i+3)*GM(i+3)*GM(i+4)*GM(i+6)+2.90062 *GM(i+3)*GM(i+4)+5.31466 *GM(i+3)*GM(i+3)...

*GM(i+5)-3.01304 *GM(i+3)*GM(i+3)-4.34954 *GM(i+3)*GM(i+5))/(GM(i+3)*GM(i+4)-2. 16719))))+0.4*(0.33*((1.00914 *GM(i+4)*GM(i+5)...

*GM(i+5)+0.977507 *GM(i+4)*GM(i+4)*GM(i+5)-1.9751 *GM(i+4)*GM(i+3)*GM(i+5))/(GM(i+4)*GM(i+5)-0. 988447*GM(i+3)*GM(i+3))+0.67*((2.51015 ...

*GM(i+6)-0.979174 *GM(i+5)*GM(i+6)-0.642762)/(1-0.111777 *GM(i+5)*GM(i+5)*GM(i+4))))+0. 4*(0.9*(0.3*((1.00914 *GM(i+4)*GM(i+5)*GM(i+5)...

+0.977507 *GM(i+4)*GM(i+4)*GM(i+5)-1.9751 *GM(i+4)*GM(i+3)*GM(i+5))/(GM(i+4)*GM(i+5)-0. 988447*GM(i+3)*GM(i+3))+0.7*((0.0988538 *GM(i+4)...

*GM(i+6)-0.0240242 *GM(i+4)*GM(i+5)+0.0291295 *GM(i+4)*GM(i+4)+0. 904081 *GM(i+4)-0.951504 *GM(i+3))/(GM(i+4)-0.943467...

*GM(i+3))))+0.1*((2.01304 *GM(i+5)*GM(i+5)*GM(i+5)-2.02312 *GM(i+4)*GM(i+5)*GM(i+5)+0. 0156151 *GM(i+5)*GM(i+5)*GM(i+5)...

/(GM(i+5)*GM(i+5)*GM(i+5)-1.01005 *GM(i+4)*GM(i+5)-1.14951e-005 *GM(i+5)*GM(i+5)+0. 0155924 *GM(i+5)*GM(i+5)-7.72653e-007 *GM(i+5)-7.

*GM(i+5)*GM(i+5))))+1.8*(0.3*((-0.610885 *GM(i+4)*GM(i+4)*GM(i+5)-0.0795671 *GM(i+3)*GM(i+4)*GM(i+4)*GM(i+5)+1. 19161 *GM(i+4)...

*GM(i+4)-0.422269 *GM(i+3))/(GM(i+4)*GM(i+4)-0.505662 *GM(i+3)*GM(i+4)*GM(i+4)-0. 415455 *GM(i+5)*GM(i+5))+0.7*((-0.610885 *GM(i+5)*GM(i+5)...

*GM(i+6)-0.0795671*GM(i+4)*GM(i+5)*GM(i+5)*GM(i+6)+1.19161 *GM(i+5)*GM(i+5)-0. 422269 *GM(i+4))/(GM(i+5)*GM(i+5)-0.505662 *GM(i+4)...

*GM(i+5)*GM(i+5)-0.415455 *GM(i+6)*GM(i+6))))+0.3*((0.325815 *GM(i+5)*GM(i+5)*GM(i+5)-0. 322486 *GM(i+4)*GM(i+4)+0.00437944 *GM(i+5))...