Erreurs, bugs, questions - page 356

 
Im_hungry:

J'ai écrit quelque chose de similaire à ceci, mais vous devriez étiqueter les tableaux différemment - (peu susceptible d'aider, mais au moins

c'est mieux). changez-le :

à ces chaînes de caractères.

Changez aussi :

à cela.

Pas comme ça. Il y a plusieurs constructions, les anciennes méthodes Type() des classes CPositionInfo, COrderInfo et CDealInfo de la bibliothèque standard ont été remplacées par les méthodes PositionType(), OrderType() et DealType(). Ainsi, ces fonctions doivent être corrigées dans les programmes MQL5 précédemment écrits, sinon elles ne fonctionneront pas correctement.

Je réécrirais votre code comme ceci :

#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Trade\SymbolInfo.mqh>

input int TriX_PARAM=14;
input int TriX_PARAM_Close=50;

double TriX[];
double TriX_Close[];
int TriXHandle;
int TriXHandle_Close;
CTrade mytrade;
CPositionInfo myposition;
CSymbolInfo mysymbol;
COrderInfo myorder;
int OnInit()
  {

   TriXHandle=iTriX(NULL,PERIOD_CURRENT,TriX_PARAM,PRICE_WEIGHTED);
   TriXHandle_Close=iTriX(Symbol(),PERIOD_CURRENT,TriX_PARAM_Close,PRICE_WEIGHTED);
   ArraySetAsSeries(TriX_Close,true);
   ArraySetAsSeries(TriX,true);
   return(0);
  }

void OnTick()
  {
   if(myposition.Select(_Symbol))
    { 
     CopyBuffer(TriXHandle_Close,0,0,4,TriX_Close);
     if(myposition.PositionType()==POSITION_TYPE_BUY) 
//Закрываем позицию
     {
      if(TriX_Close[1]<TriX_Close[2] && TriX_Close[2]>TriX_Close[3]) 
        mytrade.PositionClose(_Symbol);
     } 
     else  
      if(TriX_Close[1]>TriX_Close[2] && TriX_Close[2]<TriX_Close[3]) 
        mytrade.PositionClose(_Symbol);
    }
   else
//Открываем позицию
     {
      CopyBuffer(TriXHandle,0,0,4,TriX);
      if(TriX[1]>TriX[2] && TriX[2]<TriX[3]) mytrade.Buy(0.1);
      if(TriX[1]<TriX[2] && TriX[2]>TriX[3]) mytrade.Sell(0.1);
     }
  }
Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
Rosh:
Toutes les fenêtres du tableau sont numérotées à partir de zéro. 0 - fenêtre principale du graphique, 1 - fenêtre du premier indicateur, qui est affiché dans une fenêtre séparée. Et ainsi de suite.

Il n'y a aucune question à ce sujet ! Mais où sont les valeurs du minimum et du maximum, et pourquoi n'apparaissent-elles qu'après les manipulations avec le graphique ?
 
KffAlex:
Il n'y a aucun doute là-dessus ! Mais où sont les valeurs minimales et maximales, et pourquoi n'apparaissent-elles qu'après avoir manipulé le graphique ?
Mieux vaut écrire au service d'assistance. C'est très probablement un bug.
 

Veuillez m'éclairer sur la signification de cette erreur.

internal error #108             0       0

lors de la compilation du script ?

 
alsu:

Veuillez m'éclairer sur la signification de cette erreur.

lors de la compilation du script ?

D'après ce que j'ai compris, c'est

108 Nom inapproprié pour #define

 
Interesting:

D'après ce que je comprends.

108 Nom inapproprié pour #define

c'est parce qu'il n'y a pas de définitions ou d'inludes dans le script.

 
 
alsu:

le truc c'est qu'il n'y a pas de définitions ou d'inludes dans le script.

Le script contient à la fois
#include
и
#define
 
alsu:

Puis transfert bloc par bloc du script vers un autre normalement compilé. et vous tomberez sur une ligne défectueuse.

Écrivez ce que c'était.

 
sergeev:

puis transfert bloc par bloc du script vers un autre script normalement compilé. et vous tomberez sur une ligne défectueuse.

Faites-moi savoir ce que c'est.

C'est simple.

J'ai commenté /* */ tous Corps de la fonction OnStart() - l'erreur est restée. Y compris, après avoir redémarré la machine.

Je répète, pas d'inludes ou de définitions, rien au niveau global, y compris les variables externes. Je ne veux pas encore réinstaller le terminal))

Les développeurs, HA !!! Que signifie l'erreur interne #108 ???? ?