[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 417

 

VladimirR:

Bei einem Ausstieg aus dem Zyklus verbleibt jedoch ein "zusätzlicher Tag". Infolgedessen wird die falsche Antwort gedruckt.


Denn Sie müssen genau wissen, aus welchem Grund der Ausgang erfolgte - Tag oder TwoFarm. Dann werden Sie es richtig machen.
 
rustein:

Hilfe beim Öffnen von Aufträgen mit SL, und wenn es zwei gegensätzliche Aufträge gibt, wird für den zweiten Auftrag SL.... entfernt, was aber nicht notwendig ist

Was wollen Sie?
 

Ich brauche es, um alle offenen Aufträge zu durchsuchen, aber aus irgendeinem Grund, wenn es 2 offene Aufträge gibt, löscht es SL auf dem letzten sofort nach dem Öffnen...

Und es sollten alle Aufträge gelöscht werden, wenn der Indikatorwert höher als OrderOpenPrice() für Buy und niedriger für Sell ist.

 
rustein:

Ich brauche es, um alle offenen Aufträge zu durchsuchen, aber aus irgendeinem Grund, wenn es 2 offene Aufträge gibt, löscht es SL auf dem letzten sofort nach dem Öffnen...

Und es sollten alle Aufträge gelöscht werden, wenn der Indikatorwert höher als OrderOpenPrice() für Buy und niedriger für Sell ist.


Sie haben vergessen, Prüfungen für Up und Dn hinzuzufügen (analog)
Up>0 && Up!=EMPTY_VALUE
 
sergeev:
Sie haben vergessen, Prüfungen für Up und Dn hinzuzufügen (analog)
...Danke )
 
granit77:
Gehen Sie alle Objekte im Diagramm durch, suchen Sie ein Objekt namens lbl, nehmen Sie die Zeichenkette FXRanger: Risk:Reward=x.xxx heraus, analysieren Sie sie und konvertieren Sie x.xxx in Double.
Erläutern Sie bitte, was "Parsing" bedeutet, und wenn es nicht schwierig ist, wie man eine Objektaufzählung organisiert. Ich kann bestellen, aber ich habe noch nicht mit Gegenständen gehandelt.
 
DhP:

Wo ist das Quellenmaterial?
Was habe ich beigefügt? Es gibt nichts anderes, diese Datei wurde in die Indikatoren eingefügt und sie funktioniert
 
demlin:
Was habe ich eingefügt? Es gibt nichts anderes, ich habe diese Datei in die Indikatoren eingefügt und es funktioniert

Sie haben nicht die Quelldatei mit der Erweiterung mq4 beigefügt, sondern eine kompilierte ausführbare Datei mit der Erweiterung ex4.

 
demlin:
Erläutern Sie bitte, was "Parsing" bedeutet und, falls dies nicht schwierig ist, wie die Aufzählung der Objekte organisiert werden kann. Ich kann mit Aufträgen umgehen, aber mit Objekten habe ich mich noch nicht beschäftigt.
Ich glaube, dass wir beim Durchsuchen der Objekte das gewünschte Label finden und dessen Text mit der Funktion ObjectDescription() in eine String-Variable einfügen müssen.
Als Nächstes "parsen" wir die resultierende Zeichenkette, d. h. wir analysieren und extrahieren die Informationen, die wir benötigen. Wir verwenden die String-Funktionen StringFind(), StringLen(), StringSubstr()
, um die Position des Zeichens "=" im String "FXRanger::Risk:Reward=x.ххх" zu finden und den darauf folgenden Teil des Strings (х.ххх) in eine andere String-Variable zu speichern. Verwenden Sie dann die Funktion StrToDouble() , um die Zeichenkette in die gesuchte Zahl umzuwandeln.

   int obj_total=ObjectsTotal();
   string name;   
   string myname="lbl";
   string mytext;
   
   for(int i=obj_total+1;i>-1;i--){
     name=ObjectName(i);   
     if(StringFind( name,myname,0)>-1){
       mytext=ObjectDescription(name);  
     }
   }
//далее парсим строку mytext
P.S.
Dieser Tanz ist notwendig, weil der Indikator Daten in Objekte und nicht in Puffer ausgibt und iCustom nicht angewendet werden kann. Und wenn Sie den Code des Indikators nicht haben, können Sie nichts darin ändern.
 

https://www.mql5.com/ru/code/10272

Guten Tag. Bitte helfen Sie mir, die Puffer des beigefügten Indikators zu verstehen. Wie schreibt man in den Code des Experten die Bedingungen beim Öffnen, beim Farbwechsel...Danke.