[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 894

 
artmedia70:
Où voulez-vous en venir ? C'est comme si tu pouvais demander l'heure... ou la santé... :))))))

C'est juste un rappel. Je lis le livre, mais il y a des points qui doivent être clarifiés - alors je les écris. et parfois il n'y a pas de réponse.

S'il vous plaît - ne prenez pas cela de manière agressive, je suis de bonne foi !

 
belck:

C'est juste un rappel. Je lis le livre, mais il y a des points qui doivent être clarifiés, alors je les écris. et parfois il n'y a pas de réponse.


Vous payez pour les réponses ? Non ? Ou on vous ignore ? Ou on vous doit une faveur ?

SZS : Je regarde souvent ce fil, comment je peux aider, mais à condition que la personne qui a posé une question, au moins il comprend ce qu'il a demandé, tandis que vous avez votre montagne de questions ressemble à la paresse de lire - expliquer à moi

 
Bonjour ! Je n'arrive pas à comprendre ce qui ne va pas avec ? ???. Ne modifie pas l'ordre de marché
slb =NormalizeDouble(Bid - (StopLoss * Point),Digits) ; // calculer le stop pour les positions d'achat//
tpb =NormalizeDouble(Ask + (TakeProfit* Point),Digits) ; // calculer le profit pour les positions d'achat//
sls =NormalizeDouble(Ask + (StopLoss * Point),Digits) // calcul du stop pour les positions de vente//
tps =NormalizeDouble(Bid - (TakeProfit* Point),Digits) ;

//================================================== ==================//
int total=OrdersTotal() ;
int n=0 ;
for (int i=total-1 ; i>=0 ; i--)
{
if(OrderSelect(i, SELECT_BY_POS))
{
if(OrderSymbol()==Symbol())
{
n++ ;
}}
if ( total == 1 )
{
for (int k=total-1 ; k>=0 ; k--)
{
if(OrderSelect(k, SELECT_BY_TICKET)
Alert("l'ordre est", k) ;
{
if ((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(O rderStopLoss()==0))
{
OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue) ;
Alert("error", GetLastError()) ;

}}}}
return(0);}

QUEL EST LE PROBLÈME ? AIDEZ-NOUS S'IL VOUS PLAÎT ........... ?????
 
IgorM:


Est-ce que vous payez pour les réponses ? Non ? Ou est-ce que vous êtes ignoré ? Ou est-ce que vous devez quelque chose à quelqu'un ?

ZS : Je regarde souvent dans ce fil, ce que je peux, j'aide, mais à condition que la personne qui a posé une question, au moins il comprend ce qu'il a demandé, tandis que vous avez votre montagne de questions ressemble à paresseux de lire - dites-moi

Je t'ai dit de ne pas le prendre trop mal. On n'est pas là pour se disputer. Je n'aime pas non plus quand quelqu'un refuse d'aider - c'est-à-dire qu'il décide pour moi de donner des conseils ou de lire un livre. Comme on dit - intelligent !

Encore une fois, les gars, s'il vous plaît ne le prenez pas agressivement ou ma demande est encore une contradiction, si oui, alors je ne l'écrirai plus.

 
int total=OrdersTotal();
int n=0;
for (int i=total-1; i>=0; i--)
  {
    if(OrderSelect(i, SELECT_BY_POS))
      {
        if(OrderSymbol()==Symbol())
            n++;
      }
  }
if (total == 1)
  {
    for (int k=total-1; k>=0; k--)
      {
        if(OrderSelect(k, SELECT_BY_TICKET))
          {
            Alert("ордер есть ", k);
            if ((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0))
              {
                OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue);
                Alert("ошибка ", GetLastError());
              }
          }
      }
  }
return(0);
Essayez ce code.
 

Quelqu'un connaît-il un script "trailing stop" déclenché par des niveaux, c'est-à-dire que le prix a atteint 150 - stop 130, puis a atteint 180 - stop 170 (par exemple) (niveaux tapés par vous-même).

