Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 353

 
Pyro:
Veuillez me conseiller à ce sujet. Alpari augmente le spread le week-end, à tel point que l'EA est toujours perdant. OK. Je peux régler l'écart manuellement dans le testeur de stratégie. Mais dans quelles unités ? 100, 50, 30, 10 - qu'est-ce que c'est ? Pourcentage, points, quoi ? Je vous remercie d'avance.

Dans le testeur, l'écart est en points. Les croupiers ont généralement un spread flottant. Et le vendredi à 23 heures, il atteint généralement des valeurs incroyables. Il est préférable de ne pas faire de commerce pendant cette période.
 

Bonjour à tous.

Je n'aime pas programmer depuis l'université, mais le moment est venu où j'ai eu besoin d'un robot pour faire du trading en bourse (je comprends que EA et robot sont la même chose ?).

Il (bot) doit fermer sa position lorsque les muwings sont croisés (le rapide croise le lent).

J'ai trouvé quelques codes dans Kodobase. Mais :

1. Il n'est pas clair où définir l'horizon temporel dans le code du conseiller expert ?

2. Certains EAs ont 2 fichiers : un avec l'extension mq4, l'autre avec l'extension mqh. Pourquoi avons-nous besoin d'un fichier mqh ?

3. Comment mettre en place un Conseiller Expert dans mt4 ? Est-il suffisant d'ajouter un Expert Advisor dans le dossier "experts" et de l'activer ? Ou que faut-il faire d'autre pour que ça marche ? En général, je serais reconnaissant si le processus d'installation de l'EA dans un programme de trading était expliqué en détail.

Je ne suis pas trop ignorant en C ++. J'ai besoin d'un EA, je dois juste changer de délai et de muwings.

Je négocie sur le marché des crypto-monnaies btc-e. Pour ceux qui veulent aider (et simplement les bonnes personnes), je peux aider et répondre aux questions sur cet échange et la monnaie BitCoin. Contactez-moi en personne ou sur skype okidoki543

 

Je pense avoir trouvé ce dont j'ai besoin :

https://www.mql5.com/ru/code/8463?source=terminal4_codebase

Je vais le finaliser et l'essayer sur de petits lots. Mais merci à tous ceux qui ont une opinion sur ma question ici. Je ne sais pas encore si tout va marcher pour moi. J'ai une forte aversion pour la programmation. )

 

Camarades, j'ai supprimé la ligne suivante dans le code (voir lien ci-dessus) : //============================================================================================
int CrossPositionOpen()
{
PosOpen=0 ; // C'est ici que le chien est enterré!!! :)
if ((MA1_1<=MA2_0 && MA1_0>MA2_0) || (MA1_1<MA2_0 && MA1_0>=MA2_0)) // Passage de bas en haut
{
PosOpen=1 ;
}
if ((MA1_1>=MA2_0 && MA1_0<MA2_0) || (MA1_1>MA2_0 && MA1_0<=MA2_0)) // Intersection descendante
{
PosOpen=2 ;
}
return(PosOpen) ; // Retourne la direction de l'intersection.
}

