Auto-apprentissage du langage MQL5 à partir de zéro - page 83

 
SanAlex #:

Je ne les écris pas - j'ai besoin de fonctions prêtes à l'emploi, et la documentation en est pleine. Les fonctions qui me manquent, je les façonne comme je peux, tant que cela fonctionne comme je l'imagine.

Sasha, n'importe qui avec une éducation de niveau 9 peut utiliser le code de quelqu'un d'autre. Si vous ne pouvez pas écrire le vôtre, ne postez rien. Vous faites plus de mal que de bien avec de tels codes.
 
SanAlex #:

Je ne sais pas ce que vous voulez dire ? je l'ai fait moi-même de mes propres mains, que voulez-vous dire ? le code est du terminal mais la méthode elle-même, comment mettre en œuvre l'ouverture de plusieurs paires dans le testeur, j'ai personnellement atteint le résultat.

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

montrez-moi à quel endroit j'ai pris votre code ?

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Je suis assis au terminal 24 heures sur 24, j'ai tout copié gratuitement - et on me le reproche encore. Je partage gratuitement - pas comme certaines personnes le font.

Oh, Sacha ... D'abord vous dites que vous prenez les codes de la documentation et de CodeBase, puis vous dites que vous les écrivez vous-même, puis vous les réécrivez... On ne peut pas faire une belle chose avec de la merde, cela a été prouvé plus d'une fois ... mais le contraire a été répété de nombreuses fois.

Dis-moi où tu as trouvé une telle déclaration d'un tableau.

int    ExtHandle[]= {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};

et un tel remplissage d'un tableau déjà rempli.

//---
   for(int i=0; i<20; i++)
     {
      ExtTrade.SetTypeFillingBySymbol(symb_name[i]);
      //--- Moving Average indicator
      ExtHandle[i]=iMA(symb_name[i],_Period,12,6,MODE_SMA,PRICE_CLOSE);
      if(ExtHandle[i]==INVALID_HANDLE)
        {
         printf("Error creating MA indicator");
         return(INIT_FAILED);
        }
     }
//---

Pourquoi l'avoir déclaré rempli si vous devez le remplir dans la boucle... Il est plus facile et plus correct de déclarer le tableau int ExtHandle[21] ; et c'est tout... vous n'avez besoin de rien d'autre.

Tout ce qu'on prétend, c'est que les esprits non sophistiqués apprennent de ces exemples...

Et la réponse à la question...


Et quelqu'un pourrait penser que la plupart de ce ***** est mon travail, ne pas transformer les bonbons en merde ...

 
Alexey Viktorov #:

Oh, Sacha... D'abord vous dites que vous prenez les codes de la documentation et de CodeBase, ensuite vous dites que vous les écrivez vous-même, puis vous les réécrivez... On ne peut pas faire de la merde, cela a été prouvé de nombreuses fois... mais le contraire a été répété de nombreuses fois.

Dis-moi où tu as trouvé une telle déclaration d'un tableau.

et un tel remplissage d'un tableau déjà rempli.

Pourquoi avoir déclaré qu'il était rempli si vous devez le remplir dans la boucle... Il est plus facile et plus correct de déclarer le tableau int ExtHandle[21] ; et c'est tout... vous n'avez besoin de rien d'autre.

Tout ce qu'on prétend, c'est que les esprits non sophistiqués apprennent de ces exemples...

Et la réponse à la question...


Et quelqu'un pourrait penser que la plupart de ce ***** est mon travail, pas la transformation de bonbons en merde...

Et je ne vois pas le problème.

Bien. Un tableau rempli est déclaré, et ensuite - il est rempli à nouveau, avec d'autres données. À mon avis, c'est une erreur de débutant tout à fait acceptable.

Et est-ce une erreur ?

Lorsque je déclare des variables et des tableaux, je DOIS les remplir IMMÉDIATEMENT. Si, au moment de la déclaration, la valeur exacte est inconnue, je la remplis avec une valeur sciemment non valable. Si une variable est déclarée sans initialisation et ensuite utilisée, elle peut contenir des valeurs aléatoires, qui seront utilisées pendant le travail, et le résultat de ce travail sera incorrect et il sera très difficile de trouver le problème (je l'ai trouvé plus d'une fois).

