[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 260

 
ikatsko: Ce que je ne comprends pas du fragment : iTime donnera la valeur du temps d'ouverture de la barre décalé par rapport au temps actuel par le nombre de_ barres_à_passer. Cela signifie que le temps ainsi obtenu sera toujours inférieur au temps actuel. Avec chaque nouvelle barre, elle sera également déplacée vers le haut. Et tout cela est lié à l'histoire de l'entreprise. Et alors ? Comment cela fonctionnera-t-il pour sauter un bar ?

Remplacez OrderOpenTime par l'heure de votre commande

f(iTime(Symbol(),period_bar,number_of_bars_to_skip)<your_command_time) return

 
paukas:

Remplacez OrderOpenTime par l'heure de votre commande

f(iTime(Symbol(),period_bar,number_of_bars_to_pen)<your_command_time) return

Je crois que j'ai compris. time_your_command définit le début de la prochaine barre et leretour s'arrête après les_bars_to_skip ! Neat. Merci !
 
Bicus:

Qu'est-ce qui pourrait être plus compliqué que ça ?

Le 0ème élément du tableau aura le prix du dernier tick, le 1er élément aura le prix il y a 1 tick, le 2ème élément aura le prix il y a 2 ticks, etc.

Ou ai-je mal compris quelque chose et voulais-je dire autre chose ?

C'est nouveau pour moi, j'apprends seul à partir d'un manuel - pouvez-vous m'expliquer ?
#property copyright "Bicus"
#property link      "Bicus"


double aPrices [5]; //мы объявили массив с пятью значениями внутри

void PutStack (double p_Price) //вот мне не понятно. Эта функция выступает как шаблон? Она показывает программе, как работать? Объясните что это плз.
{
  int nCounter; //создали переменную целого числа
  
  for (nCounter = 4; nCounter > 0; nCounter--) //это цикл, который начинается с 4х и идет к нулю (я так понял - он будет сохранять 4 тика)
    aPrices [nCounter] = aPrices [nCounter - 1]; //присваиваем массиву (например) с номером 3 значиние массива с номером  2 (а разве надо не наоборот?). 
    
  aPrices [0] = p_Price; //если p_Price - это тик, то в этой строчке мне все понятно - мы присваиваем первому значению массива настоящий тик.
}

int start()
{
  int nCounter; //опять создали переменную целого числа
  
  PutStack (Bid); //тут не понятно... Putstack=Bid?
  
  for (nCounter = 0; nCounter < 5; nCounter++) //тут создаем цикл, который идет от нуля, чтоб заполнять массив, но почему внутри его нет массива? он не нужен?
    Print (nCounter, "-й тик: ", DoubleToStr (aPrices [nCounter], Digits)); //тут выводим значение
}
 

Bonjour, chers experts.

J'ai cherché toute l'aide et je n'ai trouvé aucune réponse sur les forums. La question est simple : MQL4 dispose-t-il d'une fonctionnalité simple permettant de signaler le moment où un ordre en attente se déclenche ou non ?

D'après les informations disponibles, une telle fonction n'existe pas. La fonction OrderOpenTime() indique le moment où un ordre en attente a été placé pour exécution, mais il me semble que nous ne pourrions pas savoir à quel moment il est devenu un ordre au marché sans utiliser un EA pour suivre le statut des ordres sur le compte.

Veuillez me conseiller si quelqu'un a une solution simple. Le conseiller expert est plutôt improductif, il n'y a aucun sens à l'utiliser en permanence si ses services ne sont requis qu'une ou deux fois par jour. Nous avons besoin de quelque chose de plus simple, ce serait une fonction intégrée, qui informerait de l'heure de son déclenchement... Le trader en a besoin pour comptabiliser correctement les ordres en fonction de leur heure d'ouverture, de sorte que, par exemple, il soit toujours possible de dire lequel des ordres actuellement ouverts ou déjà clôturés a l'heure d'ouverture la plus tardive. Dans le cas de la commande en cours, nous ne pouvons pas le faire. L'ordre en attente pourrait être placé il y a 2 heures et clôturé il y a une heure, dans cet intervalle d'une heure d'autres ordres peuvent s'ouvrir et se clôturer et dans le terminal l'heure d'ouverture de l'ordre en attente qui est devenu un ordre de marché est de 2 heures et nous devons connaître l'heure réelle de son déclenchement.

Je serai heureux de recevoir vos commentaires.

 
Starting:

Bonjour, chers experts.

J'ai cherché toute l'aide et je n'ai trouvé aucune réponse sur les forums. La question est simple : MQL4 dispose-t-il d'une fonctionnalité simple pour signaler l'heure de déclenchement de l'ordre en attente ou non ?

D'après les informations disponibles, une telle fonction n'existe pas. La fonction OrderOpenTime() indique le moment où un ordre en attente a été placé pour être exécuté mais il me semble que nous ne pourrions pas savoir à quel moment il est devenu un ordre au marché sans utiliser un EA pour suivre le statut des ordres sur le compte.

Veuillez me conseiller si quelqu'un connaît une solution simple. Le conseiller expert est plutôt improductif, il n'y a aucun sens à l'utiliser en permanence si ses services ne sont requis qu'une ou deux fois par jour. Nous avons besoin de quelque chose de plus simple, ce serait une fonction intégrée, qui informerait de l'heure de son déclenchement... Le trader en a besoin pour comptabiliser correctement les ordres en fonction de leur heure d'ouverture, de sorte que, par exemple, il soit toujours possible de dire lequel des ordres actuellement ouverts ou déjà clôturés a l'heure d'ouverture la plus tardive. Dans le cas de la commande en cours, nous ne pouvons pas le faire. L'ordre en attente pourrait être placé il y a 2 heures et clôturé il y a une heure, dans cet intervalle d'une heure d'autres ordres peuvent s'ouvrir et se clôturer et dans le terminal l'heure d'ouverture de l'ordre en attente qui est devenu un ordre de marché est de 2 heures et nous devons connaître l'heure réelle de son déclenchement.

Je serai heureux de recevoir vos commentaires.

Je ne comprends pas pourquoi vous n'êtes pas satisfait de l'EA, vous n'allez pas faire un système de trading complexe basé sur un réseau neuronal avec auto-optimisation, vous avez juste besoin de vérifier à chaque tick si le pendule fonctionne et quand c'est le cas vous auriez un message texte sur l'écran ou audio ou les deux, la calculatrice peut faire cela, rien à craindre ou avez-vous des problèmes pour écrire l'ordinateur ?
 
CLAIN:
Je suis novice en la matière, j'apprends seul à partir d'un manuel. Pouvez-vous m'expliquer ?

Le manuel ne répond pas à vos questions ?
 

Reporté :

Pyxlik2009 14.10.2011 03:52

Les gars, dites-moi ce que signifie l'erreur (nombre entier invalide comme paramètre 10 pour la fonction OrderSend) et comment la corriger ?

 

Bonne journée à tous, expert en code de programme !

Si vous pouviez m'expliquer la situation, dans mon EA le but de placer un ordre est à une certaine heure et un ordre par jour :

int H=Hour(),
    M=Minute();
if(H>=21 && M>=40)
{
   {
    Alert("Ордер открыт-",Ticket);
    return(0);
    }
   else 
   {
   Alert("Ошибка№=",GetLastError());
   return(0);
   }
}

Mais j'ai remarqué queif(H>=09 && M>=40) etif(H>=21 && M>=40) ont les mêmes conditions et il s'avère que l'ordre sera passé au moins deux fois par jour.

Que dois-je faire pour éviter ce problème ?

Merci pour votre soutien !

 

Starting:

.... Il est improductif de faire d'un expert un expert, et il est logique d'avoir un expert sur une base régulière, si ses services sont nécessaires une ou deux fois par jour.


Il y a une chose telle qu'un script. Quand vous en avez besoin, vous l'exécutez.
 
Valdemar:

...J'ai remarqué que les conditionsif(H>=09 && M>=40) etif(H>=21 && M>=40) sont les mêmes et il s'avère que l'ordre sera passé au moins deux fois par jour.
Qu'est-ce que j'aurais dû faire d'autre pour éviter ce problème ?

Veuillez consulter fréquemment la FAQ, il y a un grand nombre d'exemples qui peuvent vous être utiles. Et vous pouvez construire vos propres fonctions sur cette base.
isTradeTimeString - Renvoie l'indicateur permettant de trader par heure.
isTradeTimeInt - Renvoie l'indicateur permettant de négocier en fonction du temps.