Erreurs, bugs, questions - page 604

 
Urain:

Le symbole et la période ne doivent pas nécessairement être identiques à ceux du graphique, vous pouvez utiliser d'autres périodes et symboles.

Je viens d'être surpris par cette question (c'est pourquoi je ne la comprends pas), elle se trouve dans la description de iCustom()

PS L'obtention des données d'un indicateur calculé est effectuée à l'aide de la fonction CopyBuffer(), vous devez spécifier son handle et le numéro du buffer (la description est dans le manuel).

PPS iCustom lance le flux de calcul de l'indicateur, CopyBuffer reçoit les données de l'indicateur.

Désolé d'être ennuyeux, j'avais remarqué la différence d'orthographe entre "CCFp_2" et "CCFp__2". question supprimée.
 
sergeev:

Et alors ?

c'est votre obligation de lancer cet indicateur sur une certaine devise.

Quoi qu'il en soit, ne vous donnez pas la peine - allez-y et vérifiez.

Personnellement, tout fonctionne pour moi. Je l'appelle depuis un conseiller expert et je le lance même sur un graphique.

Wildly s'excuser pour ennuyer, pas immédiatement remarqué la différence dans l'écriture "CCFp_2" et "CCFp__2. question rejetée.
 
Je ne comprends pas pourquoi dans Comment(ligne 114) ArrayMaximum et ArrayMinimum affichent constamment 199, malgré le fait que le "c"(3ème paramètreArrayMaximum/minimum) augmente constamment...
Dossiers :
 
Graff:
Je ne comprends pas pourquoi dans Comment(ligne 114) ArrayMaximum et ArrayMinimum affichent toujours 199, malgré le fait que "c"(3ème paramètreArrayMaximum/minimum) augmente constamment...

Si la ligne 110 :

      while(wcond && y>=0 && c>=0 && !IsStopped())

remplacer par :

      if(wcond && y>=0 && c>=0 && !IsStopped())

...là commencent quelques dessins animés...

En général, je soupçonne que beaucoup de boucles intégrées (y compris les boucles implicites pour ArrayMaximum), ainsi que dans l'indicateur, bloquent le terminal à chaque tick! Cependant, si Comment sort non pas les résultats des extrema mais une certaine variable c, il ne se bloquera pas en cas de while.

En plus, regardez l'aide :

int  ArrayMaximum(
   double  array[],               // массив для поиска
   int     start=0                // с какого индекса начинаем поиск
   int     count=WHOLE_ARRAY,     // количество проверяемых
   );

Ici, le début est toujours =199 tandis que le compte augmente de 0 à 200 - d'où toutes les conséquences. Par exemple, il commence à bouger lorsque i et c sont échangés :

         hm=ArrayMaximum(h,c,i);
         lm=ArrayMinimum(l,c,i);
jusqu'à ce qu'il passe en moins avec une erreur terminale : array out of range.
 
Graff:
Je ne comprends pas pourquoi dans Comment(ligne 114) ArrayMaximum et ArrayMinimum affichent constamment 199, malgré le fait que le "c"(3ème paramètreArrayMaximum/minimum) augmente constamment...
   for(int i=calc_bars-1;i>=0;i--)// peaks loop//i=199
     {
      double pips_lh=0,pips_hl=0;
      int y=i,c=1;
      bool wcond=true;
      while(wcond && y>=0 && c>=0 && !IsStopped())
        {
         int hm=ArrayMaximum(h,i,c);//от 199
         int lm=ArrayMinimum(l,i,c);
         Comment(hm+" "+lm);
         double max_high=h[hm],min_low=l[lm];
         //Comment(max_high+" "+min_low);
         if(fabs(max_high-min_low)>min_pips)
           {
            HighestBuffer[hm]=h[hm];
            LowestBuffer[lm]=l[lm];
           }
         c++;// if h-l<min pips => add next bar
         y--;// new i
        }
      i=y;//цикл for где-та тут и заканчивается, т.е. выполняется 1 раз, когда i=199.
     }
 

Bonjour, veuillez m'indiquer à qui je peux m'adresser pour le problème suivant - MT5 ne fonctionne pas sur mon deuxième ordinateur - j'ai tout essayé - j'ai changé de système d'exploitation et de fournisseur d'accès, mais comme si un mauvais sort m'empêchait de voir le terminal sur mon ordinateur...

moby_dick:

Aidez-moi, comprenez bien - MT5 fonctionne sur mon ordinateur de bureau, mais il ne veut pas fonctionner sur mon ordinateur portable - il dit qu'il n'y a pas de connexion à MetaQuotes-Demo... Je ne peux pas ouvrir un nouveau compte de démonstration à partir de la première version de MT5, ni me connecter à un compte de démonstration créé sur un autre ordinateur... Les deux ordinateurs ont Windows XP Pro SP3, ma connexion Internet est la même, la désactivation de l'antivirus et du pare-feu n'aide pas... Peut-être y a-t-il des composants obligatoires qui doivent être installés ?

Merci d'avance - je suis avec mon ordinateur portable 99,9% du temps...


Qu'est-ce que la malchance et comment y faire face ???

Comme je l'ai écrit ci-dessus (post 11.01.2010 14:03 ) MT5 s'est obstiné à ne pas vouloir fonctionner sur mon ordinateur portable de la première à la dernière version... J'ai récemment obtenu un nouvel ordinateur portable qui est tombé en panne et j'en ai obtenu un plus récent avec une puce multi-core etc... J'espérais pouvoir faire fonctionner MT5 localement plutôt que depuis un VPS comme je le fais depuis 2 ans, mais en installant MT5 j'ai obtenu une invite proxy que je n'ai pas pu contourner... Je me suis souvenu que MT5 devait fonctionner sans installation, j'ai donc copié le répertoire MT5 du VPS et j'ai essayé de le lancer... Fonctionne sans problème, mais se plante immédiatement comme avant... Que diable, le cordonnier n'est pas sans bottes, mais il ne voit ses bottes que sur la photo de l'UPU à l'autre bout de la terre... Que peut-on faire ?

 
moby_dick:

Bonjour, Pourriez-vous m'indiquer à qui je peux m'adresser pour le problème suivant - MT5 ne fonctionne pas sur mon deuxième ordinateur - j'ai tout essayé - j'ai changé de système d'exploitation et de fournisseur, mais comme par une main maléfique, je ne peux pas voir le terminal sur mon ordinateur...

Veuillez écrire une demande au Service Desk. Il vous faut des détails et nous essaierons de régler le problème.
Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
 

Salut ! bibliothèque standard MovingAverages.mqh

//+------------------------------------------------------------------+
//| Simple Moving Average |
//+------------------------------------------------------------------+
double SimpleMA(const int position,const int period,const double &price[])
{
//---
double result=0.0;
//--- check position
if(position>=period && period>0)
{
//--- calculate value
for(int i=0;i<period;i++) result+=price[position-i];
result/=period;
}
//---
return(result);
}

Il s'avère que la fonction SimpleMA ne peut pas obtenir la valeur moyenne de l'ensemble du tableau ! Supposons qu'il existe un tableau price[] comportant 100 éléments. J'ai besoin d'obtenir sa valeur moyenne. Je le passe dans la fonction :

SimpleMA(99, 100, prix) ;

J'obtiens 0, car 99<100. Qu'est-ce qui m'empêche de corriger la période (mise en évidence dans le code) en (période-1) ?

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
Question aux développeurs. Les capacités de la nouvelle version comprennent l'événement CHART_EVENT_MOUSE_MOVE.

Les événements CHART_EVENT_MOUSE_DOWN et CHART_EVENT_MOUSE_UP seront-ils introduits ?

Sans eux, vous ne pouvez pas disposer d'un système de glisser-déposer à part entière.

 
Vigor:
Question aux développeurs. Les capacités de la nouvelle version comprennent l'événement CHART_EVENT_MOUSE_MOVE.

Allez-vous ajouter les événements CHART_EVENT_MOUSE_DOWN et CHART_EVENT_MOUSE_UP ?

Sans eux, le glisser-déposer n'est pas une solution à part entière.

Je soutiens cette demande.

Maintenant nous devons utiliser les fonctions GetCursorPos + GetKeyState.
Avec l'apparition de EVENT_MOUSE_MOVE, nous n'aurons pas besoin de GetCursorPos et avec MOUSE_DOWN et MOUSE_UP nous n'aurons pas non plus besoin de GetKeyState.

Les programmes MQL5 amélioreront d'abord l'interactivité et la réactivité aux actions de l'utilisateur. Deuxièmement - pourra les vendre sur le Marché, car ils n'utiliseront plus de DLL.


Veuillez écrire une demande à servicedesk (vous pouvez avec l'indication de ce post). Je suis sûr que d'ici à ce que vous sortiez une nouvelle version, vous aurez le temps de l'ajouter. La mise en œuvre n'est pas difficile.
D'autant plus que c'est déjà dans l'intérêt des développeurs - puisque le développement d'une bibliothèque standard de contrôles est en cours.

PS.

Je suis très heureux que la société elle-même ait décidé de créer une bibliothèque de contrôles, et ait réalisé (rencontré) que donner ces fonctionnalités est tout simplement nécessaire.
J'espère que les améliorations des fonctionnalités et de la convivialité se poursuivront.