Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 757

 
Ozero:
Je voulais dire que l'ordre ne se ferme pas :( Désolé si je ne l'ai pas exprimé de cette façon, je suis encore un débutant.

Cela fonctionne très bien.

//+------------------------------------------------------------------+
//|                                                        Ozero.mq4 |
//|                                            Copyright 2014, Vinin |
//|                                             http://vinin.ucoz.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, Vinin"
#property link      "http://vinin.ucoz.ru"
#property version   "1.00"
#property strict
// -------- переменные --- Н -----
extern double gLot=0.1;            // размер лота для покупки 
extern double gPoint=0.001;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
// -------- переменные --- К ----- 
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {

// Открытие позиции
   if(OrdersTotal()==0)
     {
      Print(" Открытие первой позиции ");
      double _Ask=MarketInfo("GBPUSD",MODE_ASK);
      int ticket=OrderSend("GBPUSD",OP_BUY,gLot,_Ask,15,0,0);
      if(ticket>0)
        {
         Print(" ОРДЕР ОТКРЫТ ",ticket);
        }
     }

   double _Bid=MarketInfo("GBPUSD",MODE_BID); //для цены
   for(int pos=OrdersTotal()-1;pos>=0;pos--)
     {
      if(OrderSelect(pos,SELECT_BY_POS))
        {
         if(OrderOpenPrice()+gPoint<_Bid)
           {
            OrderClose(OrderTicket(),OrderLots(),_Bid,15);
           }
        }
     }
   return(0);
  }
//+------------------------------------------------------------------+
Dossiers :
ozero.mq4  2 kb
 
Vinin:

Cela fonctionne très bien.

Bonjour Vinin.

J'ai analysé votre code. Belle solution à mon problème. Mais quand même, mon code a-t-il fonctionné pour vous ? Ou est-ce que "ça marche" fait référence à votre version du programme ?

Il est important pour moi de comprendre le langage MQL.


Question sur votre version. Pourquoi ne déclarez-vous pas les variables _Bid et _Ask au début du programme ? Est-ce autorisé dans mql4 ?


Ozero.

 
Vinin:

Cela fonctionne très bien.

Fantastique ! Votre programme fonctionne. Mais pourquoi le mien ne fonctionne pas comme ça ?
 
Ozero:
Fantastique ! Votre programme fonctionne. Mais pourquoi le mien ne fonctionne pas comme ça ? ??

A quoi la première partie est-elle comparée ici ?

           if (AktualBid>=AktualAsk+0.010 && PozOtk1==false)

Si vous avez corrigé le code pour obtenir la deuxième valeur, comme on vous l'a conseillé :

                   AktualAsk=MarketInfo( "GBPUSD",MODE_ASK);

vous ne l'avez pas fait pour le premier :

      AktualBid=NormalizeDouble(Bid,Digits); //для цены

Et Vinin l'a réparé :

   double _Bid=MarketInfo("GBPUSD",MODE_BID); //для цены

C'est probablement tout ce qui est fantastique. Mais je n'en suis pas sûr, vérifiez par vous-même.

 
Bonjour, aidez-moi à comprendre l'indicateur, je veux savoir quelle formule est utilisée pour calculer la valeur "Formule 0" ainsi que la valeur "Formule 1".
Dossiers :
 
zigga85:
Bonjour, aidez-moi à comprendre cet indicateur, je veux savoir quelle formule est utilisée pour calculer la valeur de la "Formule 0", ainsi que la valeur de la "Formule 1".
(Haut+Bas+Close)/3 et (Haut+Bas+2*Close)/4
 
Vinin:

Cela fonctionne très bien.

Cher modérateur Vinin !!!!

Je voulais depuis longtemps vous remercier pour vos réponses sincères. L'un d'entre eux m'a aidé il y a longtemps dans ma transition vers le commerce réel. Vous m'avez conseillé le bon algorithme de fermeture d'ordre au lieu de celui que j'ai écrit moi-même. J'utilise toujours le vôtre.

Les conseils donnés dans ce fil de discussion sont très agréables et utiles.

Encore une fois, merci beaucoup !

 
Vinin:

Cela fonctionne très bien.

Bonne nuit.


0 erreur, un avertissement : la valeur de retour de 'OrderClose' doit être vérifiée 46 13 est la ligne OrderClose(OrderTicket(),OrderLots(),_Bid,15) ;


Ozero.

 
Ozero:

Bonne nuit.


0 erreur, un avertissement : la valeur de retour de 'OrderClose' doit être vérifiée 46 13 est la ligne OrderClose(OrderTicket(),OrderLots(),_Bid,15) ;


Ozero.


ResetLastError();
if(!OrderClose(OrderTicket(),OrderLots(),_Bid,15);) Print("Чё-та не закрылася позиция. Фигня вот такая происходит: "+GetLastError());
 
artmedia70:

Mettez un " ;" derrière le support.

Le programme fonctionne, MAIS il échoue occasionnellement avec l'erreur 4108.


Ozero.

Raison: