Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 430

 

Trader7777:

evillive:

Wenn Sie die Reihenfolge ändern, wird sie von der alten zur neuen sein. Aber in der Zwischenzeit, von der neuen zur alten, und sogar durch eine manchmal kann es passieren.


Wenn Sie for (int i = OrdersTotal()-1; i>0; i--) machen, wird von neu nach alt geschlossen!

Trader7777:

Ich verstehe es nicht, wenn du zu faul bist, mir zu sagen, was falsch ist, warum zwingst du mir dann eine Funktion auf, die ich laut meinem TS nicht brauche?

Wenn ein Auftrag mit der Nummer OrdersTotal() -1 für Sie der neueste und ein Auftrag mit der Nummer 0 der älteste ist, habe ich nichts mehr zu sagen. Wenn die Augen eines Menschen geschlossen sind, öffnen sie sich nur aus freiem Willen, niemand kann sie zwingen.

for (int i =0; i<OrdersTotal();i++) //i++ кто будет писать, Пушкин? Зачем сочинять химеру FOR + WHILE???

Übrigens, welche Funktion habe ich Ihnen da versehentlich "aufgezwungen"?

 
Nun, die Chimäre ist nicht entscheidend, im Allgemeinen sollte es funktionieren, ich habe nur eine Frage zur Anzahl, sie wird bei Buchungen und Verkäufen erhöht, aber es ist eine Mengenprüfung damit verbunden.
 
splxgf:

Warum werden k und n mit der Gesamtzahl der abgeschlossenen Aufträge verglichen?

DieAnzahl der Aufträge wird nur für Aufträge des Typs otype gezählt:
Nun, diese Schimäre ist nicht entscheidend, im Allgemeinen sollte es funktionieren, ich habe nur eine Frage über die Anzahl, es wird bei Buchungen und Verkäufen erhöht, aber es gibt eine Überprüfung der Menge, die damit verbunden ist.

Der Parameter otype wird an die Funktion übergeben, und für diesen speziellen Aufruf werden nur Aufträge vom Typ otype gezählt.

 
Mr.Profit:

Der Parameter otype wird an die Funktion übergeben, und für diesen speziellen Aufruf werden nur Aufträge vom Typ otype gezählt.


Die Funktion kann mehrfach komprimiert werden. Wir haben sie bereits eingeführt und konnten feststellen, dass sie in Echtzeit funktioniert. (in Wirklichkeit brauchen wir eine separate Funktion zum Schließen von Aufträgen mit RefreshRates und anderen Dingen).

double n = NormalizeDouble (CTbuy/2,1);

if (count<n) 

Wenn z. B. vier CTbuy-Aufträge offen sind, werden sie durch zwei geteilt und ergeben somit zwei. Die Vergleichsbedingung wird nur eine schließen.

P.S. Obwohl, nein, das bin ich nicht. aber die Frage, was wir nicht mögen, bleibt offen.

 
splxgf:

aber die Frage, was Sie nicht mögen, bleibt offen.


Auch meine Option auf der vorherigen Seite?
 

Leute, warum soll man sich mit dem Problem der Löschung eines Teils des Netzes herumschlagen?

Stellen Sie die Ticketwerte in der ersten Suche in einem Array zusammen, ohne sie zu löschen, und gehen Sie dann einfach durch das Array und löschen Sie alles nach Ticket - dann springt nichts irgendwo hin und die richtige Reihenfolge ist da.

 
Mr.Profit:

Auch meine Version auf der vorherigen Seite?

void CloseHalfOrders(int otype) {
  if (otype!=OP_BUY || otype!=OP_SELL) return;
  int count = CountTrades(otype)/2; 
  for (int i =0; i<OrdersTotal();i++) 
    if (OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
       if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType() == otype){
         if (otype == OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,0,Lime); 
            else OrderClose(OrderTicket(),OrderLots(),Ask,0,Lime);
         count--; i--;
         if (count<1) return;
         Sleep(1000);
       }
}
Sie können ewig optimieren.
 
splxgf:

Die Optimierung kann ewig dauern.

if (otype!=OP_BUY ||&& otype!=OP_SELL) return;
;-)
 

Guten Tag. Ich bin ein Neuling. Mit meinem Konto ist etwas Seltsames passiert. Bitte helfen Sie mir mit Ratschlägen.

Stop Loss wurde in der Demo nicht ausgelöst. Der Verlust bei der eingestellten SL sollte etwa 50 betragen, aber tatsächlich hat sie 158 abgebissen. Wie ist das passiert?

 
moloko:

Guten Tag. Ich bin ein Neuling. Mit meinem Konto ist etwas Seltsames passiert. Bitte helfen Sie mir mit Ratschlägen.

Stop Loss wurde in der Demo nicht ausgelöst. Der Verlust bei der eingestellten SL sollte etwa 50 betragen, aber tatsächlich hat sie 158 abgebissen. Wie ist das passiert?

Es ist gut, dass es sich um eine Demo handelt, aber es ist eher eine Frage an die Maklerfirma, es ist eher ein Programmierforum.