Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 158
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
Wie kann man eine erzwungene Aktualisierung von Indikatoren aus dem OnCalculate-Ereignis heraus auslösen?
Also, wenn nicht behoben (unten sind Probleme, die auftreten können).
Oder per Timer (etwa so).
Also, wenn nicht behoben (unten sind die Probleme, die auftreten können).
Oder mit einer Zeitschaltuhr (was auch immer).
Ich verstehe. )) Haben Sie schon versucht, nach internen Funktionen zu fragen?
Ich verstehe. )) Haben Sie versucht, nach internen Funktionen zu fragen?
Ich nicht, im Allgemeinen ja (ich glaube, MetaDraiver hat SD angeschrieben), und die Frage wurde mehrmals im Forum gestellt.
Ob die Entwickler darauf reagiert haben, weiß ich nicht.
PS kann nützlich sein.
Entwicklung desMulticurrency-Volatilitätsindikators in MQL5
Die Entwicklung eines Mehrwährungsindikators für die Analyse von Preisdivergenzen
Ich glaube, es hätte hier veröffentlicht werden müssen, ich konnte es nicht finden.
Im ersten Fall, wenn ein Fehler auftritt
Zeile 40 von CCanvas canvas; Fehler
ungelöste statische Variable 'CCanvas::m_default_colors'
hinzufügen.
uint CCanvas::m_default_colors[9]={0};
Vor langer Zeitbesprochen, nicht überprüft, was sich geändert hat.
Versuchen wir also, Metadriver zu bekommen. Vielleicht kann er etwas Licht in die Frage bringen, was die Entwickler geantwortet haben. Wolodja...
Versuchen wir also, Metadriver zu bekommen. Vielleicht kann er etwas Licht in die Frage bringen, was die Entwickler geantwortet haben. Wolodja...
Ich habe die Frage nicht ganz verstanden, denn ich habe nicht nach einem regelmäßigen Ticker gefragt. Als würde Stille im Gegenteil ..., kurz gesagt, wir hofften füreinander.
Es gab einen indirekten Fall - bereits nachdem herausgefunden wurde, dass die Abfrage von Daten außerhalb von TERMINAL_MAX_BAR das Auffrischen aller Indikatoren im Diagramm verursacht.
Ich habe meinen Button Chart Reloader überarbeitet und mit der neuen Version an den Service Desk geschickt und in den Kommentaren gefragt, ob ich hoffe, dass er wieder funktioniert... Sie haben nichts gesagt... Ich hatte kein Problem damit... Ich habe einen Film daraus gemacht.
;)
--
Nun, streng genommen ist es eigentlich kein Fehler. Das Terminal stürzt nicht ab, es wird nicht einmal langsamer, es aktualisiert nur die Daten im Diagramm. Ich verstehe, was sie da tun. Etwa: Anfrage außerhalb der vorhandenen Daten -> Terminal versucht, Daten zu laden, gefolgt von der Aktualisierung des Diagramms. Einfach und effizient. Warum ändern, wenn es keine Opfer gibt?
// Was die "Neuberechnung des Indikators von innen" angeht, verstehe ich das Problem nicht. Die Frage ist nicht klar. Intern ist der Indikator sein eigener Master, er berechnet, was er will. Aber wenn es ein externes Signal verwendet, ist es eine andere Sache. Dann drehen wir...
Mann, vielleicht solltest du das nicht.))
Es ist nicht ganz klar, wie prev_calculated speziell das Rendering von Indikatoren beeinflusst.
In meinem Fall erfolgt der Aktualisierungsversuch sowohl durch OnCalculate() als auch durch Timer. Multi-Instrument.
Bei erfolglosem Versuch, Zeilen zu erhalten, wird die Funktion bis zum nächsten Tick oder Timer unterbrochen, es findet kein Zeichnen statt, aber nicht initialisierte (wie es scheint) Werte erscheinen von irgendwoher auf dem Diagramm.
Obwohl in Init() ArrayInitialize(Puffer ,...) vorhanden ist.
Vielleicht habe ich irgendwo einen Fehler. Das passiert eher selten und ist schwer zu erkennen.
Es scheint mir, dass die normale Funktion des forcierten Queuing bei OnCalculate() es ermöglichen würde, das Tamburinspiel in Multi-Instrument-Indizes für Charts mit seltenen Ticks zu minimieren.
Übrigens, das steht in der Hilfe ;)
Все необходимые расчеты пользовательских индикаторов необходимо размещать в предопределенной функции OnCalculate().
PS. Ich habe das mit dem "Chip" verstanden.
PSPS/ Ich habe das Gefühl, dass es in dem gegebenen Fall zuverlässiger ist, die Berechnung der Werte ohne Verwendung eines Indikators für einen EA zu verwenden. Und separat ein Indikator für die Visualisierung.
Aber dann müsste ich das Gleiche zweimal berechnen.
Ich habe die Frage nicht ganz verstanden, denn ich habe den regulären Zeckenrufer nicht darum gebeten. Ich dachte, Silent würde..., kurz gesagt, wir haben uns aufeinander verlassen.
...Ich meine dies.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Fehler, Irrtümer, Fragen
MetaDriver, 2013.08.03 17:55
"Wenn Sie einen MetaTrader 5 als Basis verwenden möchten, sollten Sie diesen als Referenz verwenden.
Für meine Zwecke ist das nicht immer geeignet, aber im Allgemeinen würden damit viele "Wochenendprobleme" beseitigt werden.
FürExperten für Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien.
Wanzen, Wanzen, Fragen
MetaDriver, 2013.08.03 18:02
Ich stimme zu.
Ein "Befehl", um alle prev_calculated für das ausgewählte Symbol zwangsweise zu löschen, wäre ebenfalls nützlich. Mit anschließender Zeckenerzeugung wäre das eine gute Kombination.
Während des visuellen Tests, wenn der Indikator im Expert Advisor neu initialisiert wird, wird der Indikator mit den alten Einstellungen weiterhin auf dem Chart im Tester angezeigt (tatsächlich wird jedes Mal bei der Neuinitialisierung eine weitere "parallele Linie" hinzugefügt). Ich habe versucht, jedes Mal IndicatorRelease zu machen, bevor ich einen neuen Handle bekomme - es hilft nicht.
Neue Griffe im Code erhalten.
Ich habe die bughelper-Variable eingeführt, weil der Indikator sich nicht selbst neu berechnen würde, ohne seine Eingabeparameter zu ändern.
Das ist es, was ich meine.
Ich habe das Problem der Neuberechnung gelöst, indem ich die Daten außerhalb von TERMINAL_MAX_BAR angefordert habe.
Und da der Chart generell aktualisiert wird, spielt es keine Rolle, ob die Abfrage aus dem Indikator heraus oder von einem externen Programm erfolgt, Hauptsache, das (abfragende) Programm fordert Daten für genau dieses Symbol und diesen Zeitrahmen an.
Ich bin noch nicht auf Fälle gestoßen, in denen ich das Diagramm "auf der Maschine" aktualisieren musste. Ich bin mit meiner Schaltfläche völlig zufrieden // siehe den Link oben.
Bei der Tickgenerierung (ohne Chartaktualisierung) ist das Problem nicht gelöst, aber ich habe es auch nicht großartig gelöst - es kann in den meisten Fällen auf viele Arten vermieden werden (meist mit einem Timer).
IndicatorRelease(firstHandle);
ERR_FUNCTION_NOT_ALLOWED
4014
Systemfunktion darf nicht aufgerufen werden
Bitte geben Sie an, was der Grund dafür sein könnte, dassIndicatorRelease() nicht aufgerufen wird?