Merci d'avance.

 
VOLDEMAR:
Bonjour ! Je n'arrive pas à comprendre quel est le problème ? ???. Ne modifie pas l'ordre de marché
slb =NormalizeDouble(Bid - (StopLoss * Point),Digits) ; // calcul du stop pour les positions d'achat///
tpb =NormalizeDouble(Ask + (TakeProfit* Point),Digits) ; //calcul du profit pour les positions d'achat///
sls =NormalizeDouble(Ask + (StopLoss * Point),Digits) ; //calculer le stop pour les positions de vente///
tps =NormalizeDouble(Bid - (TakeProfit* Point),Digits) ;

//================================================== ==================//
int total=OrdersTotal() ;
int n=0 ;
for (int i=total-1 ; i>=0 ; i--)
{
if(OrderSelect(i, SELECT_BY_POS))
{
si(OrderSymbol()==Symbol())
{
n++ ;
}}}
si ( total == 1 )
{
pour (int k=total-1 ; k>=0 ; k--)
{
if(OrderSelect(k, SELECT_BY_TICKET))
Alert("la commande existe", k) ;
{
si ((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OderStopLoss()==0))
{
OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue) ;
Alert("erreur", GetLastError()) ;

}}}}
return(0);}

QUEL EST LE PROBLÈME ? AIDE ........... ?????

Vous sélectionnez une position sur le billet. Mais vous ne vérifiez pas exactement OÙ il se trouve... Le poste peut être dans ceux qui sont déjà fermés :

bool OrderSelect( int index, int select, int pool=MODE_TRADES)

Cette fonction permet de sélectionner un ordre pour une manipulation ultérieure. Renvoie VRAI si la fonction se termine avec succès. Renvoie FALSE si la fonction échoue. Pour obtenir des informations sur une erreur, vous devez appeler la fonction GetLastError().

Le paramètre pool est ignoré si la commande est sélectionnée par le numéro de ticket. Le numéro de billet est un identifiant unique pour la commande. Pour déterminer dans quelle liste un ordre est sélectionné, il faut analyser son heure de clôture. Si l'heure de clôture de l'ordre est 0, alors l'ordre est ouvert ou en attente et est pris dans la liste des positions ouvertes du terminal. Une position ouverte peut être distinguée d'un ordre en attente par son type. Si l'heure de clôture n'est pas égale à 0, alors l'ordre est clôturé ou en attente et a été sélectionné dans l'historique du terminal. La distinction entre un ordre fermé et un ordre en attente supprimé peut également être faite par type d'ordre.
 
AlexAlex:

Quelqu'un connaît-il un script "trailing stop" déclenché par des niveaux, c'est-à-dire que le prix a atteint 150 - stop 130, puis a atteint 180 - stop 170 (par exemple) (niveaux tapés par vous-même).

Merci d'avance.

Cherchez sur le site "trailing" ou "trawl" - vous le trouverez.
 
VOLDEMAR:
Bonjour ! Je n'arrive pas à comprendre quel est le problème ? ???. Ne modifie pas l'ordre de marché

Essayez comme ça :

slb = 25; // расчёт стопа для бай позиций//
tpb = 25; // расчёт профита для бай позиций//
sls = 25; // расчёт стопа для селл позиций//
tps = 25; 

//================================================== ==================//
int start {
ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-slb*Point,Ask+tpb*Point,"My order #"+counter,16384,0,Green);
     if(ticket<0)
       {
        Print("OrderSend failed with error #",GetLastError());
        return(0);
       }

}
 
AlexAlex:

Quelqu'un connaît-il un script "trailing stop" déclenché par des niveaux, c'est-à-dire que le prix a atteint 150 - stop 130, puis a atteint 180 - stop 170 (par exemple) (niveaux tapés par vous-même).

Merci d'avance.

https://www.mql5.com/ru/code/7108 .No.4