[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 389

 
Snegovik:


Es gibt Skripte, die gleichzeitig den Verkauf eines Symbols und den Kauf eines anderen eröffnen.

Ich bin an einem Skript interessiert, das gleichzeitig einen Verkauf/Kauf für 7-10 Symbole mit einem für jedes Symbol festgelegten Volumen zu aktuellen Preisen eröffnen kann.

Beispiel:

EURUSD 1 verkaufen

GBPUSD 1,5 kaufen

verkaufen USDCAD 1,2

AUDUSD kaufen 1,1

NZDUSD kaufen 2

USDCHF 3 kaufen

Das MultiOrders-Skript ist fast perfekt, es gibt nur 5 Felder für die Symbole.

Gleichermaßen. Wenn Sie dieses Skript verstehen, werden Sie in Ihrem Skript noch besser abschneiden, und Sie können sogar zusätzliche Funktionen hinzufügen.
 
snail09_1:
Ist es schwer zu überprüfen oder zu faul? Es ist einfacher, die Frage zu stellen. Kann der Angebotspreis gleich Null sein? Es kann, wenn nichts verkauft wird8-(
es ist nicht die Frage, ob das Terminal das Gebot zu einem bestimmten Zeitpunkt zurücksetzen kann (persönliche Erfahrung ist interessant)
 
YOUNGA:
Es geht nicht darum, ob das Terminal das Gebot irgendwann zurücksetzen kann (persönliche Erfahrungen sind von Interesse).

Ich habe noch nie einen gesehen. Haben Sie den absoluten Nullpunkt auf dem Thermometer gesehen?

Nun, das kann nicht das Problem sein. Vielleicht haben Sie niemanden, mit dem Sie reden können?

 
snail09_1:
Gleichermaßen. Wenn Sie dieses Skript verstehen, wird Ihr Skript noch besser, und Sie können sogar zusätzliche Funktionen hinzufügen.


Ich verstehe nicht ganz, wie man eine .dll schreibt

Wenn ich es richtig verstehe, befindet sich die Grundlage des Skripts in dieser Datei.

 
Leute! Im Strategietester in der Historie gibt der Expert Advisor keine Informationen an die Datei weiter, nur beim Online-Handel. Woran liegt das und wie kann ich es beheben? Ich habe keine Ahnung, wie ich es heilen kann. Danke.
 
net:
Leute! Im Strategietester in der Historie gibt der Expert Advisor keine Informationen an die Datei weiter, nur beim Online-Handel. Woran liegt das und wie kann ich es beheben? Ich habe keine Ahnung, wie ich es heilen kann. Danke.
Er speichert sie nur im Verzeichnis \MetaTrader 4\tester\experts\files
 
Snegovik:


Ich verstehe nicht ganz, wie man eine .dll schreibt

Wenn ich es richtig verstehe, befindet sich die Grundlage des Skripts in dieser Datei.


Kein einziges Skript kann einen Auftrag an den Server senden, um mehrere Aufträge auf einmal zu öffnen. Sie müssen eine nach der anderen öffnen. Die Ihnen angebotene DLL erstellt einfach ein visuelles Fenster und arbeitet damit. MQL4-Tools können für Ihre Aufgabe ausreichend sein
 

Hier ist meine Los (martin) Berechnungsfunktion:

double Lots()
 {
 //  double LotsArray[]={mode_1,mode_2,mode_3,mode_4,mode_5,mode_6};
 //  double LotsArray[]= {0.1,0.2,0.3,0.4,0.5,0.6};
   int LossCount = 0;
   double LotM=Lot;
   int total = OrdersHistoryTotal();
   for (int i = total-1; i >= 0; i--)
    {
      OrderSelect(i, SELECT_BY_POS, MODE_HISTORY);
      if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
       {
         if (OrderProfit() > 0)
          {
            LotM=LotsArray[0];
          }         
          else
           {
            LotM=LotsArray[LossCount+1];
            LossCount++;
           }
       }
    }
   return(LotM);
}

Dies sind die globalen Variablen für diese Funktion:

double Lot = 0.1;
extern double mode_1 = 0.1;
extern double mode_2 = 0.2;
extern double mode_3 = 0.4;
extern double mode_4 = 0.8;
extern double mode_5 = 1.6;
extern double mode_6 = 3.2;
double LotsArray[5];

Das ist in int init() zu sehen

 LotsArray[0] = mode_1;
 LotsArray[1] = mode_2;
 LotsArray[2] = mode_3;
 LotsArray[3] = mode_4;
 LotsArray[4] = mode_5;
 LotsArray[5] = mode_6;

Beim Testen des Expert Advisors werden die folgenden Fehler im Expert Advisor-Protokoll angezeigt:

2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: ERROR BUYSTOP : 1.22443 SL:1.22377 TP:1.22506
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: OrderSend error 4051
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: invalid lots amount for OrderSend function
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: Bid:1.22432 Ask:1.22438 avgSpread:0.00006  Commission rate:0.00003  Real avg. spread:0.00009  Lots:1.00   HIGH SPEED   MAX
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: 2012.07.19 16:19 tick:514
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: ERROR BUYSTOP : 1.22442 SL:1.22376 TP:1.22505
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: OrderSend error 4051
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: invalid lots amount for OrderSend function
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: Bid:1.22431 Ask:1.22437 avgSpread:0.00006  Commission rate:0.00003  Real avg. spread:0.00009  Lots:1.00   HIGH SPEED   MAX
2012.09.19 23:14:22     2012.07.19 16:19  mmm2.1.1~ EURUSD.5,M5: 2012.07.19 16:19 tick:513

Ist etwas mit dem Code nicht in Ordnung? Was kann das bedeuten?

Hier https://docs.mql4.com/ru/runtime/er rors sehe ich, dass dies ein Fehler ist:

ERR_INVALID_FUNCTION_PARAMVALUE (4051)

D.h. der Fehler ist auf falsche Parameter zurückzuführen. Da habe ich das Los falsch verstanden. Aber ich verstehe nicht, was hier falsch ist.

 
hoz:

Hier ist meine Los (martin) Berechnungsfunktion:

Dies sind die globalen Variablen für diese Funktion:

Das ist in int init() zu sehen

Beim Testen des Expert Advisors werden die folgenden Fehler im Expert Advisor-Protokoll angezeigt:

Ist etwas mit dem Code nicht in Ordnung? Was kann das bedeuten?

Hier https://docs.mql4.com/ru/runtime/er rors sehe ich, dass dies ein Fehler ist:

ERR_INVALID_FUNCTION_PARAMVALUE (4051)

D.h. der Fehler ist auf falsche Parameter zurückzuführen. Da habe ich das Los falsch verstanden. Aber ich verstehe nicht, was hier falsch ist.


double LotsArray[5]; 5 bis 6 richtig.
 
hallo! ist es möglich, eine bestellung einmal zu ändern? ich ändere derzeit eine bestellung bei jedem tick! ich glaube nicht, dass das richtig ist!...
Grund der Beschwerde: