[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 4

 
merkulov.artem:

Veuillez me conseiller sur la façon d'utiliser OrderModify() pour modifier un ordre en attente, si par exemple le prix d'ouverture n'a pas changé, mais que le takeprofit et le stoploss ont changé. En d'autres termes, la question est de savoir comment laisser certains paramètres inchangés et en modifier d'autres. Lorsque j'appelle getlasterror(), il n'y a pas d'erreur ou le code 1 (résultat inconnu) ou rien ne se produit.

Merci pour les conseils !

voir ici - page 106... Les conditions de modification sont les vôtres, l'approche est la même - il y a des conditions lorsque le prix change, vous avez des valeurs stop.
Dossiers :
52_ft140909.rar  4021 kb
 

Encore une fois, je peux ?

J'essaie de tracer par ZigZag extremums... J'ai trouvé quelque chose sur le forum, mais ça ne fonctionne toujours pas (dans le testeur). La raison est dans le travail inexpérimenté avec les tampons ZigZag... Je dois manquer quelque chose. J'ai utilisé deux types de ZigZag. CZigZag avec un tampon qui stocke les informations sur les extrema et ZigZag avec MT4 avec 3 tampons. J'ai essayé d'utiliser Alert pour afficher les valeurs du tableau mais il contient toujours des zéros.

Pour remplir le tampon j'ai utilisé :

CZigZag:Z[i]=iCustom(NULL,0, "ZigZag",ExtDepth,ExtDeviation,0,i) ; Alert("Z",i," = ",Z[i]) ;

ZigZag(upper extrema) : Z[i]=iCustom(NULL,0, "ZigZag",ExtDepth,ExtDeviation,1,i) ; Alert("Z",i," = ",Z[i]) ;

ZigZag(extrema inférieur) : Z[i]=iCustom(NULL,0, "ZigZag",ExtDepth,ExtDeviation,2,i) ; Alert("Z",i," = ",Z[i]) ;

 
J'ai mis l'optimisation pour choisir un paramètre, j'exécute tous les résultats sont rejetés, mais si je change ce paramètre manuellement dans le test, tout est OK.
 

granit77:

granit77, aidez-moi s'il vous plaît. J'ai écrit un EA et l'ai testé plusieurs fois, à la recherche des meilleures stratégies. Au cours du test suivant, quelque chose s'est produit et EA a commencé à me donner un message "en attente de mise à jour" à chaque tentative de test. J'ai essayé de recharger les données historiques mais cela se bloque. De plus, lors du rechargement des graphiques étendus des cotations, les données de la semaine précédente disparaissent. J'ai essayé de redémarrer le programme, mais les données historiques ne sont pas chargées. Que puis-je faire dans cette situation ? :)



 
T-G:
S'il vous plaît conseiller ce qui pourrait être faux, quand je exécute dans le testeur, les ordres sont ouverts et fermés, tout est normal. Lorsque je mets l'optimisation je choisis un paramètre et exécuter tous les résultats sont rejetés, quand je change manuellement ce paramètre dans le test, tout est normal.


Avant l'optimisation, décochez toutes les options dans l'onglet : Propriétés de l'expert - Optimisation - Restrictions (décochez toutes les options).

De plus, lorsque je clique sur l'onglet : Optimisation couper - décocher - sauter des résultats inutiles.

 
boris.45:

C'est difficile à dire. Il y a beaucoup de subtilités. Peut-être que quelqu'un s'y connaît mieux et peut vous le dire, mais je préférerais mettre un terminal propre et y copier mes codes. Et, si le terminal est destiné à des tests, seuls les conseillers-experts/indicateurs requis doivent être installés. Et bien sûr, vérifiez l'absence de virus.
Il est possible de trouver un pépin, mais ce sera plus rapide et plus propre. Nous ne voulons pas nous mettre en travers du chemin, nous voulons conduire.
 
Roman.:


avant l'optimisation, décochez toutes les cases de l'onglet : propriétés de l'expert - optimisation - restrictions (décochez toutes les cases).

En outre, si vous cliquez sur l'onglet : Optimiser - décocher - ignorer les résultats inutiles.

Par exemple, le paramètre x=1, juste pour le test, donne 500 transactions, x=2 donne 700 transactions. J'optimise ce paramètre et x=1 donne maintenant 1 transaction, x=2 donne aussi 1... L'EA utilise une modification graphique virtuelle, peut-être est-ce la raison ? comme l'objet graphique n'est pas créé pendant l'optimisation ?
 
T-G:
J'ai décoché "ignorer les résultats inutiles" et les résultats apparaissent. Seulement ils diffèrent de l'exécution simple. Par exemple, avec le paramètre x=1 le test simple donne par exemple 500 affaires, avec x=2 - 700 affaires. Je commence à optimiser ce paramètre et x=1 - donne maintenant 1 affaire, x=2 donne aussi 1 affaire... EA utilise la modification graphique virtuelle, peut-être est-ce le cas ? comme pendant l'optimisation aucun objet graphique n'est créé ?

Je ne sais pas ce que c'est. C'est possible. Bien que, si le test - tout est comme il devrait être, en théorie, l'optimisation devrait fonctionner comme elle devrait être...
 
Roman.:

Je ne sais pas... C'est possible. Bien que, si le test - tout montre comme il devrait, en théorie, et l'optimisation devrait fonctionner comme il devrait ...
En théorie, oui, mais le test a spécifiquement exécuté le paramètre x=1, puis le paramètre x=2, puis je prends l'optimisation de x de 1 à 2 étape 1. toutes les restrictions sont décochées, sautant les coupes inutiles, aussi. algorithme génétique activé et désactivé. les résultats des tests d'optimisation diffèrent, helppp !
 



J'ai ma propre stratégie, mais mes émotions m'ont empêché de l'utiliser. La seule solution était d'écrire un robot de trading. Aujourd'hui, je semble pouvoir le faire, mais j'ai touché un stop et je ne comprends pas comment résoudre le problème.

J'ai un problème avec cela, le système ouvre des ordres + ordres en attente, et ils travaillent à la fois vendre et acheter, avec l'ouverture d'un nouveau marché, il s'ouvre avec deux ordres en attente, comme un Martin, fermer à la prise ou la perte, en tout cas, lorsque le signal opposé à la précédente restent actifs et ouvrir de nouvelles opposés.Je n'arrive pas à décider comment supprimer les ordres en attente lorsque l'ordre de marché se déclenche, mon livre parle de chiffres magiques et de tickets, mais je n'arrive pas à trouver comment reconnaître un ordre pour fermer les ordres en attente.

Raison: