Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1159

 
Artyom Trishkin:
Il va l'avoir.
Si
Puis
Mais vous devrez écrire une action par condition.
S'il doit y avoir plusieurs actions dans une condition, écrivez la même condition autant de fois que nécessaire pour chaque action.
Mais sans parenthèses...

ok. Pour clarifier.

La question est de savoir comment "patcher" pour écrire une expression et plusieurs opérateurs, avec indentation, sans parenthèses, comme dans pyton.

 
Andrey Sokolov:

Ok. Pour clarifier.

La question est de savoir comment "patcher" pour écrire une expression et plusieurs opérateurs, indentés, sans parenthèses, comme dans pyton.

Tu ne peux pas.
Vous pouvez également écrire votre propre éditeur qui comprendra et compilera correctement.
Ou l'écrire en python.
 
Artyom Trishkin:
Tu ne peux pas.

Comment pouvez-vous être sûr que personne ne l'a implémenté, par exemple en écrivant un patch ? Pardonnez la criticité de l'approche.

 
Artyom Trishkin:
Il comprendra.
Si
Puis
Mais vous devrez écrire une action par condition.
S'il doit y avoir plusieurs actions dans une condition, écrivez la même condition autant de fois que nécessaire pour chaque action.
Mais sans parenthèses...

tout est possible. Vous pouvez même le faire sans ;

#define  DO {
#define  END };
#define  DONE }
#define  IT(x) x;
#define  IF if (
#define  THEN ) {
#define  ENDIF };

IT(datetime time0)
IT(int ticket)

int OnInit()
DO
   IT(time0=iTime(_Symbol,_Period,0))
   IT(ticket=-1)
   IT(return(INIT_SUCCEEDED))
END

void OnDeinit(const int reason) DO IT(return) DONE

void OnTick()
DO
   IF time0!= iTime(_Symbol,_Period,0) THEN
      IT(time0 = iTime(_Symbol,_Period,0))
      IF ticket != -1 THEN 
         IT(CloseMyOrder())
      ENDIF   
      IT(ticket = OpenRandomOrder())
   ENDIF
END

Dans les années 90, je connaissais un type qui essayait d'"écrire en C comme en Modul" avec des macros et un préprocesseur. Pour la même raison - il aimait Modula et ses projets étaient en C...

 
Maxim Kuznetsov:

tout est possible, même sans ;

Dans les années 90, je connaissais un type qui essayait d'"écrire en C comme en Modula" avec des macros et un préprocesseur supplémentaire. Pour la même raison - il aimait Modula et ses projets étaient en C...

bon exemple, mais ressemble à du chinois en vieux slavon

ZS : oui ! BASIC - ça ressemble à du BASIC ! !!


et voici une question... les objectifs sont atteints et que dire de l'utilisation de code prêt à l'emploi, ne pas tout écrire à partir de zéro ? car si vous écrivez à partir de zéro, alors pourquoi MQL ? - Vous devez écrire dans un langage tiers, et la seule chose qui reste à faire est de créer un connecteur pour les transactions via MT.

 
Maxim Kuznetsov:

tout est possible, même sans ;

Dans les années 90, je connaissais un type qui essayait d'"écrire en C comme en Modula" avec des macros et un préprocesseur supplémentaire. Pour la même raison - il aimait le modulaire et ses projets étaient C...

merci

La question porte davantage sur la manière de retirer les supports, et non de les remplacer. Pour qu'ils soient "en retrait" comme dans pyton.

 
Andrey Sokolov:

Comment pouvez-vous être sûr que personne ne l'a implémenté, par exemple en écrivant un patch ? Désolé pour l'approche critique.

Écrire.

 
Andrey Sokolov:

merci

La question porte plutôt sur la manière de retirer les supports, et non de les remplacer. Pour qu'ils soient "en retrait" comme dans pyton.

Vous feriez probablement mieux d'écrire en python. Pourquoi avez-vous besoin de MQL comme langage de type C ? Il a sa propre syntaxe, en python vous y êtes habitué.

 
Maxim Kuznetsov:

tout est possible. Vous pouvez même le faire sans ;

Il s'agit donc de remplacer un caractère par un autre mot, ce qui est encore pire. Et il doit la remplacer par des espaces.

 
Artyom Trishkin:

Il s'agit donc de remplacer un caractère par un autre mot, ce qui est encore pire. Et il doit la remplacer par des espaces.

Il existe des macro-processeurs. Le M4 me vient à l'esprit.

Si vous voulez vraiment vous gratter la main gauche avec votre talon droit dans le dos, vous pouvez le faire. Ajoutez des macros, faites passer des échantillons par le préprocesseur et transmettez le résultat au compilateur.

Je ne comprends pas l'envie de le faire, comme tout le monde. Mais si une personne le veut vraiment, vous pouvez le faire. Le rédacteur en chef ne le comprendra pas, et nous apprécierons la persistance et la fantaisie.

Raison: