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

 
tara:

La taille du "fuck off" est fixée par un paramètre de l'ordre appelé "slippage". Dans votre cas, il était de 0, donc un écart de 1 pt dans le devis a entraîné une re-cotation.


Comme s'il n'y avait pas de 1 pt là... n'inventez pas.
 

Heroix

Je ne connais pas bien les sociétés de courtage, j'ai un contrat avec Finam, je négocie par modem et je ne sais pas à quelle société de courtage mes ordres vont... Je ne sais pas à quelle société de courtage vont mes ordres... Je n'en ai pas encore la moindre idée.

Je ne sais pas quels sont mes écarts. Je n'ai aucune idée du type d'écarts auxquels j'ai affaire. Le spread euro étant flottant, il peut être inférieur à 15 pips, bien que cela soit peu probable. Je pense à environ 30 pips.

Dès que j'ai obtenu les conditions pour clôturer l'ordre, mon terminal s'est figé avec un message

2013.01.10 14:47:45 TradeContext : erreur ping
2013.01.10 14:48:50 '15082' : échec du ping

Après quelques tentatives de reconnexion, la commande a été clôturée :)

En général, je dirais que le trading est amusant, c'est automatisé, je dois corriger les erreurs tout le temps :)

 

Bonjour à tous !

Les gens, s'il vous plaît conseiller comment résoudre le problème dans le code suivant :

       double sSup=Sup-(Udal*Point);                           // Sup - это уровень поддержки, Udal - расстояние от него
       zapS=0;
       for(int iS=0; iS<=OrdersTotal(); iS++)                  // перебор открытых ордеров
         {
          if(OrderSelect(iS,SELECT_BY_POS,MODE_TRADES)==true)  // выбор рыночного ордера
            {
             if(OrderSymbol()!=Symb) continue;                 // только нужный инструмент
             if(OrderType()>1) continue;                       // только рыночные
             sPO=OrderOpenPrice();                             // его цена
             sellTip=OrderType();                              // его тип
             if(sPO==sSup && sellTip==1) zapS=1;               // если цена открытого ордера совпадает с sSup и уровень является Sell, то поднять флаг
            }
         }
Le problème se situe dans la ligne if(sPO==sup && sellTip==1) zapS=1 ; (ou pour être précis, dans le fragment sPO==sup ) . Le problème suivant : par exemple si sPO=1,3100 et sSup=1,3100 le drapeau est toujours égal à 0 (la valeur 1,3100 est imprimée aux deux valeurs via Print ) . Où est-ce que je fais une erreur ? Pourquoi zapS ne devient-il pas 1 ?
 
WindSW:

Bonjour à tous !

Les gens, s'il vous plaît conseiller comment résoudre le problème dans le code suivant :

Le problème se situe dans la ligneif(sPO==sup && sellTip==1) zapS=1 ; (ou pour être précis, dans le fragment sPO==sup ) . Le problème suivant : par exemple si sPO=1,3100 et sSup=1,3100 le drapeau est toujours égal à 0 (la valeur 1,3100 est imprimée aux deux valeurs via Print) . Où est-ce que je fais une erreur ? Pourquoi zapS ne devient-il pas 1 ?


https://www.mql5.com/ru/articles/1561
 
ilunga:

https://www.mql5.com/ru/articles/1561
Merci ! Je vais essayer de le réparer
 
WindSW:

Bonjour à tous !

Les gens, s'il vous plaît conseiller comment résoudre le problème dans le code suivant :

Le problème se situe dans la ligneif(sPO==sup && sellTip==1) zapS=1 ; (ou pour être précis, dans le fragment sPO==sup ) . Le problème suivant : par exemple si sPO=1,3100 et sSup=1,3100 le drapeau est toujours égal à 0 (la valeur 1,3100 est imprimée aux deux valeurs via Print) . Où est-ce que je fais une erreur ? Pourquoi zapS ne devient-il pas 1 ?

Vérifiez ici...
 

Bonjour à tous, je n'arrive pas à comprendre ce qui ne va pas avec plusieurs EAs qui fonctionnent en même temps, un seul ordre s'ouvre, les autres ignorent les signaux, merci de m'indiquer ce qui ne va pas.Ordres - fonction déterminant le nombre d'ordres sur le magicien

total=OrdersTotal() ;

si(total >=-1 && total == Ordres (symbole,opération,magie))

 
dimarik0000:

Bonjour à tous, je n'arrive pas à comprendre ce qui ne va pas avec plusieurs EAs qui fonctionnent en même temps, un seul ordre s'ouvre, les autres ignorent les signaux, merci de m'indiquer ce qui ne va pas.Ordres - fonction déterminant le nombre d'ordres sur le magicien

total=OrdersTotal() ;

si(total >=-1 && total == Ordres (symbole,opération,magie))


c'est quoi cet état de folie ? ! :)

Ecrivez cet opérateur en russe et je vais essayer de corriger la chaîne.

 
hoz:
J'ai eu l'idée d'utiliser des modèles de Price Action bien connus appelésDBLHC etDBHLC.




Conditions pour sa formation :

DBLHC (Bull Setup)- barres avec des lows identiques et des closes plus élevées.
Deux (peut être trois ou plus) barres consécutives avec les mêmes creux, le prix de clôture de la dernière étant supérieur au maximum de la précédente. La différence entre les points bas de barres adjacentes ne doit pas dépasser 3 pips. Plus il y a de barres dans le montage, plus le signal est fort.

DBHLC (Bearish Setup)- barres avec des hauts égaux et des fermetures inférieures.
Deux (trois ou plus) barres consécutives avec les mêmes maximums, le prix de clôture de la dernière étant inférieur au minimum de la précédente. La différence entre les maximums des barres adjacentes ne doit pas dépasser 3 points. Plus il y a de barres dans le montage, plus le signal est fort.

Prenez, par exemple, leDBLHC (configuration haussière)

Le cours d'ouverture de la barre actuelle doit être proche du minimum de la barre précédente. C'est facile à écrire. Mais nous sommes intéressés par le cas où il y a plus d'une barre avec le même minimum ou presque, par exemple 5. Comment devons-nous travailler dans un tel cas ? Comment spécifier cette condition afin de prendre en compte non seulement la barre précédente mais aussi les barres situées plus tôt dans l'historique ?

Je suppose que nous devrions passer en boucle les barres du passé au présent :

Alors nous devrions d'une manière ou d'une autre poser la condition que si le minimum de la barre suivante est également égal au minimum de la ou des barres précédentes, alors... plus loin nous le comparons.... Comment mettre cela en œuvre ?

Voici un conseil :

NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point --- différence entre les barres adjacentes. Si la condition n'est pas remplie -> Return(False) ; (Retourne faux)

Retourner(Faux) après le passage de la boucle

Nous pouvons le faire d'une manière différente :

Si la condition NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point est vraie, augmente le compteur des barres adjacentes (initialement égal à zéro) de 1,

si la condition est fausse, nous retournons la valeur du compteur de barres adjacent.

Plus le nombre retourné par la fonction est grand, plus l'ensemble est fort. Si un zéro est renvoyé - le montage n'est pas présent.

 

Bonjour ! Pouvez-vous me dire comment me souvenir de l'heure du passage de l'AM ?

Est-ce le bon choix ?

   datetime up;

   if (iMA(NULL,0,20,0,MODE_SMA,PRICE_CLOSE,0) >                                             
       iMA(NULL,0,33,0,MODE_SMA,PRICE_CLOSE,0))
       {
   up=iTime(NULL,0?????????????????
       }