[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 848

 

Ich glaube, das ist der Grund

while (att_to_modify_sell<= attempt_to_modify)
 
vasya_vasya:

Ich glaube, das ist der Grund.

Danke, ich habe es bemerkt und den Beitrag sofort gelöscht, aber Sie haben es geschafft, darauf zu antworten :)

Ich mag mein zyklisches Muster immer noch nicht...

Die Aufgabe besteht darin, den Auftrag nach n-fachen erfolglosen Versuchen zu schließen, um ihn an den Markt anzupassen!

Bitte zeigen Sie mir, wie man das am besten im Code macht.

Ich danke Ihnen!

 
vasya_vasya:

Ich glaube, das ist der Grund dafür.

att_to_modify=2;
att_to_modify_sell=0;
            
Print("att_to_modify_sell="+att_to_modify_sell);
Print("Модификация SL, попытка установить новый СЛ, ord_open_sell="+ord_open_sell+" stop_TP="+stop_TP+" Старый СЛ= "+ord_sl+" Bid="+Bid+" ord_take_profit="+ord_take_profit+" Ask="+Ask);
Print("Модификация в цикле1");   
ticket=OrderModify(ticket_sell,0,NormalizeDouble((ord_open_sell-stop_TP*Point),Digits),NormalizeDouble(ord_take_profit,Digits),0,0); //первый перенос СЛ
  if(ticket<0)
  {               
    Print("OrderModify(SELLSTOP install first SL) failed with error #",GetLastError());
    att_to_modify_sell+=1;
    Sleep(3000);
    if (att_to_modify_sell>=attempt_to_modify /*&& Ask<(ord_open_sell-stop_TP*Point-p_TS_DIST*Point)*/)                     
    {
      OrderClose(ticket_sell,ord_lots,MarketInfo(Symbol(),MODE_ASK),3,Green);
    }
    if(ticket>=0)
    {
      att_to_modify_sell=attempt_to_modify+1;
      Print("Модификация прошла успешно");
    }  
    Print("att_to_modify_sell!!!="+att_to_modify_sell);           
  }

Schlussfolgerung:

2010.09.14 16:46:04 2010 06.07 00:00 MM1.20 EURUSD,M5: OrderModify Fehler 130
2010.09.14 16:46:04 2010.06.07 00:00 MM_1.20 EURUSD,M5: Ändern in Schleife1
2010.09.14 16:46:04 2010.06.07 00:00 MM_1.20 EURUSD,M5: SL Änderung, versuche einen neuen SL zu setzen, ord_open_sell=1.19799000 stop_TP=200 alter SL=1.20499000 Bid=1.19470000 ord_take_profit=1.19479000 Ask=1.19483000
2010.09.14 16:46:04 2010.06.07 00:00 MM_1.20 EURUSD,M5: att_to_modify_sell=0


Es ist ein Fehler aufgetreten, warum kann ich die Bedingung nicht bearbeiten?

if(ticket<0) ?????


und folglich werden keine Ausdrucke angezeigt...

Print("OrderModify(SELLSTOP install first SL) failed with error #",GetLastError());
Print("att_to_modify_sell!!!="+att_to_modify_sell); 


Ein Teil des Codes schließt einen Auftrag auf dem Markt nach att_to_modify Versuchen!

Ich danke Ihnen!

 
Ist es möglich, dass der EA sich selbst abschaltet?
 
Elliotttrader:

Ausgabe:

2010.09.14 16:46:04 2010.06.07 00:00 MM1.20 EURUSD,M5: OrderModify Fehler 130
2010.09.14 16:46:04 2010.06.07 00:00 MM_1.20 EURUSD,M5: Modifikation in loop1
2010.09.14 16:46:04 2010.06.07 00:00 MM_1.20 EURUSD,M5: SL Änderung, versuche neuen SL zu setzen, ord_open_sell=1.19799000 stop_TP=200 Alter SL=1.20499000 Bid=1.19470000 ord_take_profit=1.19479000 Ask=1.19483000
2010.09.14 16:46:04 2010.06.07 00:00 MM_1.20 EURUSD,M5: att_to_modify_sell=0

Es ist ein Fehler aufgetreten, warum kann ich die Bedingung nicht bearbeiten?

und deshalb werden keine Abzüge gedruckt...

Ein Teil des Codes schließt einen Auftrag auf dem Markt nach att_to_modify Versuchen!

Danke!


Fehler 130 - falsche Haltestellen.

Analysieren Sie den 3. Parameter der Funktion

ticket=OrderModify(ticket_sell,0,NormalizeDouble((ord_open_sell-stop_TP*Point),Digits),NormalizeDouble(ord_take_profit,Digits),0,0); //erste Übertragung SL

Dies ist ein Verkaufsauftrag, wie ich ihn verstanden habe, und der Stoppkurs wird gesenkt.

Vielleicht brauchen wir "+" - ord_open_sell+stop_TP*Point

 
abolk:


Fehler 130 - falsche Haltestellen.

Analysieren Sie den 3. Parameter der Funktion

ticket=OrderModify(ticket_sell,0,NormalizeDouble((ord_open_sell-stop_TP*Point),Digits),NormalizeDouble(ord_take_profit,Digits),0,0); //erster Rollover von SL

dies ist ein Verkaufsauftrag, so wie ich es verstanden habe, und Sie setzen den Stopp durch den Preis

Vielleicht brauchen wir das "+" - ord_open_sell+stop_TP*Point

Ich frage nicht nach diesem Fehler. Ich frage, warum sie nicht bearbeitet wird.
if(ticket<0)
Ich danke Ihnen!
 
Elliotttrader:
Ich frage nicht nach diesem Fehler. Ich frage, warum es bei mir nicht funktioniert.
Ich danke Ihnen!

Drucken Sie zunächst den Wert des Ticketdrucks nach der Änderung
 
abolk:

Für den Anfang drucken Sie den Ticketwert nach der Änderung


Ich schreibe eine Frage, aber es hat nichts geändert, das Problem ist nicht gelöst, also werde ich es wiederholen, in der Hoffnung, eine Lösung für das Problem zu bekommen:

Ich schreibe mir gerade einen Indikator, ich brauche etwa 2000 Balken aus der Historie, so eine Schleife:

for (int i=1; i<1900; i++)

werden nur 1000 Balken abgerufen.

Ich versuche, die Variable Bars zu setzen, aber sie sagt, dass ihr Wert gleich 1000 ist, obwohl ich das Diagramm und die historischen Daten bis 2000 gezeichnet habe.

Warum ist das so, was ist falsch????

Bitte beraten!!!!

 
abolk:

Für den Anfang drucken Sie den Ticketwert nach der Änderung

Abgekürzt auf

               Print("Модификация SL, попытка установить новый СЛ, ord_open_sell="+ord_open_sell+" stop_TP="+stop_TP+" Старый СЛ= "+ord_sl+" Bid="+Bid+" ord_take_profit="+ord_take_profit+" Ask="+Ask);
               Print("Модификация в цикле1");             
               ticket=OrderModify(ticket_sell,0,NormalizeDouble((ord_open_sell-stop_TP*Point),Digits),NormalizeDouble(ord_take_profit,Digits),0,0); //первый перенос СЛ
               Print("ticket="+ticket);

               if(ticket<0){Print("OrderModify(SELLSTOP install first SL) failed with error #",GetLastError());}

               Print("Модификация закончена");


2010.09.14 20:35:26 2010 06.07 00:00 MM_1.20 EURUSD,M5: Änderung abgeschlossen
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: ticket=0
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: OrderModify Fehler 130
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: Änderung in Schleife1
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: SL-Änderung, versuche einen neuen SL zu setzen, order_open_sell=1.19799000 stop_TP=200 Alter SL=1.20499000 Bid=1.19470000 order_take_profit=1.19479000 Ask=1.19483000

2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: att_to_modify_sell=0


Leute, ich habe eine Störung. Wie kann ein Fehler

ticket
naiv sein 0-lu?
 
Elliotttrader:

Abgekürzt auf

2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: Ändern beendet
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: ticket=0
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: OrderModify Fehler 130
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: Änderung in Schleife1
2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: SL-Änderung, versuche einen neuen SL zu setzen, order_open_sell=1.19799000 stop_TP=200 Alter SL=1.20499000 Bid=1.19470000 order_take_profit=1.19479000 Ask=1.19483000

2010.09.14 20:35:26 2010.06.07 00:00 MM_1.20 EURUSD,M5: att_to_modify_sell=0

Leute, ich habe eine Störung. Wie kann ein Fehler

naven 0-lu sein?

print -- ticket_sell und Ticket-Variablen-Typ anzeigen