Erreurs, bugs, questions - page 289

 
uniquement des journaux - le reclassement n'affectera pas les performances du conseiller expert.
etc.

Voici le code dans l'EA (j'ai essayé de nombreuses fonctions pour déterminer l'égalité de la ligne 0 de l'indicateur )

J'ai pris le plus simple.

if (Sp3Buffer[20]!=0 && Sp3Buffer[21]!=0 && Sp3Buffer[22]!=0 && Sp3Buffer[23]!=0 && Sp3Buffer[24]!=0)

ici nous avons les valeurs de la ligne d'indicateur ici à partir du journal du testeur via l'impression

[20]=34.40035703438407[21]=35.93782852396674[22]=35.97127995180715[23]=30.49164953708304[24]=32.90441573888087

il n'y a pas de zéro, mais en regardant l'indicateur - un zéro clair - et dans les valeurs de

de l'indicateur est également nul.

C'est quoi ce bordel ?

 

C'est le genre d'absurdité qui est apparu dans le journal après l'exécution de la commande de mise à jour du graphique :

2011.02.03 02:24:51 HistoryBase '#IBM' 1 barres invalides supprimées
2011.02.03 02:24:50 HistoryBase '#IBM' 1 barres invalides supprimées
2011.02.03 02:24:49 HistoryBase '#IBM' 1 barres invalides supprimées
2011.02.03 02:24:48 HistoryBase '#IBM' 1 barres invalides supprimées
2011.02.03 02:24:47 HistoryBase '#IBM' 1 barres invalides supprimées
2011.02.03 02:24:46 HistoryBase '#IBM' 1 barres invalides supprimées

etc. chaque seconde.

Sentry TF

 
alexluek:
uniquement des journaux - le reclassement n'affectera pas les performances du conseiller expert.
etc.

Voici le code dans l'EA (j'ai essayé de nombreuses fonctions pour déterminer l'égalité de l'indicateur ligne 0)

J'ai pris le plus simple.

ici nous avons les valeurs de la ligne d'indicateur ici à partir du journal du testeur via l'impression

il n'y a pas de zéro, mais en regardant l'indicateur - un zéro clair - et dans les valeurs de

de l'indicateur est également nul.

C'est quoi ce bordel ?

Avez-vous oublié d'inverser le tableau ?
 
sergey1294:
Avez-vous oublié d'inverser le tableau ?
L'ordre inverse d'indexation est défini à la fois dans l'indicateur et dans le conseiller expert, mais je ne sais pas ce qui ne va pas. Merci.
 

Intéressant, il s'avère que le même conseiller expert sur différents ordinateurs ajoute des modèles au graphique à partir de différents endroits :

sur 1 ordinateur depuis MetaTrader 5\Profiles\Templates

sur 2 ordinateurs depuis MetaTrader 5\MQL5\Files

Ajout de la ligne dansChartApplyTemplate(handle_Chart, "Sova15_30.tpl")

Qui peut m'aider à comprendre ?

 
Pouvez-vous me dire comment obtenir l'heure du dernier changement de position?
 
beginner:

Pouvez-vous me dire comment obtenir l'heure du dernier changement de position ?
https://www.mql5.com/ru/articles/138 y trouver ma position.Time()
Как использовать торговые классы Стандартной библиотеки при написании советника
Как использовать торговые классы Стандартной библиотеки при написании советника
  • 2010.11.10
  • Samuel
  • www.mql5.com
В статье рассказывается о том, как использовать основной функционал торговых классов Стандартной библиотеки при написании советников, в которых применяется открытие, закрытие и модификация позиции, проверка свободной маржи перед размещением торговых ордеров, размещение и удаление отложенных ордеров. Показано, как использовать торговые классы для получения свойств ордеров и сделок.
 
beginner:

Pouvez-vous me dire comment obtenir l'heure du dernier changement de position ?

Déterminez quelle transaction sur le symbole a été la dernière.

Vous pouvez l'attraper soit dans OnTrade() soit dans l'historique.

Destrolls:
https://www.mql5.com/ru/articles/138 y trouver ma position.Time()

C'est ainsi que l'heure d'ouverture de la position est renvoyée, si je me souviens bien (c'est-à-dire que, d'après ce que je comprends, elle renvoie l'heure de la première transaction qui a ouvert la position).

En ce qui concerne l'article mentionné, myhistory et mydeal peuvent être utiles(peut-être que quelque chose d'autre conviendra).

 
Interesting:

Déterminez quelle transaction sur le symbole a été la dernière.

Vous pouvez l'attraper soit dans OnTrade() soit dans l'historique.

C'est ainsi que l'heure d'ouverture de la position est renvoyée, si je me souviens bien (c'est-à-dire, d'après ce que je comprends, l'heure de la première transaction, qui a ouvert la position, est renvoyée).
Oui, c'est le problème, c'est-à-dire que nous devons trouver la dernière transaction pour l'instrument requis et obtenir son heure, pouvez-vous le simplifier ?
 
beginner:
Oui, c'est bien le problème, c'est-à-dire qu'il faut trouver la dernière offre pour l'instrument demandé et obtenir son temps, mais d'une manière plus simple ?

Êtes-vous intéressé par un poste spécifique (le symbole et son Id sont connus) ou par le cas général de tous les postes ?

Si vous regardez simplement l'historique et analysez les offres (en utilisant mydeal), alors approximativement oui :

1. Nous obtenons le nombre total de transactions pour la période, en les passant en revue, en sélectionnant uniquement celles qui concernent le symbole et/ou celles qui ont participé à la formation de la position.

if (HistorySelect(0,TimeCurrent()))
ulong d_ticket; // deal ticket
{
// Получить общее количество сделок в истории
int tot_deals = HistoryDealsTotal();

  for(int j=0; j<tot_deals; j++)
  {
  d_ticket = HistoryDealGetTicket(j);

    if(d_ticket>0)  
    {
    mydeal.Ticket(d_ticket)

      if(mydeal.Symbol()==SymbolTitle)
      {
      //формируем список сделок и анализируем его (если я правильно понял последняя сделка наша)
      }

    }   

  }

}

2. il est préférable de sélectionner les transactions non pas par symbole, mais par ID d'une position spécifique (c'est plus facile et plus fiable).

Bien que je sois sûr qu'il existe des solutions plus correctes et plus simples.