[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 98

 
Ha, j'ai compris. Le problème, c'est que le fichier que je travaillais à éditer a été ouvert depuis une clé USB hier. Le texte est ouvert, tout va bien, mais je n'ai pas branché la clé USB aujourd'hui. Je ne comprends pas ce que je veux compiler, j'ai du texte, mais je n'y ai pas accès pour l'éditer. Mec, ça arrive.
 
hoz:

Kim a une fonction :

J'ai deux questions :

1. Pourquoi traduit-il d'abord l'heure en une chaîne, puis la chaîne en une heure ?

2. Pourquoi cette condition dans la fonction ?

Parce que vérifier l'heure en dessous... Juste ici :

Et dans les paramètres des fonctions, les variables temporelles ne sont pas de type datetime, mais int pour une raison quelconque...


1. Pour remplacer les valeurs actuelles des heures et des minutes dans l'heure par les valeurs spécifiées dans les paramètres de la fonction.

Je le ferais comme ça :

db=TimeCurrent()-TimeCurrent()%86400+hb*3600+mb*60;

2. Pour ajouter des dates de début ou de fin correctes par jour

datetime et int sont essentiellement la même chose, et les paramètres ne sont pas des dates complètes, mais seulement le nombre d'heures et de minutes.

 
MikeM:


2. Pour une correction supplémentaire des dates de début ou de fin par jour

Pourquoi ? Nous devons limiter le temps de trading de l'EA. Et nous ne sommes pas intéressés par le temps entre l'heure de fin de l'heure de négociation et l'heure de début de l'heure de négociation, car le conseiller expert ne négocie pas à ce moment-là ! Je ne comprends pas ce que sont les NONSENSES...

MikeM:

Le datetime et le int sont essentiellement la même chose, et les paramètres ne sont pas les dates complètes, mais seulement le nombre d'heures et de minutes.

Mais le temps doit être le temps, comment peut-il n'y avoir aucune différence ?
 
hoz:


Mais le temps doit être le temps, comment peut-il n'y avoir aucune différence ?


Le temps est un nombre, et un nombre entier en plus.
 
Vinin:

Le temps est un nombre, et c'est un nombre entier.


Je comprends ce que je veux dire avec le temps - ce n'est pas une date, c'est pourquoi il est déclaré comme un nombre. Mais qu'en est-il :

  if (db>=de) {
    if (hc>=he) de+=24*60*60; else db-=24*60*60;
  }

Autant de variantes que j'ai vues, je n'ai jamais vu quelque chose comme ça... C'est étrange en quelque sorte. De plus, il n'y a pas de cycle ici, et moins et plus le temps du début et de la fin du commerce. Je ne comprends pas ce point.

En fait, nous avons obtenu les heures de début et de fin de db et de trade ci-dessus. Donc, cette pièce peut être effacée, et ensuite nous vérifierons l'heure :

  if (TimeCurrent()>=db && TimeCurrent()<=de) return(True);
  else return(False);

Quel est l'intérêt d'écrire du code supplémentaire ? Veuillez expliquer ce point. En fait, ce n'est pas logique.

 
hoz:


Si nous n'utilisons pas les minutes, nous pouvons le simplifier. Je comprends ce que nous voulons dire avec le temps - ce n'est pas la date, nous déclarons la date. Qu'en est-il :

Autant de variantes que j'ai vues, je n'ai jamais vu quelque chose comme ça... C'est étrange en quelque sorte. De plus, il n'y a pas de cycle ici, et moins et plus le temps du début et de la fin du commerce. Je ne comprends pas ce point.

En fait, nous avons obtenu les heures de début et de fin de db et de trade ci-dessus. Donc, cette pièce peut être effacée, et ensuite nous vérifierons l'heure :

Quel est l'intérêt d'écrire du code supplémentaire ? Veuillez expliquer ce point. Ce n'est pas vraiment logique.


Chacun est libre de faire ce qu'il veut. Igor l'a fait comme ça. Je le fais différemment.

Et si vous obtenez un plus ou un moins. Donc, cela dépend du moment de la négociation. Par exemple, comment faire passer les échanges de 21 heures à 5 heures.

Si les procès-verbaux n'étaient pas utilisés, tout serait beaucoup plus simple.

 
Vinin:


Chacun est libre de le faire à sa manière. Igor l'a fait comme ça. Je fais les choses différemment.

Et si c'est plus ou moins. Cela dépend donc du moment de la négociation. Par exemple, comment organiser le commerce entre 21 heures et 5 heures du matin.

Et le code est redondant. Cela n'a pas d'importance.

Si les procès-verbaux n'étaient pas utilisés, tout serait beaucoup plus simple.


Faire en sorte que l'heure de négociation soit de 21.00 à 23.59, puis de 00.01 à 5.00

Y a-t-il d'autres options ?

 
hoz:


Faire les heures de trading de 21.00 à 23.59 et ensuite de 00.01 à 5.00

Y a-t-il d'autres options ?

Si vous écrivez if(Hour() >= 21 || Hour() < 5) ce sera de 21.00 à 4.59.
 
borilunad:
Si vous écrivez if(Hour() >= 21 || Hour() < 5) ce sera de 21.00 à 4.59.

C'est bizarre. Il passe le cap de minuit et n'en tient pas compte du tout ?
 
Comment prendre en compte le milieu de la nuit ?
Raison: