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

 
dyxaa:

Genau. Genial einfach))))

Ich brauche einen Kaufstopp, wenn der Kurs um 100 Pips fällt, um ihn zu löschen.

Haben Sie es programmatisch oder manuell eingegeben?

Wenn manuell, dann schließen Sie es manuell (besser).

Wenn dies programmatisch geschieht (über einen Expert Advisor), gehen Sie die Aufträge durch und suchen Sie den richtigen. Dann:

if (Bid < OrderOpenPrice()-100*Point) OrderDelete(OrderTicket());   // Это для Вашего типа ордера - Бай-Стоп

Wenn Sie nicht wissen, wie Sie das Überschwingen und andere einfache Aktionen durchführen können, lesen Sie zunächst ein Tutorial über MCL. Denn in diesem Fall ist es unwahrscheinlich, dass Sie mit dem Code zurechtkommen.

 
hoz:

Ich habe eine Idee, aber wie man das im wirklichen Leben umsetzen kann und wie es im wirklichen Leben zuverlässig funktionieren wird, weiß ich nicht wirklich.

Das Wesentliche ist wie folgt. Wir sollten den Markt betreten, nachdem wir die Eule auf dem Chart platziert haben, unmittelbar nachdem der Balken geschlossen wurde, d.h. bei der Eröffnung eines neuen Balkens. Dies ist der erste Auftrag. Wenn die Order durch einen TP oder einen Stop-Preis geschlossen wird, sollten wir sofort eine Order zur Eröffnung eines neuen Balkens eröffnen. Wie kann man das vernünftiger machen?

Ich verstehe, dass wir eine Variable erstellen sollten. Setzen Sie den Eröffnungskurs des aktuellen Balkens hinein. Und vergleichen Sie diesen Wert mit dem Eröffnungskurs des aktuellen Balkens. Wenn der Wert der Variablen nicht gleich dem Eröffnungskurs des aktuellen Balkens mit dem Index Null ist, wird eine Order eröffnet.

Das ist doch die optimalste Variante, oder?

Hier bin ich bei der Lösung meiner eigenen Fälle auf eine Funktion zur Bestimmung des Neuen Balkens gestoßen:

//+------------------------------------------------------------------+
//|  Проверка на появление нового бара                               |
//+------------------------------------------------------------------+
bool isNewBar()
   {  static datetime TimeBar=0;
      bool flag=false;
      if(TimeBar!=Time[0])
         {
          TimeBar=Time[0];
          flag=true;
         } 
      return (flag);
   }
//+------------------------------------------------------------------+
Jetzt müssen Sie nur noch eine Bestellung aufgeben... : )))
 
dyxaa:

Genau. Genial einfach))))

Ich brauche einen Kaufstopp, wenn der Kurs um 100 Pips fällt und ich ihn löschen muss.

Ich habe mein eigenes Kreuz, und ich muss 100 Punkte durch die Differenz zwischen dem Preis und dem Preis für die Platzierung der Pending Order zählen!
 

Ich verstehe nicht, was falsch ist, helfen Sie mir zu verstehen, Fehler 'start' - Variable nicht definiert, ich brauche, um das Maximum der RSI-Werte für einen bestimmten Zeitraum zu finden

(RSIBuffer3[i]) // Array mit RSI-Werten

// Festlegung der Arraygröße

int count=ArraySize(RSIBuffer3[i]);

// Suche nach dem Maximalwert des Arrays

int RSI_max=ArrayMiximum (RSIBuffer3[i], count-1, int start=0);

 
Chiripaha:

Wenn es umgesetzt wird, wird es im wirklichen Leben genauso zuverlässig funktionieren wie in der Demo. Aber nicht die Tatsache, dass es rentabel sein wird.

Sie können es durch die Eröffnung einer neuen Bar umsetzen. Aber Sie haben nicht formuliert, in welche Richtung sich der Balken öffnet und unter welchen Bedingungen diese Seite bestimmt wird.

Sie brauchen nichts zu vergleichen - öffnen Sie einfach einen Auftrag, wenn ein neuer Balken erscheint (basierend auf Ihren Eingaben) und das war's.

Wenn Sie keine Ahnung haben:

"Die Erfahrung ist der Sohn vieler Fehler.
Und ein Genie ist ein Freund von Paradoxien" (Alexander Sergejewitsch im Gespräch mit Ihnen).

Du musst eine Eule basteln (schreiben) und sie experimentell überprüfen. - Ich glaube nicht, dass jemand die Eule für Sie (kostenlos) schreiben wird. Ihnen einen Hinweis zu geben, ist eine Sache. Aber Ideen (Gedanken) zu verwirklichen ist keine Hilfe, sondern Arbeit.


Ich stelle mir alles vor. Die Idee ist, dass die erste Bestellung, wenn wir eine oder eine andere Funktion verwenden, um die neue Bar zu bestimmen, wird spontan öffnen, wenn der EA auf dem Chart als angehängt ist. Wenn der EA auf dem Chart platziert wird, ist die Variable, die den Zeitpunkt der Öffnung des Balkens speichert, nicht gleich dem Zeitpunkt der Öffnung des aktuellen Balkens.. Ich dachte, ich würde einfach die Eröffnungszeit des aktuellen Balkens der Variablen in der Inite zuweisen und dann, wenn diese Variable gleich der Eröffnungszeit des aktuellen Balkens ist, werde ich nichts weiter tun, und wenn sie nicht gleich ist, werde ich die Öffnungsfunktion ausführen. Ich dachte, es wäre die angemessenste Variante, oder vielleicht könnte ich auch ohne das Inite auskommen.

 
Merincool:

Ich verstehe nicht, was falsch ist, helfen Sie mir zu verstehen, Fehler 'start' - Variable nicht definiert, ich brauche, um das Maximum der RSI-Werte für einen bestimmten Zeitraum zu finden

(RSIBuffer3[i]) // Array mit RSI-Werten

// Festlegung der Arraygröße

int count=ArraySize(RSIBuffer3[i]);

// Suche nach dem Maximalwert des Arrays

int RSI_max=ArrayMiximum (RSIBuffer3[i], count-1, int start=0);

// Bestimmung der Array-Größe

int count=ArraySize(RSIBuffer3);

// Suche nach dem Maximalwert des Arrays

int RSI_max=ArrayMiximum(RSIBuffer3, count-1, int start=0);

 

Was muss ich in die Programmverknüpfung schreiben, damit das Terminal mit einem bestimmten Konto startet?

 
Hallo, es gibt 4 Indikatoren und Benutzer versuchen, einen Expert Advisor für sie zu schreiben. Die Frage ist, was Sie brauchen, um den Preis Wert für jeden Indikator zu erhalten, um nicht herauskommen 0, und doch die Zahl zu verschreiben. müssen einfach verschreiben grammotnoho in icustom, ich verschreiben, dass, aber das funktioniert nicht, hier ist die "set".
Dateien:
 
Elektronik, es scheint sich mit dem letzten zu öffnen, mit dem Sie gearbeitet haben.
 
palomnik:
Elektronik, es scheint sich mit dem letzten zu öffnen, zumindest habe ich keinen anderen gesehen.

Ich beende die Arbeit an dem Testgerät und beginne mit dem echten Gerät.