[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 310

 
Parn25:
Pouvez-vous me dire s'il est possible de modifier le lot d'un ordre en attente ?

Les ordres de trading sont modifiés par la fonction OrderModify(...).

La fonction Lots ne modifie pas les lots.

 
mersi:
Deux questions.

1. Comment puis-je écrire/entrer la première variable et les variables suivantes double abc[10] dans le tableau double ab=a*b?
2. Comment écrire la onzième variable dans un tableau, en supprimant la première ?

L'ordre dans lequel les variables sont écrites dans le tableau (en avant ou en arrière) n'a pas d'importance. Les variables du tableau sont nécessaires pour déterminer la moyenne arithmétique.
J'ai résolu le problème.
 
Parn25:
Pouvez-vous me dire s'il est possible de changer le lot d'un ordre en attente ?

Vous ne pouvez pas changer le terrain. Vous pouvez supprimer cet ordre en attente et en définir un nouveau avec un volume différent.

 
artmedia70:

Comment pouvez-vous savoir si un travail est terminé et si ce n'est pas simplement une personne qui change les délais, par exemple ? Même si c'est par accident...


Il est alors plus facile d'interdire les sauts d'une période à l'autre. D'après mes observations, une telle conception empêche de passer physiquement d'une période à l'autre, p. ex.

insérer dans start() ou au début de init(). Bien que non, la commutation se produit avec le retour, mais littéralement en fractions de seconde.

void Startimeframe()
{
        int hWnd, wParam;
        switch(Period())
        {
                case PERIOD_M1:  wParam = 33137; break;
                case PERIOD_M5:  wParam = 33138; break;
                case PERIOD_M15: wParam = 33139; break;
                case PERIOD_M30: wParam = 33140; break;
                case PERIOD_H1:  wParam = 33135; break;
                case PERIOD_H4:  wParam = 33136; break;
                case PERIOD_D1:  wParam = 33134; break;
                case PERIOD_W1:  wParam = 33141; break;
                case PERIOD_MN1: wParam = 33334; break;
        }
        hWnd = WindowHandle(Symbol(),Period());
        if(wParam!=33137) PostMessageA(hWnd,WM_COMMAND,33137,0);
}
 

La fonction clôt les ordres 2 jours après leur ouverture.

if (Time[0]-OrderOpenTime() >= 2*1440*60 )  
          {
           OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,4 ),3,Red);
          }

Quelle serait la bonne façon d'exclure les week-ends du calcul du temps écoulé ?

J'envisage de percer avec iBarShift. Est-ce la bonne façon de procéder ?

 
Operr:

La fonction clôt les ordres 2 jours après leur ouverture.

Quelle serait la bonne façon d'exclure les week-ends du calcul du temps écoulé ?

J'envisage de percer avec iBarShift. Est-ce la bonne façon de procéder ?

Je l'ai fait dans mon EA. Cependant, j'ai compté le nombre total de jours de bourse moins les week-ends, afin de pouvoir compter correctement les bénéfices.

OrderSelect(0,SELECT_BY_POS,MODE_HISTORY);
   Days=MathRound((TimeCurrent()-OrderOpenTime())/(3600*24));
  //--вычесть выходные дни--------
   for(i=0; i<Days; i++)
    {  
      if(TimeDayOfWeek(CurTime()-i*24*3600)==0 || TimeDayOfWeek(CurTime()-i*24*3600)==6)  Days3++;
    }
   Days-=Days3;
 
Pourriez-vous me dire comment réduire le temps d'optimisation, sur M1 un paramètre est optimisé (temps de prévision du testeur) 28 heures sur une histoire de 24 heures ?
 

Dis-moi pourquoi il y a une erreur quand je compile.

//+------------------------------------------------------------------+
//|                                                                  |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright ""
#property link      ""

int Count=0;

//+------------------------------------------------------------------+
//|                                   |
//+------------------------------------------------------------------+
int start()                                     // Спец. ф-ия start()   
{   double Price = Bid;                          // Локальная перемен.   
My_Function();                               // Вызов польз. ф-ии   
Alert("Новый тик ",Count,"   Цена = ",Price);// Сообщение   
return;                                      // Выход из start()   }
//--------------------------------------------------------------------

int My_Function()                               // Описание польз.ф-ии   
{   
Count++;                                     // Счётчик обращений    
}
 
Cheb999:

Dis-moi pourquoi il y a une erreur quand je compile.

return;                                      // Выход из start()   }

Parenthèse fermante à l'intérieur d' un commentaire

 
Operr:

La fonction clôt les ordres 2 jours après leur ouverture.

Quelle serait la bonne façon d'exclure les week-ends du calcul du temps écoulé ?

J'envisage de percer avec iBarShift. Est-ce la bonne façon de procéder ?

Avez-vous des bougies de week-end ou de vacances sur votre graphique ? Ils sont déjà ignorés. Non ?

Ensuite, comptez le nombre de bougies qui se sont écoulées depuis que vous avez ouvert la position.