[ARCHIVE !] Toute question de débutant, pour ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 4. - page 529

 
Vinin:

Comment dessinez-vous les lignes ? Où vérifiez-vous, dans le testeur ou sur la démo ?

J'essaie de résoudre ce problème depuis 2 semaines maintenant - c'est-à-dire que j'ai essayé beaucoup de choses (y compris écrire 3 variantes d'un robot similaire - mais le problème est le même).

Je fixe les lignes manuellement ( lignes horizontales régulières) - Puis je demande le prix de ces lignes - Si le prix tombe dans l'intervalle entre 2 lignes, alors un drapeau doit être déclenché (achat ou vente - j'obtiens un maximum de 4 variantes de drapeaux pour chaque paire de lignes).

Les noms des lignes sont identiques aux noms des variables, mais sans la lettre "p" (indiquant "prix").

J'ai vérifié avec le testeur et avec la démo - les résultats sont les mêmes.

Pour le test - simplifié la variante à un minimum - jusqu'à 2 paires de lignes (pour l'achat et pour la vente) - un bug apparaît toujours.

Moins il y a de combinaisons de lignes, moins le problème se pose (mais il ne disparaît pas - c'est un faux sentiment). Plus il y a de variations, plus le problème est important.


PS

L'une des variantes du robot (la première n'était que cela), lors de la définition de la ligne, définissait automatiquement 2 lignes supplémentaires. Et là, la punaise n'est pas sortie. Mais dès que j'ai essayé de définir toutes les lignes manuellement, ce bug a commencé à apparaître. - Cela signifie qu'avant que j'aie eu le temps de définir des lignes supplémentaires (niveau - ligne de base), le robot a commencé à négocier à sa seule discrétion (à la fois dans le testeur de stratégie et dans la démo).

 

Bonne journée et bon trading à tous !

Un conseil plz, je n'ai pas la tête claire, je suis un débutant...

Je suis un débutant, je suis très novice dans ce genre de choses :

J'ai mis deux ordres en attente

Je dois d'abord les sélectionner un par un et les modifier, MAIS je ne connais pas le numéro de position de ces ordres ni leur ticker... comment puis-je connaître le ticker de chaque position ?

 

Quelle fonction puis-je utiliser pour terminer/terminer le Conseiller Expert en cas de certaines conditions ?

En d'autres termes, mon conseiller expert fonctionne, mais en cas d'échec (ce point, je l'ai déjà écrit), une fonction doit être exécutée qui ferme le conseiller expert et celui-ci cesse de fonctionner et de négocier.

 
Ekburg:

Quelle fonction puis-je utiliser pour terminer/terminer le Conseiller Expert en cas de certaines conditions ?

C'est-à-dire que mon Expert Advisor fonctionne, mais en cas d'échec (ce point, je l'ai déjà écrit), la fonction qui ferme l'Expert Advisor doit être exécutée et il cesse de fonctionner et de trader.

Tout d'abord, nous devons déterminer "CE QUI EST SPÉCIFIQUE" qui doit être fait par le conseiller expert pendant "l'heure de pointe" - les conditions mentionnées. Si vous arrêtez juste de commercer, vous pouvez le faire :

bool STOP = false;
int start()
{
    //---- В самом начале кода
    if (STOP) return (0);
    //---- код советника
}
 
TarasBY:

La première chose à faire est de déterminer "QUOI exactement" l'EA doit faire lorsque l'"heure de pointe" se produit - les conditions mentionnées. Si vous arrêtez juste de commercer, vous pouvez le faire :


c'est-à-dire qu'il suffit d'ajouter la fonction return(0) pour arrêter le fonctionnement de l'Expert Advisor ?
 
Ekburg:

c'est-à-dire qu'il suffit d'ajouter la fonction return(0) pour terminer l'Expert Advisor ?
lorsque la condition que vous avez mentionnée se produit.
 
TarasBY:
sur l'apparition de la condition que vous avez mentionnée.

Merci, y a-t-il une réponse à la question que j'ai posée plus tôt) ?
 
Ekburg:

Merci, y a-t-il une réponse à la question que j'ai posée plus tôt) ?
Je ne sais pas par où commencer dans l'alphabet... Obtenez quelques codes EA de la base de code, l'un d'entre eux DOIT avoir une réponse immédiate à votre question.
 
Dimka-novitsek:

À première vue, il s'agit probablement des variables, et non des conditions. Je commencerais par sortir les variables avec des alertes, car le code lui-même semble NORMAL ! !!

Alert(" pcb " , pcb ) ; Alert(" pl " , pl ) ; Alert(" pb " , pb ) ;


Vous aviez raison - il s'agissait des prix demandés. Dans mon inexpérience, je les ai vérifiés sur les lignes exposées, et ceux qui étaient absents (parce qu'ils n'étaient pas là - logique humaine), je ne les ai pas vérifiés non plus.

Et ils, même avec une erreur 4202, mais le prix qu'ils ont attribué - 0,0000 - et il a été ce prix et a ruiné tous les tidbits ! : ))))


Merci beaucoup Vinin et TarasBY !

 
Ekburg:

merci, y a-t-il une réponse à la question que j'ai posée plus tôt ?)

il existe des fonctions supplémentaires qui terminent le terminal, par exemple CloseTerminal() https://forum.mql4.com/ru/11287/page49#104688
Raison: