Beunruhigt durch den Fehler gibt es keine Handelsgeschäfte - Seite 13

 
Andrey Kaunov:

Artyom, das ist das zweite Mal, dass ich gefragt habe und keine verständliche Antwort erhalten habe (nichts für ungut). Warum schaltet er immer den NZDUSD ein und stürzt dann mit endlosem Warten ab. Es ist der Validator, der abstürzt, nicht der Expert Advisor. Es gibt keinen Ort, an dem der Expert Advisor abstürzen könnte.

...

Nein, das tut es nicht. Und es hat den Test auf Ihrem EA auf NZDUSD (keine Trades - auch ein Ergebnis), und es stürzte nicht in endlosen warten irgendwo. Es hat nicht gewartet, bis der Test für GBPUSD M30 abgeschlossen war - und hat Ihnen einen sehr langen Testfehler angezeigt.

Ich weiß nicht, wie der Validator funktioniert. Ich kann nicht sagen, warum es oft nicht gelingt, Positionen auf NZDUSD zu eröffnen. Vielleicht gibt es dort besondere Bedingungen.
 
Renat Akhtyamov:

kleine Korrektur, nur zum Spaß:

sOr=bOr=0;

bool sCorrect=true;

      for (i=OrdersTotal()-1;i>=0;i--)
      {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) )
         {

            if (OrderSymbol()!=Symbol()) continue;

            if(OrderCloseTime()!=0) continue; // лучше не забывать. Бывает редко но метко
            if(OrderType()==OP_BUY)bOr=bOr+1;
            if(OrderType()==OP_SELL)sOr=sOr+1;
         } else {

            sCorrect=false; // не смогли выбрать ордер, sOr, bOr могут быть некорректны

         }
      }

if (sCorrect) {

// sOr, bOr точно корректны

if(sOr==0)

{

//open sell

}

if(bOr==0)

{

//open buy

}

}

OrderSelect als separate Bedingung
 
Artyom Trishkin:

Sie brauchen keine starren Parameter einzugeben. Alle Parameter sollten aus den Handelsbedingungen berechnet werden. Lassen Sie das Eröffnungslos in den Einstellungen. Wenn die Partie berechnet wird, wird im Falle eines Geldmangels, selbst bei der kleinsten Partie, eine entsprechende Meldung angezeigt. Alle anderen Parameter der Transaktion sollten ebenfalls überprüft, kontrolliert und korrigiert werden. Sollte die Korrektur nicht möglich sein, werden Sie entsprechend benachrichtigt.

Wenn es jedoch viele Bedingungen gibt und diese alle vom aktuellen Stand des Handels und der Signale abhängen, ist es wahrscheinlich, dass es im Validator kein Geschäft geben wird. In diesem Fall ist ein individueller Ansatz für die Prüfung eines solchen EA erforderlich.

Ja, die aktuelle Version ist wie ein Maschinengewehr im Testgerät. Dies ist ein völlig anderer EA, es gibt fast keine Bedingungen für die Öffnung. Es ist bereits unmöglich, die Gewerke über externe Einstellungen nicht zu öffnen. Testen Sie nur mit unrealistischer Los- und Depotgröße. Aber selbst dann fällt es nicht in ein Koma wie im Validator.

Auf meinen Vorschlag hin haben Sie also nicht geantwortet.


Artyom Trishkin:

Nein. Ich brauche nicht das Geld anderer Leute, damit derjenige, der es bezahlt hat, es nicht selbst herausfindet. Nicht das Geld ist wichtiger, sondern das Ergebnis.

Das ist Demagogie.

Ich beschäftige mich seit mehr als 10 Jahren mit der MQL-Programmierung. Und das ist das erste Mal, dass ich es nicht schaffe, die Arbeit zu erledigen. Warum ist das so? Die Antwort liegt auf der Hand: Es hängt nicht von meinen Bemühungen und Kenntnissen ab. Das Problem liegt auf der anderen Seite!
 
Andrey Kaunov:

Ja, die aktuelle Version sprudelt im Testgerät wie ein Maschinengewehr. Das ist schon ein ganz anderer EA, es gibt fast keine Bedingungen für die Öffnung. Es ist bereits jetzt unmöglich, den Handel mit externen Einstellungen nicht zu öffnen. Testen Sie nur mit unrealistischer Los- und Depotgröße. Aber selbst dann fällt es nicht in ein Koma wie im Validator.

Auf meinen Vorschlag haben Sie also nicht geantwortet.


Das ist Demagogie.

Lass es Demagogie sein.

Ich habe mich aus der Diskussion zurückgezogen, um nicht in Demagogie zu verfallen.

 
Artyom Trishkin:

Es darf Demagogie geben.

Ich habe mich aus der Diskussion zurückgezogen, um nicht in Demagogie zu verfallen.

Natürlich gibt es keinen Grund zur Demagogie. Sie könnten einfach die Person, die den Validierer betreibt, in die Diskussion einbeziehen und sie fragen, warum. Sonst reden wir nur über nichts und haben keinen Sinn.

 
Maxim Kuznetsov:

kleine Korrektur, einfach so:

OrderSelect als separate Bedingung

Das ist durchaus möglich, ich werde nicht widersprechen.

Ich bin bisher noch nicht auf diese Nuancen gestoßen.

 
Renat Akhtyamov:

Das ist durchaus möglich, das will ich nicht bestreiten.

Ich bin bisher noch nicht auf diese Nuancen gestoßen.

Wovon sprichst du, Renate? Habe ich etwas verpasst?

 
Andrey Kaunov:

Ja, die aktuelle Version sprudelt im Testgerät wie ein Maschinengewehr. Das ist schon ein ganz anderer EA, es gibt fast keine Bedingungen für die Öffnung. Es ist bereits unmöglich, Gewerke mit externen Einstellungen nicht zu öffnen. Testen Sie nur mit unrealistischer Los- und Depotgröße. Aber selbst dann fällt es nicht in ein Koma wie im Validator.

Auf meinen Vorschlag haben Sie also nicht geantwortet.


Das ist Demagogie.

Ich beschäftige mich seit über 10 Jahren mit der MQL-Programmierung. Und das ist das erste Mal, dass ich es nicht schaffe, die Arbeit zu erledigen. Warum ist das so? Die Antwort liegt auf der Hand: Es hängt nicht von meinen Bemühungen und Kenntnissen ab. Das Problem liegt auf der anderen Seite!

Überlegen Sie, was bei Stop Out passiert. (Sie haben bereits Margin Call, Steppe ist näher denn je)

Ihr Handel wird zwangsweise geschlossen, aber Sie ignorieren eine solche Option und werden ihr jeden Tick nachgehen (in der Geschichte ist sie lang) und falsche Aufträge senden.

 
Andrey Kaunov:

Ja, natürlich, es gibt keinen Grund für Demagogie. Sie könnten einfach die Person, die den Validierer betreibt, in die Diskussion einbeziehen und sie fragen, warum. Andernfalls würden wir uns nur über nichts unterhalten.

Selbst wenn sie mir den Grund nennen, was unwahrscheinlich ist, werde ich ihn Ihnen nicht nennen. Nicht nur Sie, sondern die ganze Gemeinschaft. Und das liegt nicht daran, dass ich schlecht bin.

Also - erst der Code-Profiler, dann folgen Sie genau den Empfehlungen des Artikels, den Sie kennen, und dann - Veröffentlichung des Ratgebers.

Профилирование кода - Разработка программ - Справка по MetaEditor
Профилирование кода - Разработка программ - Справка по MetaEditor
  • www.metatrader5.com
Профилирование — это сбор характеристик программы во время ее выполнения. При профилировании замеряется время выполнения и количество вызовов отдельных функций и строк в коде программы. При помощи этого инструмента программист может найти наиболее медленные участки кода и провести их оптимизацию. Профилирование можно проводить на обычном...
 
Andrey Kaunov:

Wovon sprichst du, Renat? Habe ich etwas verpasst?

Scheint nacheinander geschrieben zu haben, Frage und Antwort.

Alle Seiten des Threads sind zugänglich.