prostotrader: Bis Sie Ihre Daten in der Funktion OnCalculate erhalten, sind Sie schon aus der Hose!
Sie verstehen nicht: Ich habe Indikatoren und der Zweck des Indikators ist die Visualisierung. In diesem Fall besteht kein Bedarf an einem übermäßig "zuckenden" Glas. Ich sage mehr - das Glas ist hier sogar unerwünscht.
JSC ''Brokerage House ''OTKRYTIE'', MetaTrader 5, Real
Korrelation zwischen der Trendrichtung des RTS-9.16, dem Gesamtvolumen der offenen Positionen und der Differenz zwischen dem Volumen der aktuellen Kaufaufträge und dem Volumen der aktuellen Verkaufsaufträge
Für den Open Interest-Indikator habe ich eine kleine Änderung vorgenommen: Wenn prev_calculate==0 ist, wird der Indikator nach dem ersten Start seine Indikatorpuffer nicht neu initialisieren. Was bekomme ich: zum Beispiel, Sie befestigen Indikator zu einem Diagramm, der Indikator arbeitet für einige Zeit und plötzlich prev_calculate==0 (vielleicht gab es einen Verbindungsfehler, oder etwas geschah mit der Geschichte) - in diesem Fall wird der Indikator nicht reinitialisieren seine Indikator-Puffer und es wird weiterhin arbeiten, als wäre nichts passiert.
Umsetzung:
im Bereich der Deklaration der globalen Variablen des Programms gibt es eine Variable"StartDate":
double BufferMinDown[];
//---datetime StartDate=0;//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+intOnInit()
beim ersten Start (bei prev_calculated==0) wird der Wert der Variablen "StartDate" überprüft: wenn ihr Wert kleiner ist als D'2015.01.01 00:00' - dies ist der erste Start des Indikators, und der Variablen "StartDate" wird die letzte bekannte Serverzeit zugewiesen
Hallo, ich habe noch eine Frage zur Verwendung der Konstanten SYMBOL_SESSION_SELL_ORDERS_VOLUME und SYMBOL_SESSION_INTEREST. Wenn Sie den in diesem Thread geposteten Indikator verwenden, werden die Daten zu diesen Konstanten geplündert. Um ihre Verwendung in der Historie zu testen, sollten Sie einen Expert Advisor erstellen. Wenn diese Konstanten über SymbolInfoDouble(Symbol(),SYMBOL_SESSION_BUY_ORDERS_VOLUME) nicht in OnCalculate() empfangen werden, ist die Ausgabe Null.
Ich persönlich möchte einen einfachen Weg gehen, ohne den Code zu sehr zu verkomplizieren. Kann sie nur für den Indikator bzw. nur in OnCalculate() abgefragt werden, und kann sie nicht in der Historie abgefragt werden, da die Daten nur für den aktuellen Balken abgefragt werden können?
Bitte antworten Sie in diesem Thema und verschieben Sie die Nachricht nicht, da es unmöglich ist, die Antwort später zu finden, zumal die Frage zum Thema gehört.
Ich denke, ich verstehe die Antwort auf meine Frage und den Titel des Themas, ich lief die EA in Echtzeit, alles funktioniert auf die Geschichte nein. Die Frage, wie man die Werte der OI und das Volumen der Kauf-/Verkaufsaufträge in der Historie erhält, ist also beantwortet - auf keinen Fall...
Warum tun Sie das überhaupt?
Ich vergleiche zwei Indikatoren für Börseninstrumente:
Ich vergleiche zwei Indikatoren für Börseninstrumente:
Das ist klar, aber wofür sind diese beiden Karten?
Was werden Sie mit ihnen machen?
Das ist verständlich, aber wozu dienen diese beiden Karten?
Was werden SIE mit ihnen machen?
Hier gibt es zwei Antworten (Sie können sie nach dem Konzept von UND, ODER, ODER ODER betrachten - ganz nach Ihrem Geschmack):
Hier gibt es zwei Antworten (Sie können sie nach dem Konzept von UND, ODER, ODER ODER betrachten - ganz nach Ihrem Geschmack):
Bis Sie Ihre Daten in der Funktion OnCalculate erhalten, sind Sie schon aus der Hose!
Mehr konnte nicht erfasst werden, da die Anzeigewerte zurückgesetzt werden, wenn die Verbindung unterbrochen wird:
Screenshots der MetaTrader-Handelsplattform
RTS-9.16, M1, 2016.09.12
JSC ''Brokerage House ''OTKRYTIE'', MetaTrader 5, Real
Korrelation zwischen der Trendrichtung des RTS-9.16, dem Gesamtvolumen der offenen Positionen und der Differenz zwischen dem Volumen der aktuellen Kaufaufträge und dem Volumen der aktuellen Verkaufsaufträge
Für den Open Interest-Indikator habe ich eine kleine Änderung vorgenommen: Wenn prev_calculate==0 ist, wird der Indikator nach dem ersten Start seine Indikatorpuffer nicht neu initialisieren. Was bekomme ich: zum Beispiel, Sie befestigen Indikator zu einem Diagramm, der Indikator arbeitet für einige Zeit und plötzlich prev_calculate==0 (vielleicht gab es einen Verbindungsfehler, oder etwas geschah mit der Geschichte) - in diesem Fall wird der Indikator nicht reinitialisieren seine Indikator-Puffer und es wird weiterhin arbeiten, als wäre nichts passiert.
Umsetzung:
im Bereich der Deklaration der globalen Variablen des Programms gibt es eine Variable"StartDate":
beim ersten Start (bei prev_calculated==0) wird der Wert der Variablen "StartDate" überprüft: wenn ihr Wert kleiner ist als D'2015.01.01 00:00' - dies ist der erste Start des Indikators, und der Variablen "StartDate" wird die letzte bekannte Serverzeit zugewiesen
ansonsten wird einfach "rates_total" zurückgegeben.
Hallo, ich habe noch eine Frage zur Verwendung der Konstanten SYMBOL_SESSION_SELL_ORDERS_VOLUME und SYMBOL_SESSION_INTEREST. Wenn Sie den in diesem Thread geposteten Indikator verwenden, werden die Daten zu diesen Konstanten geplündert. Um ihre Verwendung in der Historie zu testen, sollten Sie einen Expert Advisor erstellen. Wenn diese Konstanten über SymbolInfoDouble(Symbol(),SYMBOL_SESSION_BUY_ORDERS_VOLUME) nicht in OnCalculate() empfangen werden, ist die Ausgabe Null.
Ich persönlich möchte einen einfachen Weg gehen, ohne den Code zu sehr zu verkomplizieren. Kann sie nur für den Indikator bzw. nur in OnCalculate() abgefragt werden, und kann sie nicht in der Historie abgefragt werden, da die Daten nur für den aktuellen Balken abgefragt werden können?
Bitte antworten Sie in diesem Thema und verschieben Sie die Nachricht nicht, da es unmöglich ist, die Antwort später zu finden, zumal die Frage zum Thema gehört.