Fehler, Irrtümer, Fragen - Seite 1494

 
zaskok3:

Eine Erklärung für das Fehlen von OnMarketwatch wäre ebenfalls wünschenswert.

Es wäre besser, wenn Sie keine Erklärung verlangen würden, warum dieses Ereignis nicht in MT stattfindet.

Sie sollten sich schriftlich an das Service Desk wenden und ausführlich erläutern, wie es Ihrer Meinung nach funktionieren sollte und warum 99 % der Wirtschaftsbeteiligten es brauchen.

 
Maxim Khrolenko:
Meiner Meinung nach können Sie hier OnTimer() verwenden, um alle X Millisekunden ein Ereignis aufzurufen.
Diese Lösung hat längst eine präzisere Variante gefunden - setzen Sie Indikatoren auf die gewünschten Symbole und senden Sie das Benutzerereignis an den Expert Advisor.
 
zaskok3:
Neues Tick-Ereignis in Marketwatch. Ähnlich wie OnTick, nur reagiert es nicht auf neue Ticks eines Symbols, sondern auf alle, die in Marketwatch eingetragen sind.

Bei dem derzeitigen Angebotsfluss können sogar ihre eigenen Ticks in Stapeln ankommen, während sie ein anderes OnTick verarbeiten.

Aus irgendeinem Grund denken viele Leute, dass beim Eintreten eines Ereignisses der Handler dieses Ereignisses sofort aktiviert wird, auch wenn ein anderes Ereignis von demselben Expert Advisor verarbeitet wird (d.h. parallel). Dies ist nicht der Fall.

Alle Ereignisse sind in einer allgemeinen Warteschlange für denselben Expert Advisor angeordnet. Der Expert Advisor wird sie nacheinander abarbeiten. In diesem Fall hängt alles vom Programmierer ab - wie effektiv er/sie die Verarbeitung eines bestimmten Ereignisses umsetzt. Aber selbst wenn der Programmierer ein Superprogrammierer ist und ein Superauto hat, wird er/sie die Warteschlange anschwellen lassen, wenn es viele Ereignisse gibt (und erst recht, wenn es Ticks von fremden Personen gibt).

Was sind die Argumente dafür, dass man Zecken von den Charakteren anderer Leute haben möchte? "Ich will nicht an der Uhr drehen, um die richtigen Zeichen zu finden, weil ich vielleicht zu spät zur Verteilung komme. Und da das Tick-Ereignis eines anderen Symbols (vor allem, wenn mehrere Symbole überwacht werden) in der Warteschlange durch die Verarbeitung eines anderen Ereignisses verzögert werden kann, ist die Wahrscheinlichkeit, dass das Giveaway zu spät kommt, viel höher.

Glauben Sie mir, wir haben tatsächlich über Ereignisse diskutiert, bei denen andere Leute getickt haben. Deshalb sind wir zu dem Schluss gekommen, dass es viel besser ist, eine Zeitschaltuhr zu verwenden".

 
zaskok3:

In MQL4++ komme ich nicht ohne extern aus, wenn ich Eingabeparameter programmatisch ändern muss.

Es spricht absolut nichts dagegen, mit normalen Variablen zu arbeiten. Für interaktive Indikatoren besteht im Wesentlichen kein Bedarf an externen Konst-Parametern, die nicht durch Ihre Interaktivität gesteuert werden.

Sie sind einfach nur faul und fordern eine irrationale Redundanz, die Sie nicht nutzen werden, weil es eine funktionierende Alternative gibt.

 
Joo Zepper:
Welchen Rat würden Sie Besitzern von mehreren Monitoren geben? Wie können Sie die Arbeit mit dem Terminal effizient gestalten?

Alle Registerkarten und Servicefenster (Toolbox, Tester, Marktübersicht, Navigator, Datenfenster, Symbolleisten) sollten auf einem separaten Monitor platziert werden.

Lassen Sie nur Diagramme im Terminalfenster. Dehnen des Terminalfensters auf mehreren Monitoren, die die gleiche Größe und Auflösung haben

 
o_O:

Es wäre besser, wenn Sie keine Erklärung verlangen würden, warum dieses Ereignis nicht in MT stattfindet.

Sie sollten sich schriftlich an das Service Desk wenden und ausführlich erläutern, wie es Ihrer Meinung nach funktionieren sollte und warum 99 % der Wirtschaftsbeteiligten es brauchen.

o_O:

Es gibt nichts, was Sie daran hindert, mit normalen Variablen zu arbeiten. Für interaktive Indikatoren gibt es im Grunde keinen Bedarf an externen Parametern, die nicht durch Ihre Interaktivität gesteuert werden.

Sie sind einfach nur faul und fordern eine irrationale Redundanz, die Sie selbst nicht nutzen werden, da es bereits eine praktikable Alternative gibt.

Ich verstehe nicht, wie man so aggressiv auf eine ruhige Argumentation reagieren kann. Irgendetwas schien Ihnen falsch zu sein... Es gibt keine, alles ist gut, beruhigen Sie sich. Du bist nicht R...

Maxim Khrolenko:
Ich denke, Sie können OnTimer() hier verwenden, rufen Sie das Ereignis alle X Millisekunden.
o_O:
Diese Lösung wurde bereits genauer entwickelt - setzen Sie Indikatoren auf die gewünschten Symbole und senden Sie das benutzerdefinierte Ereignis an den Expert Advisor.

Ich weiß, deshalb habe ich auch sofort geschrieben:

zaskok3:

Aus irgendeinem Grund bieten sie Krückenlösungen über einen Timer oder eine noch größere Perversion - OnChartEvent.

Slawa, ich verstehe Ihre Logik nicht ganz:

Slawa:

Was sind die Argumente dafür, dass man Zecken von den Charakteren anderer Leute haben möchte? "Ich möchte nicht an der Uhr drehen, um die richtigen Buchstaben zu finden, denn ich könnte zu spät zur Verlosung kommen. Und da das Tick-Ereignis eines anderen Symbols (vor allem, wenn mehrere Symbole überwacht werden) in der Warteschlange durch die Verarbeitung eines anderen Ereignisses verzögert werden kann, ist die Wahrscheinlichkeit, zu spät zu kommen, viel höher.

Glauben Sie mir, wir haben Ereignisse über die Ticks anderer Leute diskutiert. Deshalb sind wir zu dem Schluss gekommen: "Es ist viel besser, einen Timer zu benutzen".

Wozu braucht man dann OnTick, wenn ein Timer auch für seine eigenen Ticks ausreicht? Meine Logik funktioniert vielleicht nicht richtig. Aber meine Überlegung ist folgende: Da es OnTick gibt, muss es auch OnMarketWatch geben. Da OnMarketWatch durch OnTimer implementiert werden kann, kann das Gleiche mit OnTick gemacht werden. Die Existenz von OnTick hat also die gleiche Begründung wie die Existenz von OnMarketWatch. Aber das eine existiert und das andere nicht.

Die OnTick-Warteschlange wird für die Ticks, die bei der Ausführung des aktuellen OnTick vorhanden waren, auf Null zurückgesetzt (in EAs ist das so). Es ist nicht klar, von welchem Überlauf der Warteschlange die Rede ist. Es ist nicht sinnvoll, die Zeitschaltuhr an Wochenenden außer Betrieb zu setzen. Und EAs lösen nicht bei jedem Tick OnTick aus. Das ist der Grund, warum es unmöglich ist, Zecken zu sammeln, ohne sie im EA zu überspringen. Die Warteschlange wird geleert, und das ist normal. Es gibt keine Überläufe.

 

zaskok3:

Slawa, ich verstehe Ihre Logik nicht ganz:

Wozu braucht man dann OnTick, wenn ein Timer auch für seine eigenen Ticks ausreicht? Vielleicht funktioniert meine Logik nicht richtig. Aber meine Überlegung ist folgende: Wenn es OnTick gibt, muss es auch OnMarketWatch geben. Da OnMarketWatch durch OnTimer implementiert werden kann, kann das Gleiche mit OnTick gemacht werden. Die Existenz von OnTick hat also die gleiche Begründung wie die Existenz von OnMarketWatch. Aber das eine existiert und das andere nicht.

Die OnTick-Warteschlange wird für Ticks, die zum Zeitpunkt der Ausführung des aktuellen OnTick waren, auf Null zurückgesetzt (bei EAs ist dies der Fall). Worum es bei der Überfüllung der Warteschlange geht, ist nicht klar. Es ist nicht sinnvoll, die Zeitschaltuhr an Wochenenden außer Betrieb zu nehmen. Und EAs lösen nicht bei jedem Tick OnTick aus. Das ist der Grund, warum es unmöglich ist, Zecken zu sammeln, ohne sie im EA zu überspringen. Die Warteschlange wird geleert, und das ist normal. Es gibt keine Überläufe.

