[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 585

 
rigonich:

Dann weiß ich es nicht. Sie müssen den Code nicht nur der Funktion, sondern des gesamten Programms durchsehen, ihn auf Fehler überprüfen, Variablenwerte und den letzten Fehler ausdrucken und nach einer bestimmten Fehlerstelle im Code suchen. Wenn ich meine eigenen Programme debuggt habe, brauchte ich bei großen Programmen (ca. 1000 Zeilen) manchmal Wochen, d.h. mehr Zeit als beim Schreiben.


Es ist alles in Ordnung, als es noch keine solchen Funktionen gab, funktionierte alles wie am Schnürchen! und jetzt funktioniert es, aber der Fehler bei der Änderung tritt in der Funktion selbst auf

Ich habe eine Idee, vielleicht erscheint dieser Fehler, weil die Änderungsfunktion in der Benutzerfunktion ist, nicht im Körper von start()?

 
Pacman:



Sagt, dass kein Strahl für ein Objekt namens His_Name erstellt werden soll.
 
lottamer:

Hier ist, was ich bereits geschrieben habe:

-------------------------------------------

int start()

{

Kaufbedingung,

den Kauf selbst,

und Änderung

zurück(0);

}

-----------------------------------------

Das Problem ist, jetzt muss ich NEUE Bedingungen eingeben, Bedingungen schließen und dann selbst schließen, und mein EA beginnt unendlich zu ändern (Stop und Take sind festgelegt, aber erfolgreiche Änderung Nachricht erscheint mit jedem Tick).

Wie kann ich nun eine Schleife innerhalb dieses Starts für neue Bedingungen und Schließen erstellen, so dass der erste Teil des EA nicht betroffen sein wird, bis es vollständig schließt?


Bitte posten Sie den Code, damit wir ihn herausfinden und Ihnen helfen können!

 
Ekburg:


dort ist alles in Ordnung, als diese Funktionen nicht vorhanden waren, lief alles wie am Schnürchen! und jetzt funktioniert es, aber der Fehler bei der Änderung tritt in der Funktion selbst auf

Ich habe eine Idee, vielleicht dieser Fehler auftritt, weil die Änderung Funktion in der Benutzer-Funktion ist, nicht in den Körper start()?


Wichtig ist, dass die Funktionsbeschreibung außerhalb anderer Funktionen steht und Sie sie von überall aus aufrufen können.
 
rigonich:

Es heißt, dass kein Strahl für ein Objekt namens His_Name erstellt werden soll.

Ich entschuldige mich dafür, dass ich so pingelig bin, ich möchte nur verstehen, warum der Autor diese Zeilen in den Code eingefügt hat.

Im Grunde bauen wir zwei Linien dick (Kerzenkörper), dünn (Schatten), ändern Farbe und Text, aber warum haben sie einen Balken dort hinzufügen.

Es ist jetzt fast 1 Uhr morgens, vielleicht fange ich also an, langsamer zu werden.

 
Pacman:

Ich entschuldige mich dafür, dass ich so pingelig bin, ich möchte nur verstehen, warum der Autor diese Zeilen in den Code eingefügt hat.

Im Grunde bauen wir zwei Linien dick (Kerzenkörper), dünn (Schatten), ändern Farbe und Text, aber warum haben sie einen Balken dort hinzufügen.

Es ist jetzt fast 1 Uhr morgens, vielleicht fange ich an, langsamer zu werden.


Denn es gibt kein Objekt wie eine Kerze, und man kann nur Objekte erstellen, die sich im Terminal befinden , und diese haben alle ihre eigenen Eigenschaften.
 
Pacman:

Ich entschuldige mich dafür, dass ich so pingelig bin, ich möchte nur verstehen, warum der Autor diese Zeilen in den Code eingefügt hat.

Im Grunde bauen wir zwei Linien dick (Kerzenkörper), dünn (Schatten), ändern Farbe und Text, aber warum haben sie einen Balken dort hinzufügen.

Es ist fast 1 Uhr nachts, vielleicht fange ich also an, langsamer zu werden.

Alles, was Sie in einer Grafik (Diagramm) zeichnen, ist ein Objekt (Grafik). Objekte haben Eigenschaften. Ein Candlestick wird in einem Diagramm durch ein Objekt namens Trendlinie(OBJ_TREND) gezeichnet. Sie wird durch 2 Punkte auf einem Diagramm definiert. Er kann als Segment oder als Strahl festgelegt werden - dies wird durch die von Ihnen erwähnte Eigenschaft OBJPROP_RAY definiert.
 
Pacman:


Posten Sie den Code, damit ich ihn herausfinden und Ihnen helfen kann!


Im Gegenteil, ich wollte Ihre Aufgabe vereinfachen und die Blöcke ausblenden, die bereits funktionieren und nicht analysiert oder korrigiert werden müssen.

d.h. BEDINGUNGEN, ERÖFFNUNG UND ÄNDERUNG sind bereits in der Startfunktion gestapelt.

sollten die nächsten Bedingungen innerhalb derselben Funktion liegen? Ich habe diese Bedingungen noch gar nicht geschrieben, weil ich nicht weiß, wo ich sie unterbringen soll...

 
lottamer:


Im Gegenteil, ich wollte Ihre Aufgabe vereinfachen und die Blöcke ausblenden, die bereits funktionieren und nicht analysiert oder korrigiert werden müssen.

d.h. BEDINGUNGEN, ERÖFFNUNG UND ÄNDERUNG sind bereits in der Startfunktion gestapelt.

sollten die nächsten Bedingungen innerhalb derselben Funktion liegen? Ich habe diese Bedingungen noch gar nicht geschrieben, weil ich nicht weiß, wo ich sie unterbringen soll...

Lassen Sie die Tastatur in Ruhe - lesen und studieren Sie, das können Sie auch, und dann nehmen Sie einen Bleistift und zeichnen Sie ein Schema Ihres EA, wenn Sie es zeichnen - gehen Sie zurück an die Tastatur. :)))
 
lottamer:

Hier ist, was ich bereits geschrieben habe:

-------------------------------------------

int start()

{

Kaufbedingung,

den Kauf selbst,

und Änderung

zurück(0);

}

-----------------------------------------

Das Problem ist, dass ich jetzt NEUE Bedingungen eingeben muss, Bedingungen schließen und dann selbst schließen, und mein EA beginnt unendlich zu ändern (Stop und Take sind festgelegt, aber die Nachricht über die erfolgreiche Änderung erscheint mit jedem Tick).

Können Sie mir sagen, wie man eine Schleife innerhalb dieses Starts für neue Bedingungen und Schließen zu erstellen, so dass der erste Teil des EA nicht betroffen sein wird, bis es vollständig schließt?

Wenn Sie einen festen Sl und Tp haben, warum brauchen Sie dann weitere Bedingungen für den Abschluss? Ihr Trailing-Stop verhält sich genauso wie der Standard-Stop des Terminals - er ändert die Order bei jedem Tick, wenn sich der Preis in die gewünschte Richtung bewegt (er zieht den Stoploss hoch). Wenn Sie möchten, dass er nicht bei jedem Tick geändert wird, fügen Sie die Bedingung hinzu, dass er nicht geändert wird, wenn die Differenz zwischen dem Stoploss der Order und dem aktuellen Preis geringer ist als das definierte Niveau(Trailing-Stop-Niveau + Änderungsschritt).

Was die Platzierung betrifft, so werden die Operatoren in der Reihenfolge von oben nach unten und von links nach rechts ausgeführt, wenn keine Verzweigungsoperatoren dazwischen liegen (if else)/.

Grund der Beschwerde: