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

 
Vinin:

Et cette option ne convient pas. Ce n'est pas le meilleur.


J'ai vérifié, mais malheureusement ce n'est pas le bon. Je voudrais peindre la bougie exactement comme elle est.
 
Merci !
 
Vinin:

Cela fonctionnera, mais le résultat sera différent. Pas ce que vous attendez.

Pouvez-vous me dire ce qui ne va pas ? Il m'est encore difficile de naviguer dans ce programme aux fonctions peu familières.


Merci d'avance !

 
arabon:

Pouvez-vous me dire ce qui ne va pas ? J'ai encore du mal à naviguer dans ce programme aux fonctions peu familières.


Merci d'avance !


double CalculateProfit_last() {//прибыль от последенй сделки
   double Profit = 0;
   int cnt;
   if(OrdersTotal()!=0)
   {
     cnt = OrdersTotal() - 1;
        OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
        if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
           if (OrderType() == OP_BUY || OrderType() == OP_SELL) Profit = OrderProfit();
   }
   Profit=0.0;  // Зачем вести расчеты, если потом их обнулить
   Print(Profit);
   return (Profit);
}
Et de quel ordre parlons-nous ? Nous parlons du dernier ordre ouvert ou du dernier ordre fermé. Si c'est le seul, alors la question disparaît.
 
Vinin:

Et de quel ordre parle-t-on ? Le dernier ordre ouvert ou le dernier ordre fermé. Si c'est le seul, alors la question disparaît.

J'ai besoin de calculer le profit du dernier ordre fermé, bien sûr ce n'est pas le seul.


P.S. Je ne sais même pas pourquoi j'ai tout déballé =)

   }
   Profit=0.0;  // Зачем вести расчеты, если потом их обнулить
   Print(Profit);
   return (Profit);
}
 


Bonjour. Ce code est un code de test. La première question est de savoir comment faire apparaître la numérotation des lignes.

Et plus précisément : dans le code ci-dessus"ca[1]=Low[100] ; Seule cette variante est réaffectée", lesdonnées dutableau ne sont réaffectéesqu'à l'intérieur de la boucle. Peut-être que si un tableau est affecté à l'affichage des données du graphique, il ne peut être réaffecté qu'une seule fois ?

int start(){
int i=0 ;int k=0 ;
 while(i<=5000) 
   { 
  k=0 ;
  ca[i]=0;
 volume[i]=0;
 while(k<=10)
 {ca[i]= ca[i]+Volume[i+k]*(High[i+k]+Low[i+k])/2;
  volume[i]=volume[i]+Volume[i+k];
   k=k+1; } ca[i]=ca[i]/volume[i];
    i=i+1;//ca[1]=Low[100]; Переобозначение происходит только в этом варианте  
  }
  ca[1]=Low[100];//Переобозначение не происходит программа не видит  
  int a1=1;
  while(a1==1)//Переобозначение не происходит программа не видит
  {ca[1]=Low[100];
  a1=a1+1;}
  return(0);
  }
 
C'est comme ça que ça marche. Apparemment, j'ai répondu à ma propre question.
int start(){
int i=0 ;int k=0 ;
 while(i<=500) 
   { 
  k=0 ;
  ca1[i]=0;
 volume[i]=0;
 while(k<=10)
 {ca1[i]= ca1[i]+Volume[i+k]*(High[i+k]+Low[i+k])/2;
  volume[i]=volume[i]+Volume[i+k];
   k=k+1; } ca1[i]=ca1[i]/volume[i];
    i=i+1;
  }
 ca1[0]=Low[100];//Переобозначение  происходит программа  Видит
  //Цикл заполнения массива для отображения значений функции 
   i=0;
    while(i<=500)//Переобозначение происходит программа  Видит
     {ca[i]=ca1[i];
      i=i+1;}
  return(0);
  }
 
T-G:
Pouvez-vous me dire comment les fonds (AccountEquity() ) et les garanties (AccountMargin() ) sont séparés pour les positions d'achat et de vente ?

Regardez si vous pouvez trouver ces résultats dans les résultats personnalisés de I. Kim : https://www.mql5.com/ru/forum/131859.

С

 
Désolé.
leonid553:

Regardez si vous pouvez trouver ces résultats dans les résultats personnalisés de I. Kim : https://www.mql5.com/ru/forum/131859.

С


Malheureusement, je n'en ai pas trouvé.
 

Veuillez conseiller un débutant, AccountBalance() - il montre le montant des fonds dans le solde, mais j'ai besoin de calculer mon solde calculé (calc_balance),

Cette balance est simple, mais je ne peux pas encore l'écrire, il y a un montant total d'ordres ouverts et en attente (Orderstotal), par exemple 3 ordres, le risque maximum par position ouverte est de 2%,

pour ouvrir une autre transaction, je dois calculer le risque maximum (2%) du solde calculé, c'est-à-dire que la logique de la formule serait en gros : calc_balance=AccountBalance()-2%-2%-2%,

C'est-à-dire, une soustraction cohérente - mais comment l'écrire en code n'a pas encore réussi, j'espère pour votre aide.

Merci d'avance !

Raison: