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

 
Artyom Trishkin:

Personne ne va regarder ce genre de chemises.


Alors qu'y a-t-il à regarder ? " Le " tartan " est l'indicateur du système Murrey-levels (je pense que beaucoup de gens le connaissent). La question était de savoir comment en "extraire"...

les bonnes données pour iCustom().

 
psyman:

Pourquoi ne puis-je pas utiliser un tableau dynamique ?

Dans ce cas, le prix de clôture est écrasé à cet endroit sans aucun calcul.

Où puis-je lire comment utiliser les tampons indicateurs ?

Il est disponible ici : https://book.mql4.com/ru/samples/icustom

Создание пользовательских индикаторов - Простые программы на MQL4 - Учебник по MQL4
Создание пользовательских индикаторов - Простые программы на MQL4 - Учебник по MQL4
  • book.mql4.com
При создании торговой стратегии у разработчика часто возникает необходимость графически отобразить в окне финансового инструмента некоторую зависимость, рассчитанную пользователем (программистом). Для этой цели в языке MQL4 предусмотрена возможность создания пользовательских индикаторов. Пользовательский индикатор - это программа, составленная...
 

Il vous indique comment effectuer des calculs et les transmettre au terminal pour affichage.

Je n'ai pas de sortie de calculs intermédiaires, donc mes connaissances en programmation me disent qu'un tableau dynamique qui augmente à chaque i++ est suffisant pour cela.

Pourquoi utiliser un tampon pour cela est un mystère pour moi, et il n'y a pas encore de réponse à cette question.

 
psyman:

Pourquoi ne puis-je pas utiliser un tableau dynamique ?

Dans ce cas, le prix de clôture est écrasé à cet endroit sans aucun calcul.

Où puis-je lire comment utiliser les tampons indicateurs ?

Vous pouvez l'utiliser. Mais avant de l'écrire, il faut augmenter sa taille. Vous pouvez le lire dans la documentation. Vous avez déclaré un tampon dans votre indicateur.

psyman:

Ils vous indiquent comment effectuer des calculs et les envoyer au terminal pour les afficher.

Je n'affiche nulle part les valeurs intermédiaires, et mes connaissances en programmation me disent qu'un tableau dynamique qui s'incrémente à chaque i++ est suffisant.

Pourquoi utiliser un tampon pour cela est un mystère pour moi, pour lequel il n'y a pas encore de réponse.

Seule la taille du tableau tampon de l'indicateur est augmentée automatiquement à chaque i++.
IndicatorBuffers - Пользовательские индикаторы - Справочник MQL4
IndicatorBuffers - Пользовательские индикаторы - Справочник MQL4
  • docs.mql4.com
Количество буферов не может превышать 512, а также не может быть меньше значения, указанного в свойстве #property indicator_buffers. Если пользовательский индикатор требует дополнительных буферов для расчета, то необходимо использовать функцию IndicatorBuffers() для указания общего числа буферов...
 

= Vous pouvez le lire dans la documentation.


Veuillez me donner le lien.

J'ai ajoutéSetIndexBuffer(1, tmp1), mais rien n'a changé.

D'après ce que j'ai compris, lorsqu'un tableau est affecté à un tampon, il est adressé comme un tableau du même nom, mais il s'agit en fait d'un tampon. C'est vrai ?

 
psyman:

= Vous pouvez le lire dans la documentation.


Veuillez me donner le lien.

J'ai ajouté SetIndexBuffer(1, tmp1), mais rien n'a changé.

D'après ce que j'ai compris, lorsqu'un tableau est affecté à un tampon, il est adressé comme un tableau du même nom, mais il s'agit en fait d'un tampon. N'est-ce pas ?

Note

Le nombre de tampons ne peut pas dépasser 512, et ne peut pas être inférieur à la valeur spécifiée dans la propriété #property indicator_buffers. Si l'indicateur personnalisé nécessite des tampons supplémentaires pour le calcul, vous devez utiliser IndicatorBuffers() pour spécifier le nombre total de tampons.

Et puis il y a un exemple. S'il y a un tampon pour l'affichage et qu'il en faut un pour les calculs, alors IndicatorBuffers devrait en avoir 2 et seulement alors SetIndexBuffer(1, tmp1) ; en déclarant au préalable le tableau au niveau de la variable globale.

 
Anatoliy Ryzhakov:

Qu'est-ce qu'on regarde ici, alors ? "Le scuttlebutt est l'indicateur du système des niveaux de Murrey (je pense que beaucoup de gens le connaissent). La question était de savoir comment l'"extraire" correctement.

les bonnes données pour iCustom().

Encore une fois. Regardez attentivement l'image :


 
psyman:

Pourquoi ne puis-je pas utiliser un tableau dynamique ?

Dans ce cas, le prix de clôture est écrasé à cet endroit sans aucun calcul.

Où puis-je lire comment utiliser les tampons indicateurs ?

Vous ne comprenez pas quelque chose !

Untableau dynamique est utilisé pour enregistrer des données dynamiques (c'est-à-dire des citations entrantes, l'heure, etc.).

Les tableaux dynamiques ne doivent pas être utilisés dans les calculs.

Donc, c'est simple - SOIT VOUS ÉCRIVEZ - SOIT VOUS COMPUTEZ ! !!

J'espère que c'est clair ( !!!???)

Si nous parlons d'indicateurs, alors les indicateurs (en général !) doivent être DÉPASSÉS. Mais dans MT4/MT5, nous ne voyons pas cela !

Dans MT4/MT5, tous les indicateurs sont dynamiques. (Ou il y en a d'autres - je ne sais pas. Je ne les ai pas toutes vérifiées, mais je n'en ai pas vu d'autres).

Je ne sais pas, c'est bon ou mauvais - je ne juge pas.

Les indicateurs standards de MT4/MT5 sont tous dynamiques (si je me trompe, qu'on me corrige ! Mais je n'en ai pas vu d'autres).

Ainsi, avant de résoudre votre problème, il faut le formuler.

Qu'est-ce que vous voulez ENREGISTRER ou EXACTER ?

Et après cela, décidez quels tableaux vous voulez.

J'espère que j'ai été clair.

 
neverness:

Vous ne comprenez pas quelque chose !

Un tableau dynamique est utilisé pour enregistrer des données dynamiques (c'est-à-dire des citations entrantes, des heures, etc.).

Les tableaux dynamiques ne doivent pas être utilisés dans les calculs.

Donc, c'est simple - SOIT VOUS ÉCRIVEZ - SOIT VOUS COMPUTEZ ! !!

J'espère que c'est clair ( !!!???)

Si nous parlons d'indicateurs, alors les indicateurs (en général !) doivent être calculés. Mais dans MT4/MT5 nous ne voyons pas cela !

Je ne sais pas, c'est bon ou mauvais - je ne jugerai pas.

Les indicateurs standards de MT4/MT5 sont tous dynamiques (si je me trompe, qu'on me corrige ! Mais je n'en ai pas vu d'autres).

Ainsi, avant de résoudre votre problème, il faut le formuler.

Qu'est-ce que vous voulez ENREGISTRER ou EXACTER ?

Et après cela, décidez quels tableaux vous voulez.

J'espère que j'ai été clair.

Mais ce n'est pas juste.

Qui vous empêche d'utiliser un tableau dynamique pour les calculs ? La taille d'un tableau dynamique (s'il ne s'agit PAS d'un tampon indicateur, qui est surveillé par un sous-système) doit être surveillée par vous-même, et vous pouvez modifier sa taille si nécessaire. Mais un tableau statique a toujours une taille prédéfinie - tout dépend de la tâche à accomplir.

Si nous parlons d'indicateurs, les indicateurs (en général !) doivent être calculés. Mais dans MT4/MT5, nous ne voyons pas cela !

Quel genre d'absurdité sans fondement est-ce là ? Les indicateurs, dans leur grande majorité, ne font rien d'autre que de calculer et d'afficher la quantité nécessaire et suffisante de données calculées. Constamment, à chaque tic.

C'est quoi toutes ces invectives ? De l'ignorance ? Dans ce cas, il est préférable de rester silencieux. Les gens diront alors qu'ils l'ont lu sur le forum officiel de MK. Est-ce que vous créez délibérément un mensonge ?

 

J'ai créé une variable en privé

J'essaie de travailler avec cette méthode dans une classe.

il dit que la variable n'est pas déclarée

? ??