Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Wenn es sich bei Ihrer Uhr um einen Experten (und nicht um einen Indikator) handelt, ist sie höchstwahrscheinlich mit einer Schleife versehen, so dass sie keine Probleme hat, Informationen über mehrere Symbole zu erhalten. Das ist das, worüber ich schon früher geschrieben habe, dass es wirklich kein großes Problem mit Ticks in Expert Advisor gibt, weil es in einer Schleife ausgeführt werden kann. Aber mit einem Indikator wird diese Zahl nicht funktionieren.
Was die unterschiedlichen Betriebssysteme angeht, so ist mir das immer noch ein Rätsel. Wie ich oben geschrieben habe, funktioniert es bei mir unter 7, aber bei anderen Leuten funktioniert es aus irgendeinem Grund nicht. Wahrscheinlich hat das etwas mit den Zugriffsrechten zu tun...
Übrigens, was die "Ersatzbibliotheken" betrifft, versuchen Sie, die Dateien user32 und kernel32 von WinXP(2003) zu nehmen und sie in den Ordner Experts\libraries auf dem Computer zu stecken, auf dem Vista(2008) installiert ist. Und wenn es funktioniert? :) ...obwohl ich das bezweifle...
Ich werde direkt auf die Ticks sagen, ich bin auf "Ihrer Seite", sondern als für die Uhr, durch Ihre Antwort zu beurteilen, haben Sie nicht verstanden, mein Gedanke, ich werde mit dem Code zu versuchen:
int init()
{
ObjectCreate("ServerTime", OBJ_LABEL, 0,0,0,0,0,0;)
ObjectSet("ServerTime", OBJPROP_CORNER, 3);
ObjectSet("ServerTime", OBJPROP_XDISTANCE, 10);
ObjectSet("ServerTime", OBJPROP_YDISTANCE, 37);
ObjectSetText("ServerTime", "", 20, "Arial", Green);
Rückkehr;
}
int start()
{
...
Rückkehr;
}
Ich will keine Ressourcen schleifen ... Das heißt, alle Ticks aus allen Notierungen in einem Diagramm zu kombinieren?
Wie kommen die Herren darauf, dass es sich hier um Aggression handelt? Es ist lediglich eine Erinnerung an die Grundsätze der Höflichkeit. Bevor man etwas anbietet, muss man eine Gegenleistung erbringen. Wenn Sie nichts haben, können Sie nur fragen, und das ist die Wahrheit.
Ich habe nicht viel Erfahrung mit 64-Bit-Systemen, aber ich bin sehr an diesem Thema interessiert, aber da ich hier nicht helfen kann, muss ich Leute fragen, die sich auskennen. Ich sehe darin nichts Beschämendes.
Wie kommen Sie, meine Herren, darauf, dass es sich hier um Aggression handelt? Es ist lediglich eine Erinnerung an die Grundsätze der Höflichkeit. Bevor man etwas anbietet, muss man eine Gegenleistung erbringen. Wenn Sie nichts haben, können Sie nur fragen, und das ist die Wahrheit.
Ich habe nicht viel Erfahrung mit 64-Bit-Systemen, aber ich bin sehr an diesem Thema interessiert, aber da ich hier nicht helfen kann, muss ich Leute fragen, die sich auskennen. Ich kann darin nichts Falsches erkennen.
Ich schätze, ich habe mich von meinen Emotionen mitreißen lassen, aber Sie sind ein Moderator und passen auf, was Sie sagen, danke für die Bemerkung, und ich werde versuchen, meinen Eifer zu zügeln.
Auf Wiedersehen. Alexander.
Hier ist der Gedanke """", ob diese alle Ticks aufaddiert und auf meinen Expert Advisor oder das Fenster, in dem der Expert Advisor arbeitet, angewendet werden können""" und haben am Ende viel mehr Häkchen als ein Angebot für nur ein Paar.
Ich will keine Ressourcen schleifen ... Das heißt, Sie wollen alle Ticks von allen Kursen in einem Diagramm zusammenfassen?
Ein EA reagiert nur auf seine eigenen Ticks, Sie können also nichts "hinzufügen". Es gibt nur zwei Möglichkeiten: Entweder Sie stellen einen Timer ein (wie ich vorgeschlagen habe), oder Sie lassen parallel einen EA in einer Schleife auf einem anderen Chart laufen, der Ihren EA "tickt". Und in diesem EA mit Schleife können Sie die Bedingungen festlegen, unter denen er "tickt". Zum Beispiel, wenn sich der Wert von TimeCurrent() geändert hat, wie in Ihrem Fall. Aber auch hier sehe ich keinen Sinn darin, zusätzliche EA zu haben, wenn der ursprüngliche EA (d. h. Ihre Uhr) das Gleiche tun kann.
Wie auch immer, hier ist die endgültige Version der Funktion:
// push ebp; move ebp,esp; push 01; push 02; push MT4InternMsg; push hWnd; mov eax,PostMsgAddr; call eax; pop ebp; ret 0010;
Soweit ich das verstehe, verwenden Sie den Befehl PostMessageA(hwnd, RegisterWindowMessageA("MetaTrader4_Internal_Message"), 2, 1). Dieser Befehl emuliert Ticks für den Expert Advisor (gemäß der Beschreibung in WinUser32.h). Bei Indikatoren werden die Ticks nicht emuliert, und folglich wird der Indikator nicht aktualisiert. Leider habe ich kein WinXP zum Testen, aber wenn die Ticks für den Indikator in XP emuliert werden, bin ich überrascht.
Ich habe auch Ihren Algorithmus überprüft
unter dem Debugger VisualStudio und das Ergebnis, das ich im TimerCode-Array erhielt, entsprach überhaupt nicht den erwarteten Ergebnissen. Sind Sie sicher, dass dieser Algorithmus keine Fehler enthält? Ich kann Ihnen den Code und ein Bildschirmfoto des Ergebnisses zur Verfügung stellen. Wenn Sie möchten, können wir das im Detail besprechen.
Obwohl dieses Thema jetzt nicht sehr aktuell ist, denke ich, dass es immer noch Leute gibt, die es nicht eilig haben, zu neuen Builds zu wechseln :) Wenn also jemand keinen Tick-Timer in Win7/Win8 hat, müssen Sie entweder das DEP-Tool deaktivieren oder diese Funktion hinzufügen:
Und am Ende diese Variante: