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

 
Vitalie Postolache:
N'est-ce pas ce que j'ai écrit plus haut ?

Ok, donc on a écrit les paramètres requis dans le fichier, on l'a fermé, et quoi ?

En théorie, il devrait maintenant rouvrir le conseiller expert avec les paramètres requis, et comment un fichier texte peut-il faire cela (je ne vois pas d'autres fonctions dans la liste, bien que dans ce cas, vous ayez besoin d'un exe) ?

 
trader781:

Ok, donc on a écrit les paramètres requis dans le fichier, on l'a fermé, et quoi ?

En théorie, il devrait maintenant rouvrir l'EA avec les paramètres requis, et comment un fichier texte peut-il faire cela (je ne vois pas d'autre fichier dans la liste des fonctions, bien que dans ce cas, vous ayez besoin d'un exe)

Lorsque vous exécutez l'EA dans l'inite, vous chargez le fichier et lisez les paramètres à partir de celui-ci et c'est tout, voici un petit exemple.

void LoadParametres()
  {
   Print("*******************************************");
   Print("Start downloading data Magic = ",Magic," ",_Symbol);
   Print("*******************************************");
   int handle=FileOpen("Overturn_"+(string)Magic+"_"+_Symbol+".csv",FILE_CSV|FILE_READ);
   if(handle>0)
     {

      tiket=(int)FileReadNumber(handle);
      flag_series=FileReadBool(handle);
      TP = FileReadNumber(handle);
      SL = FileReadNumber(handle);
      series=(int)FileReadNumber(handle);
      Lots=FileReadNumber(handle);

      FileClose(handle);
      Print("*******************************************");
      Print("Loading data completed Magic = ",Magic," ",_Symbol);
      Print("*******************************************");
     }
  }


Voir

 

Bonne journée à tous !

J'ai le bouton "Auto-Trade" dans mon terminal - j'ai placé un Expert Advisor dans ma fenêtre - il a généré des "alertes" (dans l'onglet "Experts") - j'ai appuyé sur le bouton "Auto-Trade" (je l'ai activé) - j'ai appuyé sur le bouton "Auto-Control" (je l'ai activé) - cela fonctionne bien. (activé) - créé des "alertes" (fin) - appuyé sur le bouton "AutoTrade". (interrupteur de négociation désactivé) - je reçois toujours des "alertes".

La question est la suivante : est-ce le cas pour tout le monde ?

Si c'est le cas, est-il possible de régler/écrire que les "alertes" ne partent qu'après avoir appuyé sur ce bouton ?

Peut-être la question sans la tour mais je serais quand même reconnaissant pour une réponse !

 
Roni Iron:

Bonne journée à tous !

J'ai le bouton "Auto-Trade" dans mon terminal - j'ai placé un Expert Advisor dans ma fenêtre - il a généré des "alertes" (dans l'onglet "Experts") - j'ai appuyé sur le bouton "Auto-Trade" (je l'ai activé) - j'ai appuyé sur le bouton "Auto-Control" (je l'ai activé) - cela fonctionne bien. (activé) - créé des "alertes" (fin) - appuyé sur le bouton "AutoTrade". (interrupteur de négociation désactivé) - je reçois toujours des "alertes".

La question est la suivante : est-ce le cas pour tout le monde ?

Si c'est le cas, est-il possible de régler/speller pour que les "alertes" ne se déclenchent qu'après avoir appuyé sur ce bouton ?

C'est peut-être une question évidente, mais je serais quand même reconnaissant d'avoir une réponse !

Le bouton "Auto-Trading" permet d'autoriser et d'interdire les opérations de trading,

Si vous le désactivez, les conseillers experts et les scripts fonctionneront.

 
Roni Iron:

Bonne journée à tous !

J'ai le bouton "Auto-Trade" dans mon terminal - j'ai placé un Expert Advisor dans ma fenêtre - il a généré des "alertes" (dans l'onglet "Experts") - j'ai appuyé sur le bouton "Auto-Trade" (je l'ai activé) - j'ai appuyé sur le bouton "Auto-Control" (je l'ai activé) - cela a bien fonctionné. (activé) - créé des "alertes" (fin) - appuyé sur le bouton "AutoTrade". (interrupteur de négociation désactivé) - je reçois toujours des "alertes".

La question est la suivante : est-ce le cas pour tout le monde ?

Si c'est le cas, est-il possible de paramétrer/speller pour que les "alertes" ne se déclenchent qu'après avoir appuyé sur ce bouton ?

Peut-être la question sans la tour mais je serais quand même reconnaissant pour une réponse !

RegardezTerminalInfoInteger(TERMINAL_TRADE_ALLOWED).
 
Roni Iron:

Bonne journée à tous !

J'ai le bouton "Auto-Trade" dans mon terminal - j'ai placé un Expert Advisor dans ma fenêtre - il a généré des "alertes" (dans l'onglet "Experts") - j'ai appuyé sur le bouton "Auto-Trade" (je l'ai activé) - j'ai appuyé sur le bouton "Auto-Control" (je l'ai activé) - cela fonctionne bien. (activé) - créé des "alertes" (fin) - appuyé sur le bouton "AutoTrade". (interrupteur de négociation désactivé) - je reçois toujours des "alertes".

La question est la suivante : est-ce le cas pour tout le monde ?

Si c'est le cas, est-il possible de régler / prescrire que les "alertes" ne soient envoyées qu'après avoir appuyé sur ce bouton ?

Peut-être que la question est sans tour mais je serais quand même reconnaissant pour une réponse !

C'est possible si vous disposez d'un conseiller expert (ou d'un script) pour prendre et corriger le code source. Vous devez mettre une condition sur toutes les alertes pour vérifier si le bouton est pressé. Si le bouton n'est pas pressé, n'appelez pas les alertes.
 

J'ai fait un pari sur EURUSD par exemple 0.10, Take Profit après 100 pips, fermé avec 10.00 de profit, maintenant USDJPY a 7.80 de profit après 100 pips.

J'ai essayé de calculer la valeur d'un pip MarketInfo(Symbol(), MODE_POINT) ; j'obtiens 0,001, où suis-je obtus ?

J'ai essayé de calculer mon lot minimum à 100 pips pour obtenir 10,00 au lieu de 7,8.
 
Evgeniy Oshurkevich:

J'ai fait un pari sur EURUSD par exemple 0.10, Take Profit après 100 pips, fermé avec 10.00 de profit, maintenant USDJPY a 7.80 de profit après 100 pips.

J'ai essayé de calculer la valeur d'un pip MarketInfo(Symbol(), MODE_POINT) ; j'obtiens 0.001, où suis-je stupide ici ?

J'ai essayé de calculer mon lot minimum à 100 points pour obtenir 10,00, et non 7,8.
MODE_TICKVALUE - prix dans la devise de dépôt d'un pip (qui passe par MODE_POINT) pour un lot.
 
Maxim Kuznetsov:
MODE_TICKVALUE - prix dans la devise de dépôt d'un pip (qui passe par MODE_POINT) pour un lot.
Ok, merci)
 

Je dois écrire des données dans un fichier hst, afin de pouvoir les utiliser pour construire un graphique autonome.

Je me bats depuis deux jours mais rien ne fonctionne.

Code :

#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
ulong    last_fpos=0;         //
int      HandleHistory=-1;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   string symbol=Symbol();
   int per=Period()*9;

   ResetLastError();
   if(CreateHeader()==true)//если создали заголовок
     {
      HandleHistory=FileOpenHistory(symbol+(string)per+".hst",FILE_BIN|FILE_WRITE|FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_ANSI);
      if(HandleHistory!=INVALID_HANDLE)
        {

         for(int i=199;i>0;i--)//заполняем данными
           {
            MqlRates r;
            r.time=Time[i];//просто пытаюсь записать, это так для примера
            r.open=Open[i];//просто пытаюсь записать, это так для примера
            r.low=Low[i];
            r.high=High[i];
            r.close=Close[i];
            r.tick_volume=(long)10;
            r.spread=0;
            r.real_volume=(long)10;
            uint byteswritten=FileWriteStruct(HandleHistory,r);
            Print("FileOpen OK ",byteswritten," ",Time[i]);
           }
       FileClose(HandleHistory);
       // FileFlush(HandleHistory);
        }
      else Print("Операция FileOpen неудачна, ошибка ",GetLastError());
     }
// long id=ChartOpen(symbol,per);
//Alert(id);
  }
//+------------------------------------------------------------------+
bool CreateHeader()//создаем файл с историей hst(заголовок)
  {

   int      file_version=401;
   string   c_copyright;
   string   c_symbol=Symbol();
   int i_period=Period()*9;
   int      i_digits=Digits;
   int      i_unused[13];
//---  
   ResetLastError();
   HandleHistory=FileOpenHistory(c_symbol+(string)i_period+".hst",FILE_BIN|FILE_WRITE|FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_ANSI);
   if(HandleHistory<0)
     {
      Print("Error open ",c_symbol+(string)i_period,".hst file ",GetLastError());
      return(false);
     }
   c_copyright="(C)opyright 2003, MetaQuotes Software Corp.";
   ArrayInitialize(i_unused,0);
//--- write history file header
   FileWriteInteger(HandleHistory,file_version,LONG_VALUE);
   FileWriteString(HandleHistory,c_copyright,64);
   FileWriteString(HandleHistory,c_symbol,12);
   FileWriteInteger(HandleHistory,i_period,LONG_VALUE);
   FileWriteInteger(HandleHistory,i_digits,LONG_VALUE);
   FileWriteInteger(HandleHistory,0,LONG_VALUE);
   FileWriteInteger(HandleHistory,0,LONG_VALUE);
   FileWriteArray(HandleHistory,i_unused,0,13);
   return(true);
  }

À la suite de l'exécution, un fichier avec l'historique est créé, mais le graphe autonome n'est pas créé.

Voici l'information sur le graphique

Pour une raison quelconque, les données datent de 2003 !

En conséquence, j'obtiens une erreur lorsque je lance le graphique HistoryBase : 196 erreurs dans 'NZDCHF45'.

Je comprends que j'ai écrit quelque chose de mal. Je ne sais pas comment l'écrire correctement, j'ai trop peu d'informations. Qui sait ?