OnTick wurde nahtlos von der vierfachen Startfunktion

OnTick deckt 99% der Anforderungen ab und ermöglicht es Ihnen, einfache Programme zu schreiben.

Es geht nicht darum, die Warteschlange zu überfüllen. Es geht darum, sie aufzublähen - die Ereignisse gehen nicht verloren.

Es gibt keine separaten Warteschlangen für einzelne Ereignisse (OnTick-Warteschlange). Es gibt eine gemeinsame Warteschlange für alle Ereignisse desselben Expert Advisors.

Die Warteschlange wird jedoch auf intelligente Weise mit Ereignissen aufgefüllt - wenn sich ein rohes NewTick-Ereignis in der Warteschlange befindet, werden keine weiteren NewTick-Ereignisse hinzugefügt. Wenn sich ein unbearbeitetes Timer-Ereignis in der Warteschlange befindet, werden andere Timer-Ereignisse nicht in die Warteschlange aufgenommen. Etc.

Über die Angemessenheit bzw. Unangemessenheit der Zeitschaltuhr. Der Timer verbraucht nicht so viele Ressourcen, wie Sie denken. Das Client-Terminal verfügt übrigens über mehrere Timer, die gleichzeitig für seine eigenen Bedürfnisse arbeiten. Sie arbeiten die ganze Zeit und die Prozessorlast ist 0

 
Slawa:

OnTick deckt 99% Ihrer Bedürfnisse ab und ermöglicht es Ihnen, einfache Programme zu schreiben.

Wenn Sie in den 99% OnTick in OnTimer umbenennen, indem Sie die Timer-Initialisierung in eine andere (eine Zeile) umwandeln, wird sich das Ergebnis nicht ändern - es wird wie vorher funktionieren und das Programm wird immer noch so einfach sein.

OnTick ist nahtlos von der vierfachen Startfunktion übergegangen

Das ist ein Ja. Die meisten Menschen sind eher daran gewöhnt. Das ist der Hauptgrund.

Ich danke Ihnen, dass Sie der Klärung so viel Aufmerksamkeit gewidmet haben. Ich habe eine Anfrage, den Quellcode der künstlichen OnMarketWatch-Implementierung über Timer hinzuzufügen. In meiner Implementierung muss ich mir die vorherigen Ticks aller Symbole merken und bei jedem Timer-Schritt mit den aktuellen Werten vergleichen. Im Falle einer Abweichung wird ein Ereignis erzeugt, um OnMarketWatch aufzurufen. Und genau dieses Vorgehen erscheint unvernünftig. Mit anderen Worten, wir können OnTimer nicht untätig an den Ausgängen laufen lassen. Wir müssen immer wieder vergleichen. Vielleicht gibt es eine bessere Lösung. Deshalb bitte ich Sie, mir Ihre Variante zu zeigen. Wie würden Sie es tun?


Ich halte Fahrräder mit OnChartEvent immer noch für eine Perversion. Da es erforderlich ist, so viele Charts wie Zeichen in Market Watch zu öffnen.

 
Meine Freunde, es gibt wahrscheinlich eine wirklich paradoxe Situation.
Wenn ich es richtig verstanden habe, sollte ein Signal-Abonnent, der die Hebelwirkung seines Kontos von 1:200 auf 1:500 erhöht, theoretisch mindestens eine Verdoppelung des Eröffnungsvolumens erzielen.
Das Gleiche gilt für die Pfandbelastung; wenn sie erhöht wird, sollten auch die Mengen steigen.
Einer meiner Abonnenten schreibt, dass er/sie die Hebelwirkung von 1:200 auf 1:500 und die Auslastung von 50% auf 90% erhöht hat. Danach änderte sich das Volumen der offenen Positionen jedoch in keine Richtung. Gleichzeitig hätte sein Kontostand dies mehr als zulassen müssen.
Vielleicht habe ich das Kopiersystem nicht richtig verstanden?
 
Artem Prischepa:
...
Hören Sie auf, Fragen im Namen imaginärer (oder fiktiver) Abonnenten zu stellen. Wenn ein Abonnent eine Frage hat, soll er sie selbst stellen. Andernfalls würde ich es als Werbung für das Signal betrachten.