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

 

Bon après-midi, messieurs.

J'ai besoin de votre avis sur cette question :

Je suis en train d'écrire un EA et j'ai rencontré un problème. Mon conseiller expert doit effectuer des calculs toutes les minutes pendant un nombre donné de minutes. Après cela, toutes les données doivent être réinitialisées et les calculs doivent être effectués depuis le début.

Et ainsi de suite, cycle par cycle. Le cycle de temps est de 5 à 60 minutes. Veuillez me conseiller comment décrire ceci correctement dans le code ?

Pour l'instant, la boucle de 5 minutes ressemble à ceci :

if ((TimeMinute(TimeCurrent()))==time1)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time2)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time3)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time4)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time5)

Price20=koef_10;


Je vous serais reconnaissant de toute aide.

 
Bonjour ! Qu'est-ce qui ne va pas ?
вершина =Low[iHighest( NULL, int timeframe, MODE_HIGH, i, start ) 

'MODE_HIGH' - variable attendue C:\Program Files (x86)\FXstart - MetaTrader\experts\indicators\policyclics.mq4 (46, 52)

MODE_HIGH est l'identifiant extrait du tableau correspondant è....

 
Pourquoi avez-vous besoin d'un int devant le délai ?
 
Merci, c'est une course ! !!
 
Oui, c'est ça, MERCI ! !!
 
extralifes:

Bon après-midi, messieurs.

J'ai besoin de votre avis sur cette question :

Je suis en train d'écrire un EA et j'ai rencontré un problème. Mon conseiller expert doit effectuer des calculs toutes les minutes pendant un nombre donné de minutes. Après cela, toutes les données doivent être réinitialisées et les calculs doivent être effectués depuis le début.

Et ainsi de suite, cycle par cycle. Le cycle de temps est de 5 à 60 minutes. Veuillez me conseiller comment décrire ceci correctement dans le code ?

Pour l'instant, la boucle de 5 minutes ressemble à ceci :

Je vous serais reconnaissant de toute aide.


Je propose cette solution :

//+------------------------------------------------------------------+
//|                                             Circle X Minutes.mq4 |
//|                                             Copyright 2012, Roll |
//|                                https://www.mql5.com/ru/users/roll |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, Roll"
#property link      "https://www.mql5.com/ru/users/roll"
extern int minut=5;datetime t;int k;
//+------------------------------------------------------------------+
int init(){t=0;k=minut;return(0);}int deinit(){return(0);}
//+------------------------------------------------------------------+
int start(){if(k>60)k=0;if(k==0)return(0);F1();if(k>0){if(F()==true)k--;}return(0);}
void F1(){if(t==0&&TimeSeconds(TimeCurrent())>=0)
  {Alert("цикл из ", minut," минут - УСТАНОВКА: время сервера - ",TimeToStr(TimeCurrent(),
   TIME_SECONDS));t=TimeCurrent();}}
bool F(){if(t!=0&&t<TimeCurrent()&&TimeSeconds(TimeCurrent())>=0)
  {Alert("цикл из ", minut," минут - ПРОВЕРКА: время сервера - ",TimeToStr(TimeCurrent(),
   TIME_SECONDS));t=TimeCurrent()+59;return(true);}} 
 
Roll:


Je propose cette solution :

Ça ne marche pas. Voici une capture d'écran :

Le timing semble être confus + après la fin du premier cycle, un nouveau n'a pas commencé.

 

Je n'arrive pas à trouver comment calculer la durée de vie entre la formation du motif et la barre 0.

Si le modèle existe et qu'il n'y a pas de référence précise au prix et au temps.

 

Bonjour, messieurs.

J'ai besoin de votre avis sur cette question : Comment écrire dans le code de l'Expert Advisor de sorte que de la balance, il a été retiré le montant spécifié, disons notre solde = 80 $ chaque fois que le solde = 80 $ + 10 $ Expert Advisor de la plus grande moins pris 5 $, la réduction du lot et la fermeture de ces 10 $ et un nouveau rapport a commencé à 85 $.

 
extralifes:

Ça ne marche pas. Voici une capture d'écran :

Le timing semble être confus + après la fin du premier cycle, un nouveau n'a pas commencé.


Que diriez-vous d'une autre option ?

//+------------------------------------------------------------------+
//|                                      Circle_X _Minutes_v.2.mq4 |
//|                                             Copyright 2012, Roll |
//|                                https://www.mql5.com/ru/users/roll |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, Roll"
#property link      "https://www.mql5.com/ru/users/roll"
extern int minut=5;datetime t;int k;
//+------------------------------------------------------------------+
int init(){t=0;k=minut;return(0);}int deinit(){return(0);}
//+------------------------------------------------------------------+
int start(){F1();if(k>60)return(0);if(k==0){t=0;k=minut;F1();}if(k>0){Sleep(59*950);k--;
if(k!=0)Alert("цикл из ", minut," минут - ПРОВЕРКА: время - ",TimeToStr(TimeLocal(),TIME_SECONDS));
  t=TimeLocal()+59;}return(0);}
void F1(){if(t==0&&TimeSeconds(TimeLocal())>=0)
  {Alert("цикл из ", minut," минут - УСТАНОВКА: время - ",TimeToStr(TimeLocal(),TIME_SECONDS));t=TimeLocal();}}
Raison: