[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 294

 
gheka: bonjour les personnes gentilles et avancées !!! Quelqu'un peut-il me donner un indice ?

et bonjour à vous aussi, monsieur le lettré. ! !!!!!! si vous le voulez bien.

Qu'est-ce qu'il y a aujourd'hui ? Ce que vous avez aujourd'hui, votre courtier peut l'avoir demain (ou hier) - différents fuseaux horaires ... OK, pas de leçon. Vous pouvez essayer de cette façon :

if(TimeYear(t)== Year() && TimeDayOfYear(t)== DayOfYear())


En général, il y a quelques commentaires sur le code : (1) utilisation de la variable t dans la comparaison sans pré-initialisation (nous pouvons avoir une erreur logique à tout moment), (2) pourquoi la comparaison pour "aujourd'hui" a été retirée de la boucle, (3) pas d'opérateur break dans la boucle (pourquoi essayer tous les ordres, nous avons besoin d'au moins un ordre, qui a été fermé aujourd'hui).

 

J'ai une question concernant le testeur de stratégie dans MT4, quelle est la raison pour laquelle les alertes vides apparaissent dans le journal pendant le test ?

2013.04.18 00:22:19     2010.03.22 17:30  sova EURUSD,M30: Alert: 

2013.04.18 00:22:19     2010.03.22 17:31  sova EURUSD,M30: Alert: 

2013.04.18 00:22:19     2010.03.22 17:31  sova EURUSD,M30: Alert:  

et qu'est-ce que cela pourrait signifier ?

 
gheka:

bonjour les personnes gentilles et avancées !!!

J'ai vraiment besoin de votre aide !!! aidez-moi à ajouter le code à la place de " ######## == today ".

En fait, nous avons besoin d'obtenir de la liste de l'historique si une commande a été fermée aujourd'hui, c'est-à-dire qu'il y aura un tas de commandes du même magicien, mais fermées à des jours différents,

et la fonction renvoie vrai ou faux si l'ordre d'aujourd'hui est fermé

Je vous en serais très reconnaissant

https://www.mql5.com/ru/forum/107476/page53#111201
 
GaryKa:

et bonjour à vous aussi, monsieur le lettré. ! !!!!!! si vous le voulez bien.

Qu'est-ce qu'il y a aujourd'hui ? Ce que vous avez aujourd'hui, votre courtier peut l'avoir demain (ou hier) - différents fuseaux horaires ... OK, pas de leçon. Vous pouvez essayer de cette façon :

if(TimeYear(t)== Year() && TimeDayOfYear(t)== DayOfYear())


En général, il y a quelques commentaires sur le code : (1) utilisation de la variable t dans la comparaison sans pré-initialisation (nous pouvons avoir une erreur logique à tout moment), (2) pourquoi la comparaison pour "aujourd'hui" est retirée de la boucle, (3) pas d'opérateur break dans la boucle (pourquoi devons-nous regarder tous les ordres, nous avons besoin d'au moins un ordre qui a été fermé aujourd'hui).


merci beaucoup
 

Je l'ai vraiment fait, je devais avoir l'air d'une merde)) - merci, il m'a fallu deux heures pour le trouver.
 
tuner:

J'ai une question concernant le testeur de stratégie dans MT4, pour quelle raison peut-il y avoir des alertes vides dans le journal pendant le test ?

et qu'est-ce que cela pourrait signifier ?


D'après mon expérience, cela signifie que le code atteint l'alerte mais que celle-ci contient une variable de type chaîne de caractères qui est vide au moment où elle est imprimée. Eh bien, s'il n'y a rien du tout dans le code, cela signifie que soit le code a été écrit par inattention, soit le développeur l'a mis là juste pour lui : "C'est arrivé, c'est bon".
 
borilunad:

Les rubriques ! Je détermine le lot minimum à partir de la marge libre, ou je ne l'ouvre pas, pour ne pas me faire prendre par un appel de marge !

J'ai vérifié, c'est plus clair que dans le Wiki, mais ce n'est pas la peine de l'appliquer, c'est trop compliqué ! L'arithmétique est plus pratique, plus visuelle !


Oui. Je suis tout à fait d'accord avec vous pour dire que c'est un mal de tête ! Mais, néanmoins, je suis très intéressé. Si tout est écrit plus facilement, pourquoi le programmeur l'écrit-il de cette façon ? Pour que quelqu'un d'autre lisant ce code lui casse le cerveau et ne puisse pas le maîtriser ?

Je regarde cette chaîne et je ne comprends pas pourquoi tout compliquer à ce point. ....

 
GaryKa:
à hoz D'abord, un peu de théorie


Et maintenant la conclusion.

L'expressionsoulignée renvoie le logarithme décimal (logarithme en base 10) de bd_LOTSTEP, qui est la puissance de 10 pour obtenir bd_LOTSTEP.


Hmm. Vous vous trompez...

//IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII+
//|        Функция, определения минимальной разрядности лота                          |
//IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII+
int LotDecimal()
{return (MathCeil (MathAbs (MathLog (bd_LOTSTEP) / MathLog (10))));}

Ce n'est pas un logarithme décimal, c'est un logarithme naturel ! La partie supérieure sera donc la puissance de e pour obtenir bd_LOTSTEP, et la partie inférieuresera la puissance dee pour obtenir10.

Mais je ne comprends pas la logique de la fonction de toute façon.

 
hoz:


Oui. Que c'est un mal de tête, je suis tout à fait d'accord avec vous ! Mais, néanmoins, je suis très intéressé. Si tout est écrit plus facilement, pourquoi le programmeur l'écrit-il de cette façon ? Pour que quelqu'un d'autre lisant ce code se casse le cerveau et ne puisse pas le maîtriser ?

Je regarde cette chaîne et ne comprends pas pourquoi tout compliquer à ce point.....

Je vais prendre la défense du programmeur ici ! S'il le fait pour lui-même, alors ce qu'il a déduit précédemment est simplement collé pour plus de rapidité, comme le montage d'un jeu de construction. S'il le fait pour une commande, alors le client peut demander à ce que tout soit clair pour les non-initiés ou ceux qui ne savent pas quoi demander. Et si tu veux t'y mettre, on t'a déjà bien expliqué le quoi et le comment, peut-être que tu t'y mettras. Je ne suis pas encore intéressé par les logarithmes. Je suis plus intéressé par la création d'un algorithme adapté au marché. :))
 
borilunad:
Je vais prendre la défense du programmeur ici ! S'il le fait pour lui-même, il l'insère juste pour la vitesse, comme pour la construction d'un jeu de construction. S'il le fait pour une commande, alors le client peut demander à ce que tout soit clair pour les non-initiés, ou ne sait pas quoi demander. Et si tu veux t'y mettre, on t'a déjà bien expliqué le quoi et le comment, peut-être que tu t'y mettras. Je ne suis pas encore intéressé par les logarithmes. Je suis plus intéressé par la création d'un algorithme adapté au marché.


Boris, pour l'instant, je veux apprendre à écrire mon propre code avec des bibliothèques. En voici quelques-unes que j'ai rencontrées... mais elles sont écrites de manière trop tordue. Il est impossible de comprendre ce qu'il y a dans le complexe. Bien que je le comprenne de manière segmentée, bien sûr.

Je ne veux pas écrire de manière à ce que, si vous changez quelque chose dans le code, vous deviez changer quelque chose à d'autres endroits. Ceux qui l'ont eu, vont me comprendre... Je veux apprendre à écrire correctement avec les bibliothèques.

Raison: