Sie müssenObjectsDeleteAll in OnDeinit ausführen - Löschen nach Präfix(in Ihrem Fall ist das Präfix "HLine")
intObjectsDeleteAll(
long chart_id, // идентификатор графикаconststring prefix, // префикс имени объектаint sub_window=-1, // индекс окнаint object_type=-1// тип объекта для удаления
);
intObjectsDeleteAll(
long chart_id, // идентификатор графикаconststring HLine, // префикс имени объектаint sub_window=-1, // индекс окнаint object_type=-1// тип объекта для удаления
);
Hier habe ich es getan, aber es lässt sich immer noch nicht löschen.
Was ist der Grund dafür, dass der Kurzname im Unterfenster oben links nicht angezeigt wird?
Außerdem, wenn ich einen Indikator auf den Chart lade, funktioniert die zweite Kopie nicht mehr - OnInit() = nichts wird ausgelöst und es wird nicht gedruckt. Aber wenn ich "Eingabeparameter" auf "andere" ändere, funktioniert es
#property indicator_separate_window#property indicator_plots0inputint MASlow = 21; // Период медленной МАinputint MAFast = 8; // Период быстрой МА//+------------------------------------------------------------------+string prog_name,short_name;
//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+intOnInit(void)
{
prog_name=MQLInfoString(MQL_PROGRAM_NAME);
short_name="=Set ("+(string)MASlow+"/"+(string)MAFast+")";
IndicatorSetString(INDICATOR_SHORTNAME,short_name);
Print("INIT_SUCCEEDED");return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
//---//--- return value of prev_calculated for next callreturn(rates_total);
}
Was ist der Grund dafür, dass der Kurzname im Unterfenster oben links nicht angezeigt wird?
Außerdem, wenn ich einen Indikator auf den Chart lade, funktioniert die zweite Kopie nicht mehr - OnInit() = nichts wird ausgelöst und es wird nicht gedruckt. Aber wenn ich "Eingabeparameter" auf "andere" ändere, funktioniert es
---
Was ist falsch, in mt4 dieser Code funktioniert.
Vielleicht liegt es daran, dass er zu kurz ist? Kein Mapping, keine Puffer... Warum eine zweite Kopie eines solchen Indikators erstellen, damit das Terminal willkürlich wird...
Was ist der Grund dafür, dass der Kurzname im Unterfenster oben links nicht angezeigt wird?
Außerdem, wenn ich einen Indikator auf den Chart lade, funktioniert die zweite Kopie nicht mehr - OnInit() = nichts wird ausgelöst und es wird nicht gedruckt. Aber wenn ich "Eingabeparameter" auf "andere" ändere, funktioniert es
---
Was ist falsch, dieser Code funktioniert in mt4.
Ich hatte auch ein Problem damit, aber ich habe den Indikator gebaut, alles ist in Ordnung.
etwas fehlt - wahrscheinlich eine Art von Eigenschaft, auch mit diesem konfrontiert, aber hier habe ich den Indikator skizziert, alles ist OK
können Sie es so kommentieren, dass es darauf achtet, wann es aufhört, den Indikatornamen in das Unterfenster zu schreiben... aber faul
Die Daten werden angezeigt, aber woher, wenn die FunktionOnInit() nicht funktioniert hat? Wir werfen eine Kopie auf das Diagramm und OnInit() kann zufällig ausgelöst werden, aber wenn es eine weitere Kopie ist, war's das, es gibt nicht einmal einen Ausdruck. Aber wenn wir die Eingabeparameter ändern, dann funktioniert es.
In OnDeinit sollten SieObjectsDeleteAll ausführen - Löschen nach Präfix (in Ihrem Fall ist das Präfix "HLine")
In welche Zeile soll "HLine" geschrieben werden?
In welche Zeile soll "HLine" geschrieben werden?
Was ist nicht klar?
Forum für Handel, automatisierte Handelssysteme und Strategietests
FAQ von Anfängern MQL5 MT5 MetaTrader 5
Vladimir Karputov, 2021.09.10 15:53
Sie müssenObjectsDeleteAll in OnDeinit ausführen - Löschen nach Präfix(in Ihrem Fall ist das Präfix "HLine")
Was genau ist nicht klar?
Hier habe ich es getan, aber es lässt sich immer noch nicht löschen.
das Präfix enthält die Namen der grafischen Beschriftungen
wissen Sie, was Präfix bedeutet?
das Präfix enthält die Namen der grafischen Beschriftungen
wissen Sie, was Präfix bedeutet?
Ich kenne mich mit MQL überhaupt nicht aus.... Ich dachte, ich korrigiere einfach ein paar Zeilen und das war's.
Ich weiß überhaupt nichts über MQLs.... Ich dachte, ich korrigiere einfach ein paar Zeilen und das war's.
der obige Code sollte helfen, ansonsten sehen Sie sich das Präfix an, mit dem Objekte erstellt werden
Was ist der Grund dafür, dass der Kurzname im Unterfenster oben links nicht angezeigt wird?
Außerdem, wenn ich einen Indikator auf den Chart lade, funktioniert die zweite Kopie nicht mehr - OnInit() = nichts wird ausgelöst und es wird nicht gedruckt. Aber wenn ich "Eingabeparameter" auf "andere" ändere, funktioniert es
---
Was ist falsch, in mt4 dieser Code funktioniert.
Was ist der Grund dafür, dass der Kurzname im Unterfenster oben links nicht angezeigt wird?
Außerdem, wenn ich einen Indikator auf den Chart lade, funktioniert die zweite Kopie nicht mehr - OnInit() = nichts wird ausgelöst und es wird nicht gedruckt. Aber wenn ich "Eingabeparameter" auf "andere" ändere, funktioniert es
---
Was ist falsch, in mt4 dieser Code funktioniert.
Vielleicht liegt es daran, dass er zu kurz ist? Kein Mapping, keine Puffer... Warum eine zweite Kopie eines solchen Indikators erstellen, damit das Terminal willkürlich wird...
Was ist der Grund dafür, dass der Kurzname im Unterfenster oben links nicht angezeigt wird?
Außerdem, wenn ich einen Indikator auf den Chart lade, funktioniert die zweite Kopie nicht mehr - OnInit() = nichts wird ausgelöst und es wird nicht gedruckt. Aber wenn ich "Eingabeparameter" auf "andere" ändere, funktioniert es
---
Was ist falsch, dieser Code funktioniert in mt4.
Ich hatte auch ein Problem damit, aber ich habe den Indikator gebaut, alles ist in Ordnung.
Ich könnte es auskommentieren, um herauszufinden, wann es aufhört, den Namen des Indikators in das Unterfenster zu schreiben ... aber zu faul
etwas fehlt - wahrscheinlich eine Art von Eigenschaft, auch mit diesem konfrontiert, aber hier habe ich den Indikator skizziert, alles ist OK
können Sie es so kommentieren, dass es darauf achtet, wann es aufhört, den Indikatornamen in das Unterfenster zu schreiben... aber faul
Die Daten werden angezeigt, aber woher, wenn die FunktionOnInit() nicht funktioniert hat? Wir werfen eine Kopie auf das Diagramm und OnInit() kann zufällig ausgelöst werden, aber wenn es eine weitere Kopie ist, war's das, es gibt nicht einmal einen Ausdruck. Aber wenn wir die Eingabeparameter ändern, dann funktioniert es.
---
Was ist die Lösung, warum OnInit nicht funktioniert?