D'après ce que j'ai compris avec mon esprit faible, cette section de code est responsable de l'ouverture des positions au croisement des MA. Je n'en ai pas besoin car l'EA n'est nécessaire (du moins, pour l'instant) que pour fermer des positions.

Pourriez-vous me dire, si j'ai bien compris, que cet EA ne fermera désormais que les positions qui sont déjà ouvertes lorsque la MA est traversée (par exemple, traversée de haut en bas - position longue fermée) ?

Ai-je tort de penser que MA1_Price est le prix utilisé pour calculer la MA et que si je mets "4" ici, ce sera le prix de clôture ?

Ai-je bien compris - extern double - c'est le nombre de lots pour lesquels la position sera ouverte. Après tout, je veux que ma position ouverte par un nombre quelconque de lots soit fermée par ce code. Pouvez-vous nous indiquer comment configurer cela dans le code ? Ou ce code fermera la position avec n'importe quel lot sans aucun réglage ?

Je compte sur de l'aide.

 
okidoki543:

Camarades, j'ai supprimé la ligne dans le code (voir lien ci-dessus) : //============================================================================================
int CrossPositionOpen()
{
PosOpen=0 ; // C'est ici que le chien est enterré!! :)
if ((MA1_1<=MA2_0 && MA1_0>MA2_0) || (MA1_1<MA2_0 && MA1_0>=MA2_0)) // Passage de bas en haut
{
PosOpen=1 ;
}
if ((MA1_1>=MA2_0 && MA1_0<MA2_0) || (MA1_1>MA2_0 && MA1_0<=MA2_0)) // Intersection de haut en bas
{
PosOpen=2 ;
}
return(PosOpen) ; // retour de la direction de l'intersection.
}

D'après ce que j'ai pu comprendre avec mon esprit faible, cette section du code est responsable de l'ouverture des positions lorsque la MA est franchie. Je n'en ai pas besoin, car j'ai besoin de l'EA (du moins pour l'instant) uniquement pour fermer des positions.

Pourriez-vous me dire, si je comprends bien, que cet EA ne fermera que les positions qui sont déjà ouvertes lorsque la MA est traversée (par exemple, traversée du haut vers le bas - fermeture de la position longue) ?

Ai-je tort de penser que MA1_Price est le prix utilisé pour calculer la MA et que si je mets "4" ici, ce sera le prix de clôture ?

Ai-je raison de penser que le double externe dans le code est le nombre de lots pour lesquels la position sera ouverte ? Après tout, je veux que ma position ouverte par un nombre quelconque de lots soit fermée par ce code. Pourriez-vous nous indiquer comment configurer cela dans le code ? Ou ce code fermera la position avec n'importe quel lot sans aucun réglage ?

Je compte sur votre aide.


Ouais, j'ai enlevé la ligne avec les commentaires))))) Vraiment mauvais à la programmation))))

A priori, si vous n'avez pas besoin d'ouvrir des ordres, commentez les lignes suivantes :

// OpenBuy() ;

и

// OpenSell() ;

MA1_Price est bien un type de prix, mais 4 est le prix moyen. Et ceci est seulement pour le premier masque ; il y a aussi MA2_Price. Pour les constantes de prix, consultez ici

L'EA n'a pas de contrôle pour Magik et le symbole. Il les fermera tous un par un.

Et après avoir apporté des modifications au texte de l'EA, n'oubliez pas de le recompiler.

Les lots dans votre cas ne sont pas nécessaires, n'y prêtez pas attention.

 
Oui, l'EA fonctionnera sur la trame temporelle et l'instrument auxquels vous l'attachez. L'auteur semble conseiller le M15...
 
Oh, et ne vous précipitez pas dans le monde réel avec cette EA. Il n'a pas de gestion des erreurs, vous devez toujours l'amener dans le monde réel. Faites-le passer dans le testeur pour commencer.
 
Sepulca:


Ouais, j'ai enlevé la ligne avec les commentaires))))) Vraiment mauvais à la programmation))))


Vous semblez avoir tort. Там после строки //============================================================================================

Les commandes étaient en bleu, donc ce n'était pas un commentaire.

Sepulca:

Et après avoir apporté des modifications au texte de l'EA, n'oubliez pas de le recompiler.

Comment je fais ça ?!?!?
Sepulca:
Oui ! Et ne vous précipitez pas dans le trading réel avec cet EA. Il n'a pas de gestion d'erreur, vous devez l'amener à un compte réel. Essayez-le d'abord dans le testeur.

Oui, je pense que je vais d'abord l'essayer en démo pendant une semaine.

Merci beaucoup pour votre aide. J'espère une aide supplémentaire. ;)

 

J'ai également modifié le code, en supprimant tout ce qui était inutile.

J'ai compris comment le compiler, j'ai téléchargé le conseiller expert sur le graphique en minutes de la démo, je vais le tester et dans une vingtaine de minutes je saurai s'il fonctionne ou pas.

Si quelque chose ne va pas, je poserai plus de questions.

 

Questions :

Si je change l'horizon temporel du graphique, tous les paramètres de l'EA seront-ils perdus ? Autrement dit, puis-je modifier l'horizon temporel sur le graphique où l'EA est installé ?

J'ai fermé les graphiques dans le compte réel où j'ai installé l'EA (je n'ai pas trouvé comment supprimer les EAs autrement). Les EA ont-ils été supprimés ou non ?

L'EA fonctionne-t-il lorsque je ne suis pas connecté à MT4 via Internet ?

Raison: