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

 
Il ne peut y avoir qu'une seule classe dans un programme ? C'est juste que mon indicateur a cessé de compter tout ce qui était dans la première classe après avoir ajouté la deuxième.

MQL5
 
Tout le monde est passé à côté. Je n'ai pas encore résolu ce problème. Personne ne connaît la solution à ce problème ?
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
  • 2019.06.12
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 

Bonjour les commerçants. Veuillez m'indiquer s'il existe une option permettant de modifier le spread dans le testeur de stratégie MT5 ? Je peux modifier le spread dans le testeur de stratégie MT4 sans aucun problème, mais je ne comprends pas comment le faire dans MT5. Merci d'avance.

 
Kolya32:

Bonjour les commerçants. Pourriez-vous nous dire s'il existe une option de changement de spread dans le testeur de stratégie MT5 ? Je peux modifier le spread dans le testeur de stratégie MT4 sans aucun problème, mais je ne comprends pas comment le faire dans MT5. Merci d'avance.

L'écart ne peut pas être modifié. Mais vous pouvez tester avec un spread réel - pour ce faire, sélectionnez le mode de test "Every tick based on real ticks" et le test sera effectué avec un spread changeant dynamiquement (il changera exactement comme il l'a fait sur le compte réel).

De même, il est fortement recommandé de réaliser des tests avec différents délais d'exécution.

 
Vladimir Karputov:

L'écart ne peut pas être modifié. Mais vous pouvez tester avec un spread réel - pour ce faire, sélectionnez le mode de test "Every tick based on real ticks" et le test sera effectué avec un spread changeant dynamiquement (il changera exactement comme il l'a fait sur le compte réel).

Il est également fortement recommandé d'exécuter des tests avec des délais d'exécution différents.

Il s'avère que"Every tick based on real ticks" dans MT5 == "Current" dans MT4 Je vois merci.
 
Kolya32:
Il s'avère que"Every tick based on real ticks" dans MT5 == "Current" dans MT4.

Non, ce n'est pas égal.

  • Dans MetaTrader 4, en mode "spread actuel", le spread renvoyé par le serveur au moment où le test a été lancé est pris pour le test. Et si l'écart est flottant, il peut être n'importe quel écart dans le testeur - 2, 3, 10, 100..., mais il sera toujours constant - celui qui était sur le serveur lorsque le test a été lancé, et il sera différent d'un test à l'autre à condition que lorsque le test suivant est lancé dans ce mode, l'écart sur le serveur ait changé.
  • Dans MetaTrader 5, en mode "Every tick based on real ticks", les données historiques des ticks sont utilisées pour le test - ce sont les ticks qui étaient sur le serveur pendant la période de test. Par conséquent, si le spread est flottant, il sera flottant dans le testeur - il changera comme il était sur le serveur pendant la période que vous testez.
Et ce sont deux grandes différences.
 
Artyom Trishkin:

Non, ce n'est pas le cas.

  • Dans MetaTrader 4 en mode "spread actuel", le spread qui a été renvoyé par le serveur au début du test est pris pour le test. Et si l'écart est flottant, il peut être n'importe quel écart dans le testeur - 2, 3, 10, 100..., mais il sera toujours constant - celui qui était sur le serveur lorsque le test a été lancé, et il sera différent d'un test à l'autre à condition que lorsque le test suivant est lancé dans ce mode, l'écart sur le serveur ait changé.
  • Dans MetaTrader 5, en mode "Every tick based on real ticks", les données historiques des ticks sont utilisées pour le test - ce sont les ticks qui étaient sur le serveur pendant la période de test. Par conséquent, si le spread est flottant, il le sera dans le testeur - il changera comme il était sur le serveur pendant la période de test.
Ce sont deux grandes différences.
Je crois que je commence à comprendre. Merci beaucoup pour cette explication si détaillée. Je vais continuer à expérimenter et à trouver des solutions).
 

Comment transformer cette entrée 2015.06.23 00:00 en cette entrée 2015.06.23. Enlevez les 4 zéros. Je pensais faire ça.

datetime Data=D'2015.06.23 00:00';
string   Data_st=(string)Data;
Дальше с помощью строковой функции обрезать 2015.06.23 00:00 до такой записи 2015.06.23  или заменить ноли пустотой

J'ai regardé les fonctionsStringAdd,StringFill,StringReplace mais elles sont bool ou int et je ne comprends pas comment elles fonctionnent. Est-il possible de les utiliser ? Si oui, donnez un exemple car je suis un crétin.

 
Seric29:

Comment transformer cette entrée 2015.06.23 00:00 en cette entrée 2015.06.23. Enlevez les 4 zéros. Je pensais faire ça.

J'ai regardé les fonctionsStringAdd,StringFill,StringReplace mais elles sont bool ou int et je ne comprends pas comment elles fonctionnent. Est-il possible de les utiliser ? Si oui, donnez un exemple car je suis un crétin.


string  TimeToString(
   datetime  value,              // число
   int       mode=TIME_DATE      // формат вывода
   );
TimeToString - Преобразование данных - Справочник MQL4
TimeToString - Преобразование данных - Справочник MQL4
  • docs.mql4.com
TimeToString - Преобразование данных - Справочник MQL4
 
Alexey Viktorov:

Eh bien, ta version serait meilleure.

Raison: