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

 
Nikolai Semko:
Je ne comprends pas pourquoi il y a tant de battage autour du testeur. Je n'en ai besoin que pour un seul passage. Toute l'optimisation doit se faire à l'intérieur du programme.
La dernière fois qu'un testeur a été utilisé pour des manigances, c'était il y a environ 7-8 ans.

Je ne suis pas d'accord, j'ai maintenant terminé la recherche automatique de MM pour n'importe quel TS, hélas, les MM ne sont pas les règles, j'ai besoin d'un TS intraday, et pour trouver un MM qui est plus de 5% de drawdown pour une année d'essai ou deux juste en regardant le graphique - eh bien, pas réaliste (TS avec stoplosses !).

maintenant si j'ai une recherche automatique pour MM, différents TS seront testés - c'est déjà plus facile... en attendant longtemps, MM cherchera par entrées aléatoires pendant 49 heures par an, mais je ne les compterai pas à la main, je mettrai mon carnet demain, pour le laisser gonfler

je viens d'abandonner le test, il est temps de rentrer à la maison, voici un drawdown de 5% avec des entrées aléatoires, pour être honnête je ne sais même pas quel est le MM optimal ici - 10 groupes, dans chaque groupe un ordre sera soit lancé par une stratégie MM ou il sera déplacé de l'autre côté, et peut-être cet ordre sera réduit en lots ou augmenté, tous les paramètres sont raisonnables, lot max 0.5, min 0.1

 
Igor Makanu:

Eh bien, comme si je n'étais pas d'accord, j'ai maintenant terminé la recherche automatique de MM pour n'importe quel TS, hélas, les règles MM n'existent pas, j'ai besoin d'un TS intraday, et pour trouver un MM qui est plus de 5% de drawdown pour un test d'un an ou deux juste en regardant le graphique - eh bien, pas réaliste (TS avec stoplosses !).

maintenant si j'ai une recherche automatique pour MM, différents TS seront testés - c'est déjà plus facile... en attendant longtemps, MM cherchera par entrées aléatoires pendant 49 heures par an, mais je ne les compterai pas à la main, je mettrai mon carnet demain, pour le laisser gonfler

je ne sais même pas quel MM est optimal ici - 10 groupes, dans chaque groupe un ordre sera soit lancé par une stratégie MM soit déplacé vers un autre côté et peut-être cet ordre sera diminué en lots ou augmenté, tous les paramètres sont raisonnables, lot max 0.5, min 0.1


Qu'est-ce que le MM ? Machine quelque chose ?
Mais cette image est le résultat de l'optimisation(ajustement) des paramètres en fonction des données historiques. Et le résultat disponible est basé sur les mêmes données historiques. Il n'y a pas de magie, juste un hocus-pocus. Vous ne pensez pas que ce résultat se répétera au prochain intervalle de données futures, n'est-ce pas ?
Eh bien, vous ne pouvez pas avancer sur un terrain montagneux avec des précipices, en ne regardant que dans le rétroviseur.
Igor, je propose de changer pour toi.


 
Nikolai Semko:
Qu'est-ce que le MM ? Machine quelque chose ?

MM est le même que PUK. Règles de gestion de l'argent. :))))

 
Pul-Adgi Mo-UlStan:

J'ai déjà passé une journée entière à transférer le code prêt du hibou et de l'indicateur de mt4 à mt5 C'est fou que j'aurais déjà écrit 2 conseillers à partir de zéro sur mt4 avec des algorithmes différents.....

psc. bear with me, shhhhh. ok c'est seulement parce que j'ai besoin d'un test rapide de mt5....

Dommage qu'il n'y ait pas de convertisseur......

Je suppose que l'offre de tumblr a été rejetée en raison de la divulgation de la stratégie ?

 
Nikolai Semko:
Et qu'est-ce que MM ? Qu'est-ce que le MM ?
Mais cette image est le résultat de l'optimisation des paramètres en fonction des données historiques. Et le résultat disponible est basé sur les mêmes données historiques. Il n'y a pas de magie, juste des abracadabras. Vous ne pensez pas que ce résultat sera répété sur la prochaine section de données futures, n'est-ce pas ?
Eh bien, vous ne pouvez pas avancer sur un terrain montagneux avec des précipices, en ne regardant que dans les rétroviseurs.
Igor, je te propose de changer.


Gestion de l'argent

Ce n'est pas exactement de l'optimisation, les objectifs n'ont pas encore été atteints, les ordres en attente par des entrées aléatoires suivent le prix, dans l'optimiseur la sélection est effectuée selon la formule y=kx+b, plus tard j'utiliserai le polynôme et l'exposant mais l'optimiseur ne cherche que les facteurs et les valeurs des ordres, pour ne pas l'embrouiller - c'est une grille, enfin presque, mais les objectifs n'ont pas encore été atteints

