Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 139

 
Artyom Trishkin:

Auch unter Windows können die Registerkarten mit mql4 nicht sortiert werden.

Sie können nur Diagramme in der von Ihnen gewünschten Reihenfolge öffnen und die erforderlichen Vorlagen für sie festlegen.

Natürlich können Sie sie nicht sortieren, aber Sie können sie manuell nacheinander verschieben.

Was die Sortierung mit mql betrifft, so können Sie die folgende Option ausprobieren:

1. Schließen Sie alle Fenster, außer dem, in dem der Code, der Expert Advisor oder das Skript ausgeführt wird.

2. neue Fenster in einer bestimmten Reihenfolge öffnen, einschließlich des Fensters, in dem der Expert Advisor läuft, und sie anpassen oder eine Vorlage anwenden.

3. löschen Sie schließlich das Fenster, in dem der Code ausgeführt wird.

 
Alexey Viktorov:

Natürlich kann man sie nicht sortieren, aber man kann sie manuell nacheinander verschieben.

Was die Sortierung mit mql betrifft, so können Sie die folgende Option ausprobieren:

1. Schließen Sie alle Fenster mit Ausnahme des Fensters, in dem der Code, der Expert Advisor oder das Skript ausgeführt wird.

2. neue Fenster in einer bestimmten Reihenfolge öffnen, einschließlich des Fensters mit dem Expert Advisor, und diese anpassen oder eine Vorlage anwenden.

3. löschen Sie schließlich das Fenster, in dem der Code ausgeführt wird.

Ich habe bereits darüber nachgedacht - es gibt eine Reihe von Störfaktoren, zum Beispiel - bei einigen der Charts läuft der Expert Advisor
 
Artyom Trishkin:
Ich habe bereits darüber nachgedacht - es gibt eine Reihe von störenden Faktoren, zum Beispiel - ein EA läuft auf einigen der Charts
Dann ist es wahrscheinlich besser, zuerst aus allen Diagrammen Vorlagen zu erstellen, bevor sie gelöscht werden. Nach dem Öffnen können Sie diese Vorlagen anwenden. Ich hoffe, dass nur sehr wenige EAs jetzt schreiben, die ihre Aufträge nicht abholen.
 
Artyom Trishkin:
Ich habe bereits darüber nachgedacht - es gibt eine Reihe von störenden Faktoren, zum Beispiel - ein Expert Advisor läuft auf einem der Charts

ChartID

Gibt die ID des aktuellen Diagramms zurück.

longChartID();

Zurückgegebener Wert

Wert vom Typ long.

 
Alekseu Fedotov:

ChartID

Gibt die ID des aktuellen Diagramms zurück.

longChartID();

Zurückgegebener Wert

Wert vom Typ long.

И? Wie kann die Kenntnis Ihrer Kennung bei der Sortierung der offenen Charts helfen, mit denen die Expert Advisors arbeiten? :)
 
Artyom Trishkin:
И? Inwiefern hilft die Kenntnis Ihrer ID beim Aussortieren der offenen Charts, auf denen EAs arbeiten? :)


Ich meine das Diagramm, auf dem der Expert Advisor arbeitet.

Artyom Trishkin:

Ich habe bereits darüber nachgedacht - es gibt einige verwirrende Faktoren, zum Beispiel - derExpert Advisor läuft auf einigen der Charts
 
Alekseu Fedotov:


Ich spreche von dem Diagramm, auf dem der EA arbeitet

Artyom Trishkin:

Ich habe bereits darüber nachgedacht - es gibt eine Reihe von Störfaktoren, zum Beispiel -auf einigen der Charts läuft der Expert Advisor
Sie sehen kein Problem darin, bestehende Charts zu löschen und sie in der richtigen Reihenfolge wieder zu öffnen, falls der Expert Advisor oder die Indikatoren auf einigen von ihnen laufen?
Überlegen Sie sich also, wie Sie es machen wollen, und Sie werden sehen, dass der Ausweis und die Tatsache, dass Sie ihn kennen, Ihnen dabei nicht helfen werden.
 
Alekseu Fedotov:


Ich spreche von dem Diagramm, auf dem der EA ausgeführt wird

Artyom Trishkin:

Ich habe bereits darüber nachgedacht - es gibt eine Reihe von störenden Faktoren, zum Beispiel - derEA läuft auf einigen der Charts

Ich verstehe, dass ich in einem Profilordner Zeichen in einer bestimmten Reihenfolge umbenennen muss - das erneute Speichern in Zeichen geschieht, wenn ich das Profil ändere oder das Terminal schließe - daher ist es offensichtlich, dass ich mit Dateien mit einem geschlossenen Profil arbeiten muss. All dies erfordert jedoch den Aufruf von Bibliotheken. So ist es, glaube ich.
 

Liebe Forumsnutzer!

Ich habe die Idee, die Funktion zur Berechnung desPositionsvolumens um eine Bedingung zu ergänzen: Wenn der letzte Auftrag mit einem Verlust abgeschlossen wurde, wird der nächste Auftrag mit einem erhöhten Verhältnis platziert.

Ich habe es bereits geschrieben, aber eine der Rückgaben funktioniert nicht, dann die andere.

Bitte sagen Sie mir, was ich falsch mache?

double GetLot(int type)

{

if(CountOrdersType(type)==0 || LastOrderTypeLots(type)>Max_Lot)

{

if(!Auto_Lot)return(Start_Lot);

return(Kontostand()*(Lot_Percents/100)*KontoLeverage()/MarketInfo(Symbol(),MODE_LOTSIZE)); }

{ if(!History)return(Start_Lot);

datetime time=0;double lastlot=0;int lastop=0;double prof=0;

for(int i=OrdersHistoryTotal()-1;i>=0;i--)

if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)&&OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic&&OrderType()<=1)

{

if(time<OrderCloseTime()){time=OrderCloseTime();lastlot=OrderLots();lastop=OrderType();prof=OrderProfit();}

}

if(prof < 0 && OrderMagicNumber() == Magic)lot=OrderLots();

return(lot * History_Multiplier); }

return(LastOrderTypeLots(type)*Lot_Multiplier);

}


 
Artyom Trishkin:
Sie sehen kein Problem darin, bestehende Charts zu löschen und sie in der richtigen Reihenfolge wieder zu öffnen, falls ein EA oder Indikatoren auf einem von ihnen laufen?
Überlegen Sie sich also, wie Sie es machen wollen, und Sie werden feststellen, dass der Ausweis und die Tatsache, dass Sie ihn kennen, Ihnen dabei nicht helfen.


Nachdenken,

Bezüglich der Löschung

   long Chart_ID = ChartID();
   int i=0,limit=100;
   while(i<limit)
     {
    if(ChartNext(Chart_ID)<0) break;
      ChartClose(ChartNext(Chart_ID));
      i++;
     }
Grund der Beschwerde: