[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 295
Danke. Im Prinzip braucht man nur "||" durch "&&" zu ersetzen (ich wollte wahrscheinlich auf Ungleichheit prüfen, gefolgt von "continue"), und alles wird funktionieren, während es im Tester sowieso funktioniert. Obwohl Ihre Version natürlich korrekter sein wird.
Nun, das sind Nuancen. Ich versuche immer noch, sie nach meinen Bedürfnissen umzuschreiben. Ich zum Beispiel brauche die medjic-Auswahl überhaupt nicht (in dieser Funktion). Außerdem habe ich festgestellt, dass die Auswahl in der Funktion Figar0 aus der Historienliste erfolgte. Das Wichtigste dabei ist, die Idee zu verstehen. Übrigens benötige ich Aufträge aus dem Pool, so dass sich alles viel einfacher gestaltete.
Danke für die Ideen und die Hilfe, Leute.
PS: Und erläutern Sie bitte Folgendes
OrderType()>1
Ich habe schon mehrmals gesehen, dass OrderType als int verglichen wird . Was ist der Trick dabei? Ich dachte, es sei eine String-Variable.
Nun, das sind Nuancen. Ich versuche immer noch, sie nach meinen Bedürfnissen umzuschreiben. Ich zum Beispiel brauche die medjic-Auswahl überhaupt nicht (in dieser Funktion). Außerdem habe ich festgestellt, dass die Auswahl in der Funktion Figar0 aus der Historienliste erfolgte. Das Wichtigste dabei ist, die Idee zu verstehen. Übrigens benötige ich Aufträge aus dem Pool, so dass sich alles viel einfacher gestaltete.
Danke für die Ideen und die Hilfe, Leute.
PS: Könnten Sie das Folgende erklären?
Ich habe gesehen, OrderType als int ein paar Mal verglichen. Was ist der Trick dabei? Ich dachte, es sei eine String-Variable.
Dies ist eine Entsprechung zwischen Konstanten und ihren Werten.
Übrigens benötige ich Aufträge aus dem Pool, so dass es sich als viel einfacher erwies.
Bei der Auswahl eines Auftrags nach Index werden zwei Listen verwendet - offene und geschlossene. Dies wird festgelegt, indem man angibt, in welcher Liste man sie sehen möchte ( Parameterpool).
Wenn wir also aus einer Liste offener Aufträge auswählen müssen, können wir die Angabe dieses Parameters weglassen (er ist standardmäßig gesetzt). Wenn wir aus einer Liste von abgeschlossenen Aufträgen wählen wollen, sollten wir MODE_HISTORY als Parameter angeben.
Dementsprechend, wenn Sie die letzte offene Order finden wollen, wird die Schleife auf offene Orders des Terminals gemacht und Sie sollten auch die Zeit der Öffnung OrderOpenTime() überprüfen, wenn Sie die letzte geschlossene Order benötigen (wie in den obigen Beispielen), sollte die Schleife auf geschlossene Orders des Terminals gemacht werden und Sie sollten OrderCloseTime() überprüfen, um herauszufinden, wann die ausgewählte Order geschlossen wurde.
Und zu Ihrer Information: Wenn Sie nach Ticket auswählen, wird der Parameterpool überhaupt nicht beachtet und die Bestellung wird in beiden Listen gefunden. Sobald der Auftrag gefunden wurde, müssen wir seine Abschlusszeit überprüfen, um herauszufinden, aus welcher Liste der Auftrag ausgewählt wurde. Wenn der Zeitpunkt des Abschlusses größer als Null ist, ist der Auftrag abgeschlossen und wurde aus der Liste der abgeschlossenen Aufträge ausgewählt. Wenn der Zeitpunkt des Abschlusses eines offenen Auftrags immer gleich Null ist. Wenn sie also gleich Null ist, wurde der Auftrag aus der Liste der offenen Aufträge ausgewählt.
Auch wenn Sie nach einem schwebenden Auftrag anhand seines Tickets suchen, kann er in beiden Listen erscheinen. Dies geschieht, wenn er in einen Marktauftrag umgewandelt wird. Daher müssen Sie auch die von Ihnen gewählte Auftragsart überprüfen. Wenn der schwebende Auftrag geschlossen wird und der Marktauftrag mit demselben Ticket nicht geschlossen wird, bedeutet dies, dass der schwebende Auftrag in einen Marktauftrag umgewandelt wurde.
Danke. Im Prinzip braucht man nur "||" durch "&&" zu ersetzen (ich wollte wahrscheinlich auf Ungleichheit prüfen, gefolgt von "continue"), und alles wird funktionieren, während es im Tester sowieso funktioniert. Obwohl Ihre Version natürlich korrekter sein wird.
Ich selbst mache manchmal dumme Fehler, wenn ich hier Code poste... Dann korrigiere ich den Code wie verbrüht, bevor er in falscher Form gelesen wird... :)))
Hallo, ich wollte einen Indikator schreiben, der die MAX und MIN des Schlusskurses für einen bestimmten Zeitraum ausliest. Ich folge dem Tutorial, aber die alten Daten werden überhaupt nicht angezeigt, sondern zwei horizontale Linien mit den aktuellen MAX und MIN. Können Sie mir sagen, was ich falsch mache?
borisis: Hallo, ich wollte einen Indikator schreiben, der die MAX und MIN des Schlusskurses für einen bestimmten Zeitraum zählt. Wie alles, was ich im Tutorial mache, aber die alten Daten werden überhaupt nicht gezeichnet, sondern es werden zwei horizontale Linien mit den aktuellen MAX und MIN angezeigt. Können Sie mir sagen, was ich falsch mache?
Valdemar 01.04.2011 16:31 Grüße an alle Meister der Programmierung! Hinweis auf die richtige Idee, wenn Sie nichts dagegen haben: Hier habe ich, sagen wir, ich beschlossen, am Ende einer bestimmten Stunde des Handels, setzen Sie einen Stop-Auftrag, schob weg von der hohen und niedrigen der Stunde auf ein paar Punkte, was ich verwenden sollte, schreiben Sie eine Programmier-Funktion!
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
Danke. Im Prinzip braucht man nur "||" durch "&&" zu ersetzen (ich wollte wahrscheinlich auf Ungleichheit prüfen, gefolgt von "continue"), und alles wird funktionieren, während es im Tester sowieso funktioniert. Obwohl Ihre Version natürlich korrekter sein wird.
Nun, das sind Nuancen. Ich versuche immer noch, sie nach meinen Bedürfnissen umzuschreiben. Ich zum Beispiel brauche die medjic-Auswahl überhaupt nicht (in dieser Funktion). Außerdem habe ich festgestellt, dass die Auswahl in der Funktion Figar0 aus der Historienliste erfolgte. Das Wichtigste dabei ist, die Idee zu verstehen. Übrigens benötige ich Aufträge aus dem Pool, so dass sich alles viel einfacher gestaltete.
Danke für die Ideen und die Hilfe, Leute.
PS: Und erläutern Sie bitte Folgendes
OrderType()>1Ich habe schon mehrmals gesehen, dass OrderType als int verglichen wird . Was ist der Trick dabei? Ich dachte, es sei eine String-Variable.Nun, das sind Nuancen. Ich versuche immer noch, sie nach meinen Bedürfnissen umzuschreiben. Ich zum Beispiel brauche die medjic-Auswahl überhaupt nicht (in dieser Funktion). Außerdem habe ich festgestellt, dass die Auswahl in der Funktion Figar0 aus der Historienliste erfolgte. Das Wichtigste dabei ist, die Idee zu verstehen. Übrigens benötige ich Aufträge aus dem Pool, so dass sich alles viel einfacher gestaltete.
Danke für die Ideen und die Hilfe, Leute.
PS: Könnten Sie das Folgende erklären?
Ich habe gesehen, OrderType als int ein paar Mal verglichen. Was ist der Trick dabei? Ich dachte, es sei eine String-Variable.Dies ist eine Entsprechung zwischen Konstanten und ihren Werten.
OP_BUY entspricht 0
OP_SELL entspricht 1
__________________________________________________________________________________________________________-
Art der Operation für die Funktion OrderSend(). Kann einer der folgenden Werte sein:
Übrigens benötige ich Aufträge aus dem Pool, so dass es sich als viel einfacher erwies.
Wenn wir also aus einer Liste offener Aufträge auswählen müssen, können wir die Angabe dieses Parameters weglassen (er ist standardmäßig gesetzt). Wenn wir aus einer Liste von abgeschlossenen Aufträgen wählen wollen, sollten wir MODE_HISTORY als Parameter angeben.
Dementsprechend, wenn Sie die letzte offene Order finden wollen, wird die Schleife auf offene Orders des Terminals gemacht und Sie sollten auch die Zeit der Öffnung OrderOpenTime() überprüfen, wenn Sie die letzte geschlossene Order benötigen (wie in den obigen Beispielen), sollte die Schleife auf geschlossene Orders des Terminals gemacht werden und Sie sollten OrderCloseTime() überprüfen, um herauszufinden, wann die ausgewählte Order geschlossen wurde.
Und zu Ihrer Information: Wenn Sie nach Ticket auswählen, wird der Parameterpool überhaupt nicht beachtet und die Bestellung wird in beiden Listen gefunden. Sobald der Auftrag gefunden wurde, müssen wir seine Abschlusszeit überprüfen, um herauszufinden, aus welcher Liste der Auftrag ausgewählt wurde. Wenn der Zeitpunkt des Abschlusses größer als Null ist, ist der Auftrag abgeschlossen und wurde aus der Liste der abgeschlossenen Aufträge ausgewählt. Wenn der Zeitpunkt des Abschlusses eines offenen Auftrags immer gleich Null ist. Wenn sie also gleich Null ist, wurde der Auftrag aus der Liste der offenen Aufträge ausgewählt.
Auch wenn Sie nach einem schwebenden Auftrag anhand seines Tickets suchen, kann er in beiden Listen erscheinen. Dies geschieht, wenn er in einen Marktauftrag umgewandelt wird. Daher müssen Sie auch die von Ihnen gewählte Auftragsart überprüfen. Wenn der schwebende Auftrag geschlossen wird und der Marktauftrag mit demselben Ticket nicht geschlossen wird, bedeutet dies, dass der schwebende Auftrag in einen Marktauftrag umgewandelt wurde.
Danke. Im Prinzip braucht man nur "||" durch "&&" zu ersetzen (ich wollte wahrscheinlich auf Ungleichheit prüfen, gefolgt von "continue"), und alles wird funktionieren, während es im Tester sowieso funktioniert. Obwohl Ihre Version natürlich korrekter sein wird.
Hallo, ich wollte einen Indikator schreiben, der die MAX und MIN des Schlusskurses für einen bestimmten Zeitraum zählt. Wie alles, was ich im Tutorial mache, aber die alten Daten werden überhaupt nicht gezeichnet, sondern es werden zwei horizontale Linien mit den aktuellen MAX und MIN angezeigt. Können Sie mir sagen, was ich falsch mache?
minValueIdx= ArrayMinimum(Close,(period-1), i);
Andernfalls finden Sie bei jedem Schritt immer wieder dieselben Indizes
Hallo zusammen! Wie lässt sich herausfinden, zu welchem Typ eine Variable gehört: int ODER double?
und zweitens, was bedeutet der Fehler "ungültige doppelte Zahl als Parameter 1 für DoubleToStr Funktion"?
Hallo zusammen! Wie erkenne ich den Typ einer Variablen: int ODER double?
Valdemar 01.04.2011 16:31
Grüße an alle Meister der Programmierung! Hinweis auf die richtige Idee, wenn Sie nichts dagegen haben: Hier habe ich, sagen wir, ich beschlossen, am Ende einer bestimmten Stunde des Handels, setzen Sie einen Stop-Auftrag, schob weg von der hohen und niedrigen der Stunde auf ein paar Punkte, was ich verwenden sollte, schreiben Sie eine Programmier-Funktion!