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

 
Artyom Trishkin:

datetime est ulong

Merci beaucoup !
 
Vitaly Gorbunov:

Vous n'auriez pas dû corriger son code immédiatement, l'homme ne comprend tout simplement pas les clés élémentaires du compilateur, et pour écrire un code normal vous devez connaître ces subtilités et utiliser la documentation !

Je lui ai fait remarquer que la vidéo était ancienne et que s'il la copiait exactement comme elle l'était dans la vidéo, il réussirait. Mais il s'est offusqué et s'est plaint du post, ce qui a entraîné sa suppression, alors que lui-même ne va même pas se pencher sur la question !

Il s'avère que ce n'était pas entièrement pour rien. Il n'a même pas essayé de comprendre la différence dans le code soumis et cela ne fonctionne même pas de cette façon.

En général, je n'aime pas non plus demander des corrections de code. Mais ici, il s'est avéré que ce n'était "pas le cas". Je m'intéresse aux bibliothèques depuis longtemps, j'ai même eu ma propre bibliothèque. Mais ayant compris que je dois passer la bibliothèque entière avec le code du conseiller expert ou de l'indicateur, et expliquer ce qu'il faut y mettre... Tout le monde ne comprend pas tout de suite, j'ai décidé d'y renoncer. C'est une réponse à la réplique

Et pour le réparer, j'ai dû faire le tri et me souvenir de ce que j'avais oublié. Il me restait le code fini.
 
Sergey Maksiutenko:

Ne vous donnez pas la peine.

Je comprends que vous ne pouvez pas m'aider.

J'ai supprimé #property strict, j'ai supprimé toutes les propriétés sauf#propertylibrary.

n'aide pas.

Essayez de brancher mon modèle, trouvez l'erreur,

et afficher le code correct, si c'est le problème.

Forum sur le trading, les systèmes de trading automatisés et le testeur de stratégie

Toutes les questions des débutants de MQL4, l'aide et la discussion sur les algorithmes et les codes

Alexey Viktorov, 2018.10.03 11:56


J'ai déjà essayé d'utiliser cette stratégie de trading à titre d'exemple et j'ai réussi à la mettre en œuvre moi-même. Ce qui me laissait un code fini.
Il y a un code de travail qui est prêt à être utilisé.
 
Ha, j'ai trouvé le problème ! Je me demande pourquoi tout fonctionne pour moi et pas pour lui ! S'il me montre quels fichiers se trouvent dans ses \Include \NLibraries \NExperts \NScripts, nous pourrons peut-être même déposer une erreur dans le Service Desk !
 
Sergey Maksiutenko Bien, je suis prêt à poster le contenu des bons dossiers, sinon je vous considère comme un troll ! Parce que j'ai réussi à reproduire ce problème et je sais ce qui ne va pas chez vous !
 

Je suis assis sur XP, MT4 1090 et il s'ensuit que je n'aurai pas de mises à jour.

Lorsque je change d'échelle de temps dans MT4, le graphique se déplace constamment vers la gauche ou la droite. Si je passe d'une échelle plus grande à une échelle plus petite (par exemple, de l'échelle quotidienne à l'échelle horaire), les données sont vieilles de six mois à l'écran. Si je passe d'une échelle plus petite à une échelle plus grande, elle ne montre que les 10 derniers chandeliers. Je dois constamment faire des gestes pour que le graphique soit acceptable, ce qui est ennuyeux.

Pour vous faciliter la tâche, j'ai écrit un code qui change l'échelle sur le clavier et décale le graphique vers la fin :


void OnChartEvent(const int id,

const long &lparam,

const double &dparam,

const string &sparam)

{

string Key1_Value="1" ;

string Key2_Value="2" ;

string Key3_Value="3" ;


if(StringGetChar(Key1_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,5) ;

if(StringGetChar(Key2_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,60) ;

if(StringGetChar(Key3_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,1440) ;

ChartNavigate(0,CHART_END,0) ;

}


Tout fonctionne, mais ChartNavigate "gèle" le graphique en place et ne le laisse pas défiler vers la gauche. Comment le réparer ?

 
psyman:

Je suis assis sur XP, MT4 1090 et il s'ensuit que je n'aurai pas de mises à jour.

Lorsque je change d'échelle de temps dans MT4, le graphique se déplace constamment vers la gauche ou la droite. Si je passe d'une échelle plus grande à une échelle plus petite (par exemple, de l'échelle quotidienne à l'échelle horaire), les données sont vieilles de six mois à l'écran. Si je passe d'une échelle plus petite à une échelle plus grande, elle ne montre que les 10 derniers chandeliers. Je dois constamment faire des gestes pour que le graphique soit acceptable, ce qui est ennuyeux.

Pour des raisons de commodité, j'ai écrit un code pour changer l'échelle sur le clavier et déplacer le graphique vers la fin :

Il y a un bouton ici pour que le graphique se déplace lui-même.

1

 


Si je veux dessiner une ligne de tendance, l'autoscroll ne permet pas de faire défiler le graphique vers la gauche.

Surtout que ça ne fonctionne que lorsque de nouvelles tiques arrivent.

 
psyman:


Le défilement automatique empêche le graphique de défiler vers la gauche si, par exemple, une ligne de tendance doit être tracée.

Surtout que ça ne fonctionne que lorsque de nouvelles tiques arrivent.

puis comme ceci

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
{
if (id==CHARTEVENT_KEYDOWN)
   {
   if(lparam=='1')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_M5);

   if(lparam=='2')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_H1);

   if(lparam=='3')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_D1);

    ChartNavigate(0,CHART_END,0);
   }
}
 
Merci beaucoup.