A100: Bei einigen Plattformen ist es möglich, 1 (manchmal 2) CCA-Aufträge zu binden. In MT4/5 implementiere ich programmatisch eine Kette von verknüpften Aufträgen (manchmal recht komplex) und finde dies eine bequemere Option
Als die Ausführung auf einem Server, zum Beispiel?
Es gibt keine Alternative zur Serverausführung nur zwischen Kurszeit und Handelszeit
...und wenn Ihr Internet nicht funktioniert.
Nun ist es natürlich nicht schwer (und nicht teuer), einen stabilen PC bereitzustellen, aber dennoch können clientseitige Lösungen nicht mit der serverbasierten Ausführung konkurrieren.
Meines Erachtens wollen die Makler keine Verantwortung für die Ausführung übernehmen, und die MKs unterstützen sie.
Die Frage ist also, wie genau eine schwebende Order gelöscht werden kann, die keine SL- oder TP-Order ist, wenn bestimmte Ereignisse eintreten (insbesondere, wenn eine TP-Order bei einer offenen Position ausgelöst wird).
Derzeit kann ein solcher schwebender Auftrag nur zwangsweise gelöscht werden, indem ein entsprechender Antrag auf "Löschen eines schwebenden Auftrags" gestellt wird. Wir müssen also auf der Terminalseite das Auftreten bestimmter Ereignisse überwachen und eine Anfrage senden. Aber im Gegensatz zu Ihrer Variante müssen nur zwei Felder in der Anfrage angegeben werden, von denen eines die Anfrage ist.bestellen.
In der von Ihnen erwähnten Situation wären OCO-Aufträge ("One Cansels Other(s)") hilfreich: Auf der TP-Ebene würde ein Auftrag in der Größe der offenen Position platziert werden, und auf der SL-Ebene würde ein Auftrag in der Größe platziert werden, die erforderlich ist, um die Position "umzukehren". Wenn einer dieser OCO-Aufträge ausgelöst wird, wird der zweite auf dem Server automatisch entfernt. Seit es dieses Forum gibt, haben sich die Entwickler der Plattform jedoch strikt geweigert, zusätzliche Auftragsarten, einschließlich OCO-Aufträge, zu implementieren.
Vielen Dank für die Empfehlungen. In meinem Fall entschied, dass die einfachste Sache zu tun war, um die Bestellung Ablaufzeit, dh verwenden:
Crucian: In meinem Fall beschlossen, dass die einfachste Sache zu tun war, um das Ablaufdatum der Bestellung zu verwenden ... Es ist nicht klar, wie das Ablaufdatum auf 2 Tage zu setzen?
request.type_time =ORDER_TIME_SPECIFIED; // есть ещё ORDER_TIME_SPECIFIED_DAY - там, наверное, всё по аналогии
request.expiration=TimeTradeServer()+172800; // 172800 - количество секунд за период в два дня, TimeTradeServer() - момент оформления запроса
Wie kann das Testdiagramm nach dem Testen Text über den Geschäften anzeigen? Oder ganz allgemein: Wie kann man erreichen, dass das Diagramm des Testers nach dem Testen zusätzliche Objekte anzeigt?
Ich habe versucht, sie in die Funktion OnDeinit() einzufügen, aber es wird nichts angezeigt.
Wie kann ich nach dem Testen den Text über den Trades im Tester-Chart anzeigen? Oder ganz allgemein: Wie kann man erreichen, dass das Diagramm des Testers nach dem Testen zusätzliche Objekte anzeigt?
Ich habe versucht, sie in die Funktion OnDeinit() einzufügen, aber es wird nichts angezeigt.
Sobald der Test abgeschlossen ist, gehen Sie auf die Registerkarte Ergebnisse, klicken Sie mit der rechten Maustaste und wählen Sie im Kontextmenü Diagramm öffnen. Es öffnet sich ein Chart mit allen Trades, auf dem Sie beliebige Objekte erstellen und beliebige Indikatoren zur Analyse anwenden können.
tol64: После того, как тест завершён перейдите на вкладку Результаты, нажмите правую кнопку и в контекстном меню выберите Открыть график. Откроется график со всеми сделками и на нём можно создавать любые объекты и применять для анализа любые индикаторы.
Das ist ein bisschen nervig, in meinem MT4 wurden nach dem Test sowohl der Gewinn eines Trades als auch der Saldo und ggf. andere Dinge auf einmal auf dem Ausgangschart eingetragen. All dies wurde einfach durch Einfügen eines zusätzlichen Includes in deinit() des EA erreicht. Ist es möglich, etwas als Text durch OnDeinit in MT5 auszugeben? Oder ist es auch hier deaktiviert und es ist nur ein weiterer Betrug aus Bequemlichkeit der Entwickler zum Nachteil des Benutzers?
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.
Bei einigen Plattformen ist es möglich, 1 (manchmal 2) CCA-Aufträge zu binden. In MT4/5 implementiere ich programmatisch eine Kette von verknüpften Aufträgen (manchmal recht komplex) und finde dies eine bequemere Option
Als zum Beispiel die Serverausführung?
Es gibt weniger Flexibilität und nicht unbedingt mehr Zuverlässigkeit bei der Serverausführung
Es gibt keine Alternative zur Serverausführung nur zwischen Kurszeit und Handelszeit
Es gibt keine Alternative zur Serverausführung nur zwischen Kurszeit und Handelszeit
...und wenn Ihr Internet nicht funktioniert.
Nun ist es natürlich nicht schwer (und nicht teuer), einen stabilen PC bereitzustellen, aber dennoch können clientseitige Lösungen nicht mit der serverbasierten Ausführung konkurrieren.
Meines Erachtens wollen die Makler keine Verantwortung für die Ausführung übernehmen, und die MKs unterstützen sie.
Die Frage ist also, wie genau eine schwebende Order gelöscht werden kann, die keine SL- oder TP-Order ist, wenn bestimmte Ereignisse eintreten (insbesondere, wenn eine TP-Order bei einer offenen Position ausgelöst wird).
Derzeit kann ein solcher schwebender Auftrag nur zwangsweise gelöscht werden, indem ein entsprechender Antrag auf "Löschen eines schwebenden Auftrags" gestellt wird. Wir müssen also auf der Terminalseite das Auftreten bestimmter Ereignisse überwachen und eine Anfrage senden. Aber im Gegensatz zu Ihrer Variante müssen nur zwei Felder in der Anfrage angegeben werden, von denen eines die Anfrage ist.bestellen.
In der von Ihnen erwähnten Situation wären OCO-Aufträge ("One Cansels Other(s)") hilfreich: Auf der TP-Ebene würde ein Auftrag in der Größe der offenen Position platziert werden, und auf der SL-Ebene würde ein Auftrag in der Größe platziert werden, die erforderlich ist, um die Position "umzukehren". Wenn einer dieser OCO-Aufträge ausgelöst wird, wird der zweite auf dem Server automatisch entfernt. Seit es dieses Forum gibt, haben sich die Entwickler der Plattform jedoch strikt geweigert, zusätzliche Auftragsarten, einschließlich OCO-Aufträge, zu implementieren.
Vielen Dank für die Empfehlungen. In meinem Fall entschied, dass die einfachste Sache zu tun war, um die Bestellung Ablaufzeit, dh verwenden:
......... request.type_time =ORDER_TIME_DAY; ........Es ist nicht klar, wie man eine Frist von 2 Tagen festlegen kann?Es ist nicht klar, wie man eine 2-tägige Verfallszeit einstellen kann?
datetimeAblauf;
Addiert 2 Tage oder 60*60*24*2 Sekunden zum aktuellen Datum
Wie kann das Testdiagramm nach dem Testen Text über den Geschäften anzeigen? Oder ganz allgemein: Wie kann man erreichen, dass das Diagramm des Testers nach dem Testen zusätzliche Objekte anzeigt?
Ich habe versucht, sie in die Funktion OnDeinit() einzufügen, aber es wird nichts angezeigt.
Wie kann ich nach dem Testen den Text über den Trades im Tester-Chart anzeigen? Oder ganz allgemein: Wie kann man erreichen, dass das Diagramm des Testers nach dem Testen zusätzliche Objekte anzeigt?
Ich habe versucht, sie in die Funktion OnDeinit() einzufügen, aber es wird nichts angezeigt.
tol64:
После того, как тест завершён перейдите на вкладку Результаты, нажмите правую кнопку и в контекстном меню выберите Открыть график. Откроется график со всеми сделками и на нём можно создавать любые объекты и применять для анализа любые индикаторы.