Je n'ai jamais étudié la programmation, mais je veux écrire un EA - page 2

 
Vladimir Karputov:

Se contenter de lire la référence sans fixer les objectifs (même très simples) ne sert à rien. C'est comme apprendre le karaté en regardant des photos allongé sur le canapé :)

La référence est exactement le point, avec des exemples. Les manuels pour les nuls, comme comment obtenir du courrier sur 280 pages, sont une perte de temps. Tout peut être expliqué en 10-15 minutes.

 
Sergey Lobzankin:

Je n'ai jamais étudié la programmation, mais je veux écrire une EA.

Parlez aux professionnels. N'économisez pas d'argent pour les bonnes idées. Chacun doit être à sa place.

 
Sergey Lobzankin:

Bon après-midi, garçons et filles,
Voici quelques variables globales
Je veux obtenir les prix d'ouverture dans le journal.



mais je reçois des absurdités étranges.
Qu'est-ce qu'il y a ?



comme ça :

datetime prevdaytime; // здесь храним время предыдущего дня
datetime  time[];      // сюда будем получать новое текущее время
double open[];        // сюда будем получать текущие цены открытия
//+------------------------------------------------------------------+
void OnTick()
  {
   CopyTime(_Symbol,PERIOD_D1,0,1,time); // получаем время дневного бара

   if(time[0]!=prevdaytime) // если время дневного бара отличается от предидущего
     {
      CopyOpen(_Symbol,PERIOD_D1,0,1,open); // копируем новую цену open  
      Print("Time: ",TimeToString(time[0],TIME_DATE)," |  Price Open: ",DoubleToString(open[0],_Digits)); // выводим в журнал
      prevdaytime=time[0]; // запоминаем последнее время нового бара
     }
  }
//+------------------------------------------------------------------+
 
Pouvez-vous me dire quelle est la meilleure façon de procéder ?
Le stop suiveur doit-il être écrit comme une fonction distincte ou doit-il être ajouté à la fonction OrderModify existante ?
 
Morexod:

ressemble à quelque chose comme ça.

Je n'ai jamais étudié la chirurgie, mais je veux faire de la chirurgie, alors voici une hache, une perceuse et une lime. Qu'est-ce qu'il y a de mal à ça ?

Ouais, je suis actuellement tourmenté par un gars dans VK. Il ne sait pas programmer, mais veut écrire un scalpeur. Il dit qu'il va faire un programme à partir de morceaux d'autres programmes.

Et puis il y a le client, il a décidé que si vous changez tous les avantages en inconvénients et vice versa dans l'EA, il arrêtera de fuir et commencera à couper des choux ;))

 
Sergey Lobzankin:
Veuillez me conseiller sur la façon d'améliorer la situation.
Le stop suiveur doit-il être écrit comme une fonction distincte ou intégré dans la fonction existante OrderModify ?

Comme une fonction distincte, bien sûr. Il existe de bons exemples dans la kodobase. En général, il existe une règle selon laquelle si un morceau de code effectue une action significative, il doit être implémenté dans une fonction séparée.

Vous pouvez écrire une feuille de 100500 écrans dans OnTick et ensuite vous avez envie de cracher de ce code spaghetti de merde.

 
Les gars, eh bien, je pense que j'ai appris quelques choses



J'ai encore beaucoup de travail à faire, mais dans l'ensemble, c'est agréable.
Merci pour le conseil sur certaines choses,
 

Hors sujet :


Sergei, comment avez-vous publié le signal ? S'agit-il d'un trading purement manuel avec des moyens improvisés ?

 
Sergey Lobzankin:
Les gars, je pense que j'ai quelque chose



, bien sûr, j'ai encore beaucoup de choses à peaufiner, mais en général, c'est bien.
Merci pour vos commentaires ici et là,

Ainsi, l'homme ne connaît pas la programmation, mais a écrit un conseiller expert. Et nous sommes en train de haleter ici, en étudiant MQL pour une raison quelconque ;))

 

c'est mieux :)

Raison: