[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 522

 
Nein. Dieses Problem wird nicht gelöst werden.
 

Und wie führen Sie eine Auftragsänderung durch, wenn der Take Profit nicht einem bestimmten Preis entspricht? Ich habe es folgendermaßen gemacht

if(OrderTakeProfit() != buytakeprofit)
          {
          if(OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),buytakeprofit,OrderExpiration(),Green) == false)
            {
            Print("Ошибка модифицирования ордера ",GetLastError());
            }
          }
Zum Beispiel entspricht buytakeprofit 1,2555

Es stellt sich heraus, dass, wenn der Take-Profit des Auftrags NICHT gleich 1,2555 ist, es eine Änderung des Auftrags gibt, die Fehler 1 ausgibt, was bedeutet, dass ich versuche, den gleichen Wert zu setzen. Aber wenn der Take-Profit bereits diesem Preis entspricht, warum tritt dann die OrderTakeProfit()-Bedingung ein = buytakeprofit?

 

Weil es nicht normalisiert ist

double nd(double in){return(NormaliseDouble(in,Digits));}
/*-------------------------------------------------------*/
if(nd(OrderTakeProfit())!=nd(новая цена)){then GO!!! :);}
 
Oh, das wollte ich schon lange fragen - die Abhängigkeit der Bildlaufgeschwindigkeit bei 32 Geschwindigkeiten von den Mausbewegungen - ist das Absicht?
 

Wie würden Sie besser organisieren die maximale Drawdown des EA, bei dem es aufhört zu arbeiten, können Sie eine statische Variable, die die Höhe der Verluste akkumulieren wird?

Der Expert Advisor sollte nicht mehr funktionieren, aber er wird nach einem Neustart oder einer Parameteränderung wieder funktionieren.

 
Alert(iBars(NULL, 1),"  ",GetLastError()); // получаем ошибку - 4066

// ждем мально, повторяем запрос, все нормально...
// потом обновляем окошко с этим таймфреймом вручную, и получаем вот такую запись в журнале:

2012.01.23 11:26:04     HistoryCenter: 3235 bars imported in 'SILVER1'

Danach fangen Sie an, an der Korrektheit des Verhaltens des Programms zu zweifeln. Können Sie mir bitte erklären, was der Trick ist?

Das Programm griff nach dem erzeugten Fehler auf das historische Zentrum zu und holte sich die notwendigen Zitate, aber es stellte sich heraus, dass nicht alle von ihnen? Oder was hat das zu bedeuten?

 
fore-x:

Danach fangen Sie an, an der Korrektheit des Verhaltens des Programms zu zweifeln. Können Sie mir bitte erklären, was der Trick ist?

Das Programm griff nach dem erzeugten Fehler auf das historische Zentrum zu und holte sich die notwendigen Zitate, aber es stellte sich heraus, dass nicht alle von ihnen? Oder was hat das zu bedeuten?

https://www.mql5.com/ru/forum/116126
 

Genossinnen und Genossen, wir brauchen einen Rat. Was ist zu tun, damit die Preise korrekt in die Datei geschrieben werden? Jetzt gibt der EA manchmal das aus, was im roten Kreis steht, siehe das Bild unten. Ich füge den Code des Expert Advisors ein und ein Bild von dem, was in die Datei geschrieben wird)

//+------------------------------------------------------------------+
//|                                                          TP1.mq4 |
//|                                                      S.I.Shlikov |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "S.I.Shlikov"
#property link      ""
int init()  
  {
   string Name=Symbol();
   int h=FileOpen(Symbol()+"-"+Period()+".csv",FILE_CSV|FILE_WRITE|FILE_READ,";");
    if(h<1)
      {
      Print("Файл не найден : ", GetLastError());
      return(false);
      }
   FileSeek(h, 0, SEEK_END);
   FileWrite(h,"Date",Name,"Period",Period());
   FileClose(h);        
  }
int start()
  {
   int h=FileOpen(Symbol()+"-"+Period()+".csv",FILE_CSV|FILE_WRITE|FILE_READ,";");
    if(h<1)
      {
      Print("Файл C не найден : ", GetLastError());
      return(false);
      }
   string Wtime=TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES);
   FileSeek(h, 0, SEEK_END);
   FileWrite(h,Wtime,NormalizeDouble(Close[0], Digits));
   FileClose(h);   
   return(0);
  }

Das Ergebnis ist, dass wir haben:

(roter Kreis - er nimmt den Preis als Datum und das ist für die weitere Arbeit sehr ungünstig)

 

Und das ist ein Problem mit Ihren Excel-Einstellungen. Und geben Sie nicht dem Expert Advisor die Schuld, schauen Sie sich die Datei in Notepad an, und sie ist in Ordnung.

Ich habe mich mit dem 2007er Set herumgeschlagen, konnte dieses Problem aber nicht vollständig lösen. Der einzige Ausweg: Damit Excel Ihre Daten als numerische Werte sieht, fügen Sie vor den positiven Zahlen ein "+" ein, und bei negativen Zahlen, damit es klar ist.

 
Habe mich bereits bei meinem MT4 entschuldigt)) Ich habe mir den Text angeschaut, er zeigt alles an, danke, sonst hätte ich mich hingesetzt und herumgestochert. Wissen Sie, ob es möglich ist, die Daten für EURUSD und USDJPY zu replizieren, d.h. hochzuladen?
Grund der Beschwerde: