Questions des débutants MQL5 MT5 MetaTrader 5 - page 195

 
barabashkakvn:

Regardez à nouveau le code de l'indicateur dans l'aide https://www.mql5.com/ru/docs/indicators/ima . Notez les lignes dans OnInit() :

Cela crée le manche de l'indicateur pour la période - "période".

J'ai trouvé l'erreur dans la taille du tableau, c'était ma principale erreur du code initial. Je n'arrive pas à comprendre pourquoi le graphique du terminal se comporte de manière inadéquate (flous, mises à jour, décalages, etc.). Merci.
Dossiers :
macd2.mq5  4 kb
 
Salut. Quels sont les avantages entreIndicatorCreate() etiCustom() et lequel est le meilleur à utiliser. Merci.
 

Bon après-midi.

J'essaie d'obtenir la dernière valeur d'une fractale :

Poignée [Nombre]=iFractals(Symbole_,0) ;

CopyBuffer(Handle[Number],UPPER_LINE,4,100,Upper)

upenv[Nombre]=Upper[0] ;


mais parfois j'obtiens un nombre étrange upenv[Number]=1.797693134862316e+308

Si ce nombre était égal à 0, le problème serait résolu de la façon suivante

if(upenv[Number]=Upper[0] && Upper[0]!=0)

upenv[Nombre]=Upper[0] ;

Où est mon erreur ? Qu'est-ce que je fais de mal ? Comment puis-je obtenir la dernière valeur de la fractale avant qu'elle ne change ?

 
Vikon:
barabashkakvn:

Une fois encore, vous devez examiner le code de l'indicateur à partir de https://www.mql5.com/ru/docs/indicators/ima . Notez les lignes dans OnInit() :

C'est ici que lemanche de l'indicateur pour la périodeest créé- "période".

J'ai trouvé l'erreur dans la taille du tableau, c'était ma principale erreur du code initial. Je n'arrive pas à comprendre pourquoi le graphique du terminal se comporte de manière inadéquate (flous, mises à jour, décalages, etc.). Merci.

Vous avez créé un handle d'indicateur à chaque tick (c'est-à-dire dans la fonction OnCalculate()). Ce n'est pas correct. La poignée de l'indicateur doit être créée dans OnInit().

 
barabashkakvn:

Tous ont trouvé une erreur dans la taille du tableau, c'était ma principale erreur dans le code original. Mais pourquoi la carte du terminal se comporte-t-elle de manière inadéquate (clignotement, mise à jour, décalage, etc.). Merci.

Vous avez créé un handle d'indicateur à chaque tick (c'est-à-dire dans la fonction OnCalculate()). Ce n'est pas correct. La poignée de l'indicateur doit être créée dans OnInit().

Et si j'ai besoin des lectures MACD dans un indicateur (M1;M5;M15;H1;H4;D1;W1), alors je dois créer une poignée pour chaque période ?
 
Vikon:
Et si j'ai besoin des lectures MACD dans un indicateur (M1;M5;M15;H1;H4;D1;W1), alors je dois créer une poignée pour chaque période ?
Oui, créez autant de poignées d'indicateurs que vous le souhaitez dans OnInit.
 
paladin800:
Oui, créez autant de poignées d'indicateurs que nécessaire dans OnInit.
Ce n'est pas à cause de la poignée, je n'arrive pas encore à la comprendre, en fait le code fonctionne correctement et donne des données comparablement correctes. Mais l'ordinateur décolle, le terminal saute, c'est l'enfer.
 
barabashkakvn:

Tous ont trouvé une erreur dans la taille du tableau, c'était ma principale erreur dans le code original. Mais pourquoi la carte du terminal se comporte-t-elle de manière inadéquate (clignotement, mise à jour, décalage, etc.). Merci.

Vous avez créé un handle d'indicateur à chaque tick (c'est-à-dire dans la fonction OnCalculate()). Ce n'est pas correct. La poignée de l'indicateur doit être créée dans OnInit().

Il est plus probable que sur un graphique avec M15 vous utilisez des données D1, ou je me trompe.
 
Bonjour, peut-être que quelqu'un aura le temps de regarder mon izvoyanie, où est mon erreur principale ou est-ce une erreur des développeurs.
Dossiers :
macd2.mq5  7 kb
 
Vikon:
Il est plus probable que le graphique M15 utilise des données D1, ou je me trompe.

Vous créez un handle d'indicateur à chaque tick (c'est-à-dire dans OnCalculate()). Ceci est incorrect. Le manche de l'indicateur doit être créé dans OnInit(). Sur le graphique M15, vous pouvez utiliser les données de D1. Cependant, dans ce cas, les données peuvent être incomplètes - lire "Organiser l'accès aux données" https://www.mql5.com/ru/docs/series/timeseries_access.

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Доступ к таймсериям и индикаторам / Организация доступа к данным - Документация по MQL5