Mais si une variable est initialisée avec une valeur invalide dès sa création, en cas d'utilisation d'une variable non initialisée, on s'apercevra immédiatement qu'elle contient des déchets, il sera facile de trouver d'où ils viennent et de voir que la variable a été utilisée sans initialisation.

Donc personnellement, je pense que déclarer un tableau déjà peuplé est une bonne pratique. Sauf que les valeurs qui s'y trouvent devraient être WRONG_VALUE.

 
Alexey Viktorov #:


Et on pourrait penser que la plupart de ce ***** est mon travail, et non pas transformer des bonbons en merde...

Ça me semble paranoïaque. Qui va regarder ?

Dans mon code, lorsque j'utilise le travail de quelqu'un d'autre, j'écris toujours un commentaire indiquant d'où je l'ai tiré - de sorte que, le cas échéant, je puisse contacter l'auteur et discuter si possible. Je pense que personne d'autre que moi ne verra ces notes. Et quand un débutant écrit de telles choses - alors vous devriez être heureux que vos codes soient un exemple pour quelqu'un d'autre.

 
Georgiy Merts #:

Ça me semble paranoïaque. Qui va regarder de près ?

Dans mon code, lorsque j'utilise le travail de quelqu'un d'autre, j'écris toujours un commentaire indiquant d'où je l'ai tiré - afin de pouvoir, le cas échéant, contacter l'auteur et discuter si possible. Je pense que personne d'autre que moi ne verra ces notes. Et quand un débutant écrit de telles choses - alors vous devriez être heureux que vos codes soient un exemple pour quelqu'un d'autre.

Personne n'a vu vos codes, ne les comparez pas avec ceux du doigt.
 
Vladimir Baskakov #:
Personne n'a vu vos codes, ne les comparez pas au doigt.

Ce sont les clowns qui ne l'ont pas vu. C'est vrai. Aucun des clowns ne l'a fait.

D'autres l'ont fait. J'ai mis mes codes à la disposition du public plus d'une fois. Et, disons que fxsaber, pas inconnu des clowns, a toute ma bibliothèque de codes depuis l'année dernière.

 
Georgiy Merts #:

Ce sont les clowns qui ne l'ont pas vu. C'est vrai. Aucun des clowns ne l'a fait.

D'autres l'ont fait. J'ai mis mes codes à la disposition du public plus d'une fois. Et, disons que fxsaber, pas inconnu des clowns, a toute ma bibliothèque de codes depuis l'année dernière.

Vous n'avez pas les codes dans Kodobase, calmez-vous.
 
Vladimir Baskakov #:
Vous n'avez pas de codes au Kodobaz, calmez-vous.

Non, bien sûr, pas dans Kodobase, ils sont trop collés les uns aux autres - il suffit de les présenter dans leur intégralité comme une bibliothèque. Et personne ne comprendra autant de code. Et très peu de gens utilisent la bibliothèque. Si vous êtes intéressé, je vous les fournirai tous directement.

Kodobase est pour les choses simples qui ne sont pas "liées à quoi que ce soit", sauf les constructions standard.

Tu ne veux pas dire "base de code", tu veux dire "personne ne l'a vu". Et je vous ai répondu - parmi les clowns, vraiment, personne n'a vu... Eh bien, c'est leur destin de clown.

 
Georgiy Merts #:

Non, bien sûr, pas dans Kodobase, ils sont trop collés les uns aux autres - il suffit de les présenter dans leur intégralité comme une bibliothèque. Et personne ne comprendra autant de code. Et très peu de gens utilisent la bibliothèque. Si vous êtes intéressé, je vous les fournirai tous directement.

Et Kodobase est pour les choses simples, qui ne sont pas "liées à quelque chose", sauf les constructions standard.

Personne n'est intéressé, et votre fil de discussion non plus, allez-y au cas où quelqu'un s'y aventurerait par hasard et que vous n'y seriez pas.
 
Vladimir Baskakov #:
Personne n'est intéressé, tout comme votre branche, allez-y, au cas où quelqu'un se promènerait accidentellement, et que vous ne soyez pas...

C'est ce que je dis !

Et vous dites "personne n'a vu". Personne n'est intéressé - donc personne ne l'a vu (les clowns ne sont pas intéressés - ils ne l'ont pas vu). Ceux qui sont intéressés - ils ont vu.

Raison: