Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1296

 

Guten Tag an alle. Frage zur WebRequest-Funktion: Wenn ich eine POST-Anfrage sende, wird kein Datenfeld gesendet. Auf der Serverseite erhalte ich " <WSGIRequest: POST '/'> ". Nachstehend finden Sie den Code:

string headers=NULL;
   char   data[],result[];
   string result_headers;
   string url="http://127.0.0.1:8000";

   ResetLastError();
   string params = "email=app@exemple.com&account=56781234";
   StringToCharArray(params, data, 0, StringLen(params));
   //ArrayResize(data,StringToCharArray(params,data,0,WHOLE_ARRAY,CP_UTF8));
   Print("data: ", CharArrayToString(data));
   int res=WebRequest("GET", url, headers, 0, data, result, result_headers);

   if(res!=200)
     {
      Print("Ошибка передачи файла на сервер #"+(string)res+", LastError="+(string)GetLastError());
     }
   else
     {
      Print(ArraySize(result));
     }
 
Alexander Mikryukov:

Einen guten Tag an alle. Frage zur Funktion WebRequest, wenn ich eine POST-Anfrage sende, wird kein Datenfeld gesendet. Auf der Serverseite erhalte ich " <WSGIRequest: POST '/'> ". Nachstehend finden Sie den Code:

Sie haben also ein GET, richtig? Hier sende ich ein json (MQL5). Alles funktioniert.

   char data[]; 
   ArrayResize(data, StringToCharArray(jv.Serialize(), data/*, 0, WHOLE_ARRAY*/)-1);
   
   
   char res_data[];
   string res_headers=NULL;
   int r=WebRequest("POST",m_uri, "Content-Type: application/json\r\n", 5000, data, res_data, res_headers);
   Print(__FUNCTION__+": web server response code: ",(string)r);
   if(r!=-1)
     {
      Print(__FUNCTION__+": JSON message sent: "+CharArrayToString(data));
      if(save_to_file)
        {
         string file_name=file_name_prefix+"_"+m_symbol+"_"+(string)m_magic_number+".csv";
         int file_handle=FileOpen(file_name,FILE_READ|FILE_WRITE|FILE_CSV);
         if(file_handle!=INVALID_HANDLE)
           {
            FileSeek(file_handle,0,SEEK_END);
            FileWriteString(file_handle,"\n"+CharArrayToString(data));
            FileClose(file_handle);
           }
        }
     }

p.s. Was soll der blöde "Guten Tag"-Ausdruck? Hier finden Sie zum Beispiel einen Artikel zu diesem Thema. Entschuldigung für die Überschwemmung :)

 

Als Referenz:

datetime  iTime( 
   const string        symbol,          // символ 
   ENUM_TIMEFRAMES     timeframe,       // период 
   int                 shift            // сдвиг 
   );
In diesem Code wird die Verschiebung als die ANZAHL der TÄGE relativ zur aktuellen Zeit verstanden.
Das Beispiel lautet hier:
 int bar_index=iBarShift(symbol,tf,time,exact); 
   
 datetime bar_time=iTime(symbol,tf,bar_index); 
In der Hilfe wird angegeben, dass iBarShift den Taktindex zurückgibt.

Nach meinem Verständnis sind die Anzahl der Balken und der Balkenindex unterschiedliche Parameter.

Ich würde es verstehen, wenn die Nummerierung der Balken mit der aktuellen Zeit (aktuell = 0) beginnen würde.
OnCalculate() gibt jedoch die Taktindexnummer vom Beginn der Fensterhistorie an.

Können Sie mir bitte erklären, was ich falsch verstanden habe?
Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
  • www.mql5.com
Bars - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Ich habe es selbst herausgefunden.

Die iBarShift-Hilfe ist ketzerisch geschrieben.
Die Funktion liefert nicht den Taktindex im Sinne von OnCalculate(),
, sondern den Taktversatz, d.h. die Verschiebung.

Zu Zeiten der Inquisition wäre dies auf dem Scheiterhaufen verbrannt worden:)
Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
  • www.mql5.com
iBarShift - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
User_mt5:
Ich habe es selbst herausgefunden.

Die Hilfe zu iBarShift ist voll von Ketzerei.
Die Funktion liefert nicht den Taktindex im Sinne von OnCalculate(),
, sondern den Taktversatz, d.h. die Verschiebung.

Zu Zeiten der Inquisition wäre dies auf dem Scheiterhaufen verbrannt worden:)

Ich bin kein Experte auf diesem Gebiet.... Aber der allererste Kandidat für den Scheiterhaufen... bist DU. Bevor Sie "solche Ketzerei" schreiben, hätten Sie die Dokumentation selbst lesen sollen...!

P.S. Und finden Sie heraus, was, wo und wie...
 

Gute Gesundheit für alle!

Die Frage ist einfach und naiv. Ich habe einen EA in Mql5 geschrieben. Ich möchte diesen Algorithmus verwenden, um mit Kryptowährungen an der Börse zu arbeiten, z. B. BitMex. Ich kann nicht verstehen, wie man EA für diesen Austausch in einer anderen Sprache neu zu schreiben, ist es besser in C, weil Mql5 scheint ähnlich wie C zu sein.

 
Guten Tag zusammen. Können Sie mir bitte sagen, ob mein Konto gesperrt wurde. Mein Analyst, der mich leitete, riet mir, einen Makler zu suchen. Ich kenne keinen Broker. Was soll ich in dieser Situation tun? Der Betrag auf dem Konto betrug 500 Dollar.
 
Evgen1504:
Guten Tag zusammen. Können Sie mir bitte sagen, ob mein Konto gesperrt wurde. Mein Analyst, der mich leitete, riet mir, einen Makler zu suchen. Ich kenne den Makler nicht und weiß nicht, was ich in dieser Situation tun soll. Der Betrag auf dem Konto betrug 500 Dollar.
Sie sind betrogen worden, nicht 500.
 
Amon1953:

Gute Gesundheit für alle!

Die Frage ist einfach und naiv. Ich habe einen EA in Mql5 geschrieben. Ich möchte diesen Algorithmus verwenden, um mit Kryptowährungen an der Börse zu arbeiten, z. B. BitMex. Ich kann nicht verstehen, wie man EA für diesen Austausch in einer anderen Sprache umschreiben kann, es ist besser in C, denn Mql5 scheint C ähnlich zu sein.

Sie brauchen ihn nicht neu zu schreiben. Sie können nach einem Broker suchen, der den Handel mit Kryptowährungen in MQL5 erlaubt.
Schauen Sie vorsichtshalber unter MT5 / Ansicht / Symbole

 
Rost17:
Dies ist eine Frage für MQL-Spezialisten. Wie ändere ich Positionsschlussmarken in Expert Advisors? Ich möchte einen roten Pfeil nach links bei einem Verkaufsabschluss und einen blauen Pfeil nach links bei einem Kaufabschluss haben. Dann würde ich sofort sehen, dass es nicht die umgekehrte Öffnung ist, sondern genau die Schließung. Ich habe es in MT4 gehabt und kannte kein Problem. Ich würde es gerne in MT5 ändern. Ich danke Ihnen im Voraus.

Suchen oder schreiben Sie Ihre eigene Funktion zur Anzeige von Geschäften in einem Diagramm

Grund der Beschwerde: