Indicateur de zigzag et réseaux neuronaux - page 9

 
Piligrimm:
Le programme entier est écrit en Matlab, la partie qui calcule les prévisions est compilée en Matlab et s'exécute comme un exécutable à partir de l'indicateur qui collecte les données d'entrée à l'arrivée d'une nouvelle barre chaque minute. La partie qui effectue l'entraînement du réseau et l'optimisation du coefficient de seuil fonctionne directement dans Matlab et s'exécute sur une minuterie toutes les 5 minutes, car le fichier ehem compilé avec l'entraînement du réseau ne fonctionne pas, je ne peux pas comprendre la raison, la compilation se déroule sans erreurs.


Merci, je vais m'occuper de la construction du réseau en Matlab et de la liaison avec MT4. Si vous avez votre propre design, veuillez l'envoyer à loknar@list.ru . Je vous en serai très reconnaissant.

 
Mathemat:
Piligrimm a écrit (a) : Maintenant mon système se ré-entraîne toutes les 5 minutes et recalcule les prévisions toutes les minutes à l'arrivée d'une nouvelle barre, si j'avais un ordre de grandeur de plus de RAM et de performance, le ré-entraînement serait fait à chaque étape en même temps que le calcul, et la précision des prévisions s'améliorerait de manière significative.

Re-entraîner toutes les 5 minutes et recalculer les prévisions toutes les minutes - n'est-ce pas trop fréquent ? Et votre désir d'augmenter encore la fréquence du réentraînement (et des calculs) pour améliorer la précision des prédictions (à chaque tick, ou quoi ?) me semble étrange. Je doute qu'un système qui fonctionne vraiment puisse bénéficier d'un réentraînement à une fréquence qui coïncide avec celle des données entrantes.

P.S. Et pf>25 n'est pas seulement un rêve, mais quelque chose d'inenvisageable... Bien qu'avec un ratio de 5:1 de transactions rentables par rapport aux non rentables et un TP/SL = 5, c'est tout à fait faisable.


Le droit de douter est votre droit. Je ne fais qu'exprimer ma vision du marché et de la manière de mettre en œuvre ma stratégie. Si vous travaillez dans un marché relativement calme, un recyclage toutes les 5 minutes est suffisant. Par exemple, j'ai entraîné le système pendant une journée, puis je me connecte à nouveau au marché sans me réentraîner et je fais des prévisions en utilisant les anciens paramètres. Bien que l'erreur dans l'échantillon test soit de 14% à 28%, le système fait des prévisions satisfaisantes, bien qu'il n'y ait aucune garantie que la prévision pour la période d'intérêt soit incorrecte.

En m'efforçant de faire un réentraînement avant chaque calcul, j'essaie d'aborder la stabilité et la précision du système dans toutes les conditions, les communiqués, etc. Bien que cela puisse sembler redondant, d'après mon expérience des études de marché, c'est une condition préalable à un système efficace et insubmersible qui a toujours une longueur d'avance dans toutes les conditions, ce que j'ai l'intention de mettre en œuvre.

 
Loknar:
Piligrimm:
L'ensemble du programme est écrit en Matlab, la partie qui calcule les prévisions est compilée en Matlab et fonctionne comme un exécutable à partir de l'indicateur qui collecte les données d'entrée toutes les minutes après le passage d'une nouvelle barre. La partie qui effectue l'entraînement du réseau et l'optimisation du coefficient de seuil fonctionne directement dans Matlab et s'exécute sur une minuterie toutes les 5 minutes, car le fichier ehem compilé avec l'entraînement du réseau ne fonctionne pas, je ne peux pas comprendre la raison, la compilation se déroule sans erreurs.


Merci, je vais chercher à construire des réseaux en matlab et à les relier à MT4. Si vous avez votre propre design, veuillez l'envoyer à loknar@list.ru . Je vous en serais très reconnaissant.

Pour vous donner un exemple, un réseau simple, mais qui fonctionne efficacement, j'en utilise un :

 
Piligrimm:

Pour vous donner un exemple, un réseau simple mais efficace, j'en utilise un :



Merci pour l'information

Si vous avez besoin d'un dispositif quelconque pour Matlab (je télécharge la version 7.5 avec un tas d'addons) ou de tout logiciel associatif pour les réseaux neuronaux, je suis prêt à coopérer.

 

Pour les personnes intéressées, je peux partager la "formule du bonheur" !

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%, но лучше, чем ничего, использовать в индикаторах можно.

Pour une adaptation individuelle à votre tâche, vous pouvez également jouer avec les coefficients : 0,3*( et 0,7*(, au total il devrait être de un.

 
Piligrimm:

Pour les personnes intéressées, je peux partager la "formule du bonheur" !

GD[iq] 
Un certain polynôme sauvage de nombres aléatoires (si GD[iq] est une citation). Peut-être que cela aurait un sens si par une loi quelconque on recalculait les coefficients constants -0.610885 etc. Pourriez-vous m'indiquer la théorie qui permet d'obtenir cette terrible formule :-). Ou est-ce l'intelligence proverbiale de NS
 
Piligrimm:

Pour les personnes intéressées, je peux partager la "formule du bonheur" !

Pour une adaptation individuelle à votre tâche, vous pouvez également jouer avec les coefficients : 0,3*( et 0,7*(, au total il devrait être de un.


Alors, qu'est-ce que le QI ? Si nous parlons d'un zigzag, s'agit-il simplement d'une séquence de ses indices ? C'est-à-dire que iq-1 serait le point de rupture précédent du zigzag ?
 
Loknar:
Piligrimm:

Je peux partager la "formule du bonheur" avec tous ceux qui le souhaitent !

Pour une adaptation individuelle à votre tâche, vous pouvez également jouer avec les coefficients : 0,3*( et 0,7*(, la somme doit être égale à un.


Alors, qu'est-ce que le QI ? Si nous parlons d'un zigzag, s'agit-il simplement d'une séquence de ses indices ? C'est-à-dire que iq-1 est le point de rupture précédent du zigzag ?

Oui, exactement, iq-1 est le point précédent. J'ai développé ce polynôme pour mon indicateur dont les graphiques sont montrés ci-dessus. Je ne l'ai pas vérifié mais j'espère qu'il pourra être utile à quelqu'un.

Si nous parlons de l'algorithme utilisé pour construire ce polynôme, il est basé sur la recherche de lois qui relient différents arguments, dans ce cas des arguments retardés par rapport à la tendance à prédire.

La figure montre comment ce polynôme fonctionne pour moi : la ligne bleue est la tendance sur les points d'inflexion, la ligne rose est celle qui passe par le polynôme. L'entrée des données est normalisée, d'où cette échelle de grandeur.

 
Piligrimm писал (а): Pour les personnes intéressées, je peux partager la "formule du bonheur" !
GP1[iq+1] = 
Vous voilà, vous les rennes...
 
Prival:
Piligrimm:

Pour les personnes intéressées, je peux partager la "formule heureuse" !

GD[iq] 
Un certain polynôme sauvage de nombres aléatoires (si GD[iq] est une citation). Peut-être que cela aurait un sens si par une certaine loi de recalculer les coefficients constants -0,610885, etc. Pourriez-vous m'indiquer la théorie qui permet d'obtenir cette terrible formule :-). Ou est-ce l'intelligence proverbiale de NS

Le polynôme que j'ai montré précédemment n'est pas si sauvage, par exemple je peux montrer un polynôme vraiment sauvage que j'utilise dans mes calculs.

Il est écrit en Matlab, j'ai enlevé les deux dernières lignes pour éviter qu'il ne soit diffusé.

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)*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))...