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

 
Bonjour, j'ai une situation comme celle-ci et je veux la régler sans utiliser de béquilles. Le Conseiller Expert ouvre une position et a un Stop et Take. Il existe une situation où, pendant le test sur une bougie (c'est-à-dire lorsque la condition d'ouverture de la position est remplie), juste après la fermeture du premier ordre, les deuxième, troisième, etc. ordres sont ouverts. Cela est dû au fait que les conditions d'ouverture d'une position sont remplies sur cette même bougie et qu'un ordre stop ou take se déclenche quelque temps plus tard (les conditions d'ouverture sont toujours remplies, la bougie n'est pas fermée).

Veuillez indiquer comment effectuer une entrée (la condition d'ouverture d'une position) et si la même bougie déclenchera un take ou un stop afin de ne pas ouvrir une nouvelle position (la condition d'ouverture est satisfaite). Merci !

 
Profitpamm:
Bonjour, j'ai une situation comme celle-ci et je veux la régler sans utiliser de béquilles. Le Conseiller Expert ouvre une position et a un Stop et Take. Il existe une situation où, pendant le test sur une bougie (c'est-à-dire lorsque la condition d'ouverture de la position est remplie), juste après la fermeture du premier ordre, les deuxième, troisième, etc. ordres sont ouverts. Ceci est dû au fait que c'est sur cette bougie que les conditions d'ouverture d'une position sont remplies et qu'après un certain temps, un ordre stop ou take se déclenche (la condition d'ouverture est toujours satisfaite, la bougie n'est pas fermée).
Veuillez indiquer comment effectuer une entrée (la condition d'ouverture d'une position) et si la même bougie déclenchera un take ou un stop afin de ne pas ouvrir une nouvelle position (la condition d'ouverture est satisfaite). Merci !

Vérifiez par date s'il y a une position ouverte et si la position a été ouverte et fermée sur ce chandelier...
 
Profitpamm:
Bonjour, j'ai une situation comme celle-ci et je veux la régler sans utiliser de béquilles. Le conseiller expert ouvre une position et a un Stop et Take. Il existe une situation où, pendant le test sur une bougie (c'est-à-dire lorsque la condition d'ouverture de la position est remplie), juste après la fermeture du premier ordre, les deuxième, troisième, etc. ordres sont ouverts. Cela est dû au fait que les conditions d'ouverture d'une position sont remplies sur cette même bougie et qu'un ordre stop ou take se déclenche quelque temps plus tard (les conditions d'ouverture sont toujours remplies, la bougie n'est pas fermée).

Veuillez indiquer comment effectuer une entrée (condition d'ouverture d'une position) et si la même bougie déclenchera un take ou un stop afin de ne pas ouvrir une nouvelle position (la condition d'ouverture est remplie). Merci !


Voici un exemple de la façon dont vous pouvez l'utiliser...

datetime zap_tim;

//=======================
void start()
{
if(zap_tim!=Time[0])
 {
  OrderSend(............);
  zap_tim=Time[0];
 }
}
 
-Aleks-:

Vérifiez par date s'il y a une position ouverte et si la position a été ouverte et fermée sur cette bougie...
Merci Aleks !
 
Valerius:


Voici un exemple de la façon dont il peut être utilisé...

Valerius, merci beaucoup pour cette précision !
 

Le code standard de la référence ne fonctionne pas

https://docs.mql4.com/ru/basis/types/casting

Apporter des données du type structure simple

333

comment traiter ?

Utilisé pour convertir des valeurs de différents types de base. Par exemple, il existe un tableau uchar arr[]. Nous devons écrire la valeur de double à une certaine position.

void GetBytes(double x,uchar &arr[],int pos)

Ou vice versa.

double GetDouble(uchar &arr[],int pos)

Peut-être quelqu'un peut-il suggérer une solution plus simple.

Приведение типов - Типы данных - Основы языка - Справочник MQL4
Приведение типов - Типы данных - Основы языка - Справочник MQL4
  • docs.mql4.com
Приведение типов - Типы данных - Основы языка - Справочник MQL4
 

doubleiMA(
symbole de chaîne de caractères,// nom du symbole
inttimeframe,// cadre temporel
intma_period,// période
intma_shift,// décalage de la moyenne
intma_method,// méthode de calcul de la moyenne
intapplied_price,//type de prix
intshift// shift
);

Comment mettre une paire à la place dusymbole ?
 
Rustam Bikbulatov:

doubleiMA(
stringsymbol,// nom du symbole
inttimeframe,// timeframe
intma_period,//période
intma_shift,// décalage de la moyenne
intma_method,// méthode de calcul de la moyenne
intapplied_price,//type de prix
int shift//shift
) ;

Comment mettre une paire à la place dusymbole ?

"EURUSD"
 
Alekseu Fedotov:

"EURUSD"

C'est entre guillemets. Merci !
 
Rustam Bikbulatov:

doubleiMA(
stringsymbol,// nom du symbole
inttimeframe,// timeframe
intma_period,//période
intma_shift,// décalage de la moyenne
intma_method,// méthode de calcul de la moyenne
intapplied_price,//type de prix
int shift//shift
) ;

Comment mettre une paire à la place d'unsymbole ?
double  iMA("EURCAD", Period(), ...);