Quand je regarde les marchés (bien que je le fasse avec une grande pause), je m'en occupe depuis que je me suis inscrit sur le forum. Bien sûr, il m'a fallu beaucoup de temps pour améliorer la couche de programmation en MQL, mais l'idée générale que j'ai eue pendant l'année d'écriture connexe d'experts suivant les demandes des travailleurs ;)))

pas de problème, allez-y

 
Nikolai Semko:

Avez-vous essayé d'utiliser des substitutions de macro au début du programme ?
par exemple :

Vous n'avez pas à changer quoi que ce soit.
La vérité est que, après avoir travaillé dans MQL5 pendant longtemps, vous serez ennuyé par MQL4. Je sais ce que c'est.

J'ai fait ça, merci ça marche))))

#define  Ask_ SymbolInfoDouble(_Symbol,SYMBOL_ASK)
#define  Bid_ SymbolInfoDouble(_Symbol,SYMBOL_BID)
#define  Point_ SymbolInfoDouble(_Symbol,SYMBOL_POINT)
 

Il y avait une fonction

OrderCloseTime

Dans µl5, il est remplacé par)))).

      //--- select history for access
      HistorySelect(0,TimeCurrent());
      //---
      int    orders=HistoryDealsTotal();  // total history deals

      for(int i=orders-1;i>=0;i--)
        {
         ulong ticket=HistoryDealGetTicket(i);
         if(ticket==0){Print("HistoryDealGetTicket failed, no trade history"); break;}
         //--- check symbol
         if(HistoryDealGetString(ticket,DEAL_SYMBOL)!=_Symbol) continue;
         //--- check Expert Magic number
         if(HistoryDealGetInteger(ticket,DEAL_MAGIC)!=(MA_MAGIC1||MA_MAGIC2)) continue;
         //--- check 
         datetime timCloseOrder=?????????????????????
         ГДЕ ВРЕМЯ ЗАКРЫТИЯ ОРДЕРА ВЗЯТЬ???????? 

Je perds la tête pour le troisième jour, j'ai passé en revue tous les pièges, je teste la limite de temps, je n'arrive pas à trouver comment faire, au moins écrivez où ils mettentOrderCloseTime()----)))))))))))))))

 
Pul-Adgi Mo-UlStan:

Il y avait une fonction

Dans µl5, il est remplacé par)))).

Je deviens fou le troisième jour j'ai passé en revue tous les pièges, tous testés la limite de temps je n'arrive pas à trouver comment le faire, au moins écrire où a fait OrderCloseTime()----)))))))))))))))

Oui, trouver le temps de fermer une position est un cauchemar...

Dans mql5, il n'y a pas de telle fonction a priori, car l'ordre "vie" s'arrête ici à la création de l'accord. Et en général, nous avons divisé ce que nous appelions un ordre dans mql4 en 3 étapes : Ordre - Transaction - Position. Pour obtenir la date et l'heure de clôture d'une position, nous devons sélectionner l'historique de la position requise et examiner toutes les transactions de celle-ci, en vérifiant le type d'entrée. Vous avez besoin de DEAL_ENTRY_OUT - sortie partielle ou complète de la position, et de DEAL_ENTRY_IN_OUT -retournement de la position. Ensuite, en vérifiant la date et l'heure d'une telle transaction, vous serez en mesure de savoir quand la position a été fermée.

 
Pul-Adgi Mo-UlStan:

comment le faire, au moins écrire où OrderCloseTime()----)))))))))))))))

J'ai également posé cette question, malheureusement seules quelques personnes sur le forum connaissent la réponse, voici le débuthttps://www.mql5.com/ru/forum/6343/page1096#comment_12518595.

voici la solutionhttps://www.mql5.com/ru/forum/6343/page1098#comment_12519819

il s'agit d'une solution universelle: https://www.mql5.com/ru/code/16006

 
Igor Makanu:

J'ai également posé cette question, malheureusement seules quelques personnes sur le forum connaissent la réponse, voici le débuthttps://www.mql5.com/ru/forum/6343/page1096#comment_12518595.

voici la solutionhttps://www.mql5.com/ru/forum/6343/page1098#comment_12519819

il s'agit d'une solution universelle: https://www.mql5.com/ru/code/16006

Il n'est pas très agréable et correct de donner des bibliothèques comme tutoriels dans MQL5 - elles ne fournissent aucune connaissance. Les bibliothèques sont nécessaires pour ceux qui comprennent déjà ce qui est quoi.

Raison: