"Das Entfernen eines Indikators aus einem Diagramm bedeutet nicht, dass auch der Berechnungsteil des Indikators aus dem Speicher des Terminals entfernt wird. Um den Indikator-Handle freizugeben, verwenden Sie die Funktion IndicatorRelease()."
Ja, Vladimir, das habe ich schon einmal getan und darüber geschrieben, aber das Ergebnis ist immer noch das gleiche.
Ich habe mehr als eine Stunde lang an diesem Problem gearbeitet. Ich wollte den ZigZagColor-Indikator erstellen und beim Start des Expert Advisors auf dem Chart anzeigen. Dies geschah in int OnInit:
Der Indikator wird jedoch nicht entfernt. Ich habe alles in Ordnung gebracht. Ich habe den Griff gereinigt und die Löschfunktion angewendet. Ich frage mich, was der Grund dafür ist, dass es sich nicht deinstallieren lässt.
Entfernen Sie den Indikator aus dem Diagramm mit der Funktion
ChartIndicatorDelete(
long chart_id, // Diagramm-ID
int sub_window // Nummer des Unterfensters
const string indicator_shortname // Kurzname des Indikators
);
Danke, Alexey, ich werde es morgen mit klarem Kopf versuchen, die Informationen, die ich erhalten habe, verwirren mich bereits. Wie man so schön sagt: Morgen früh schlafe ich besser!
Jetzt habe ich noch etwas, das mich sehr verwundert und überrascht hat. Ich habe versucht, das Diagramm mit dem von Vladimir Karputov entwickelten Skript zu löschen, aber dieses Skript hat absolut alles gelöscht, außer dem benutzerdefinierten Indikator ZigzagColor! Ich habe versucht, ein einfaches ZigZag mit demselben Skript zu entfernen, aber auch das klappt nicht! Es ist ein Rätsel...
Danke, Alexey, morgen werde ich es mit klarem Kopf versuchen, denn ich stecke schon in einem Informationswirrwarr. Wie das Sprichwort sagt: Morgenstund hat Gold im Mund!
Nun gibt es noch etwas, das mich sehr verwundert und überrascht hat. Ich habe versucht, das Diagramm mit dem von Vladimir Karputov entwickelten Skript zu löschen, aber dieses Skript hat absolut alles gelöscht, außer dem benutzerdefinierten Indikator ZigzagColor! Ich habe versucht, ein einfaches ZigZag mit demselben Skript zu entfernen, aber auch das klappt nicht! Es ist ein Rätsel...
Mit freundlichen Grüßen, Vladimir.
Versuchen Sie dieses Skript
#property copyright"Copyright 2020, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//---int window=ChartWindowFind(0,"ZigzagColor");
bool res=ChartIndicatorDelete(0,window,"ZigzagColor");
//--- проанализируем результат вызова ChartIndicatorDelete()if(!res)
{
PrintFormat("Не удалось удалить индикатор ZigzagColor с окна #%d. Код ошибки %d",
window,GetLastError());
}
}
Kurzname ZigzagColor - und das ist der Standard, wenn Sie ihn anders einstellen, müssen Sie diese Ziffern schreiben
und so sollte es auch geschrieben werden
oder Sie können den Indikator selbst ändern - geben Sie einen einfacheren Namen
//--- name for DataWindow and indicator subwindow labelIndicatorSetString(INDICATOR_SHORTNAME,"ZigZag("+(string)InpDepth+","+(string)InpDeviation+","+(string)InpBackstep+")");
PlotIndexSetString(0,PLOT_LABEL,"ZigzagColor");
//--- set an empty value
zum Beispiel
//--- name for DataWindow and indicator subwindow labelIndicatorSetString(INDICATOR_SHORTNAME,"ZigZag");
PlotIndexSetString(0,PLOT_LABEL,"ZigzagColor");
//--- set an empty value
-----------------------------------------------
Ich habe Ihnen bereits das Skript gezeigt - wenn dieses Skript an ein Diagramm angehängt wird und Sie keinen Indikatornamen angeben, funktioniert es, ohne einen Indikator zu löschen - aber es wird im Expert Advisor-Fenster schreiben, welche Indikatoren verfügbar sind
https://c.mql5.com/3/332/IndicatorDelete.mq5
Das habe ich
CS 003:41:36.549 IndicatorDelete (XAUUSD,M30) EWO(5,35)
DF 003:41:36.604 IndicatorDelete (XAUUSD,M30) ZigZag(12,5,3)
KR 003:41:36.626 IndicatorDelete (XAUUSD,M30) LeMan_BrainTrend1Sig
FE 003:41:36.646 IndicatorDelete (XAUUSD,M30) Hline VSC
RN 003:41:36.666 IndicatorDelete (XAUUSD,M30) Pivot Lines TimeZone
KG 003:41:36.686 IndicatorDelete (XAUUSD,M30) Line through two fractals
DL 003:41:36.706 IndicatorDelete (XAUUSD,M30) sanbox
Коды ошибок и предупреждений - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
oder Sie können auch den Indikator selbst ändern, indem Sie ihm einen einfacheren Namen geben
wie diese
-----------------------------------------------
Ich habe das Skript bereits heruntergeladen - wenn dieses Skript an ein Diagramm angehängt wird und Sie keinen Indikatornamen angeben, wird es funktionieren, ohne einen Indikator zu löschen - aber es wird im Expert Advisor-Fenster schreiben, welche Indikatoren vorhanden sind
https://c.mql5.com/3/332/IndicatorDelete.mq5
Das ist es, was ich habe!
Hallo! Ich habe Ihr Skript implementiert. Auf der Registerkarte Experten erscheinen zwei Indikatoren: Volumen und ZigZag (80,20,0). Es ist tatsächlich so, nur der ZigZag-Indikator wird aus irgendeinem Grund ohne Farbe geschrieben.
Aleksey, wandte Ihr Skript an. Ich habe den Fehlercode 4115.
Mit freundlichen Grüßen, Vladimir.
Ich muss vorsichtiger sein.
boolChartIndicatorDelete(
long chart_id, // идентификатор графика int sub_window // номер подокна conststringindicator_shortname // короткое имя индикатора
);
Indikatorname und Indikatorkurzname stimmen oft nicht überein.
Hallo! Ich habe Ihr Skript angewendet. Auf der Registerkarte Experten erscheinen zwei Indikatoren: Volumen und ZigZag (80,20,0). Es ist tatsächlich so, nur der ZigZag-Indikator wird aus irgendeinem Grund ohne Farbe geschrieben.
Mit freundlichen Grüßen, Vladimir.
Sie müssen es also so schreiben: ZigZag (80,20,0).
Normalerweise lösche ich das Handle und den Berechnungsteil in OnDeinit, und alles wird entfernt. Das Objekt ist kein Indikator.
https://www.mql5.com/ru/docs/chart_operations/chartindicatordelete
"Das Entfernen eines Indikators aus einem Diagramm bedeutet nicht, dass auch der Berechnungsteil des Indikators aus dem Speicher des Terminals entfernt wird. Um den Indikator-Handle freizugeben, verwenden Sie die Funktion IndicatorRelease()."
Ja, Vladimir, das habe ich schon einmal getan und darüber geschrieben, aber das Ergebnis ist immer noch das gleiche.
Mit freundlichen Grüßen, Vladimir.
Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests
Neuer Handelsroboter
MrBrooklin, 2020.09.28 10:38
Ich habe mehr als eine Stunde lang an diesem Problem gearbeitet. Ich wollte den ZigZagColor-Indikator erstellen und beim Start des Expert Advisors auf dem Chart anzeigen. Dies geschah in int OnInit:
Der Indikator wurde erstellt und angezeigt. Nun muss der Indikator gelöscht werden, nachdem der Expert Advisor entfernt wurde. Ich schreibe es:
Der Indikator wird jedoch nicht entfernt. Ich habe alles in Ordnung gebracht. Ich habe den Griff gereinigt und die Löschfunktion angewendet. Ich frage mich, was der Grund dafür ist, dass es sich nicht deinstallieren lässt.
Mit freundlichen Grüßen, Vladimir.
Entfernen Sie den Indikator aus dem Diagramm mit der Funktion
ChartIndicatorDelete(
long chart_id, // Diagramm-ID
int sub_window // Nummer des Unterfensters
const string indicator_shortname // Kurzname des Indikators
);
Danke, Alexey, ich werde es morgen mit klarem Kopf versuchen, die Informationen, die ich erhalten habe, verwirren mich bereits. Wie man so schön sagt: Morgen früh schlafe ich besser!
Jetzt habe ich noch etwas, das mich sehr verwundert und überrascht hat. Ich habe versucht, das Diagramm mit dem von Vladimir Karputov entwickelten Skript zu löschen, aber dieses Skript hat absolut alles gelöscht, außer dem benutzerdefinierten Indikator ZigzagColor! Ich habe versucht, ein einfaches ZigZag mit demselben Skript zu entfernen, aber auch das klappt nicht! Es ist ein Rätsel...
Mit freundlichen Grüßen, Vladimir.
Danke, Alexey, morgen werde ich es mit klarem Kopf versuchen, denn ich stecke schon in einem Informationswirrwarr. Wie das Sprichwort sagt: Morgenstund hat Gold im Mund!
Nun gibt es noch etwas, das mich sehr verwundert und überrascht hat. Ich habe versucht, das Diagramm mit dem von Vladimir Karputov entwickelten Skript zu löschen, aber dieses Skript hat absolut alles gelöscht, außer dem benutzerdefinierten Indikator ZigzagColor! Ich habe versucht, ein einfaches ZigZag mit demselben Skript zu entfernen, aber auch das klappt nicht! Es ist ein Rätsel...
Mit freundlichen Grüßen, Vladimir.
Versuchen Sie dieses Skript
Kurzname ZigzagColor - und das ist der Standard, wenn Sie ihn anders einstellen, müssen Sie diese Ziffern schreiben
und das ist genau das, was Sie eingeben müssen
Kurzname ZigzagColor - und das ist der Standard, wenn Sie ihn anders einstellen, müssen Sie diese Ziffern schreiben
und so sollte es auch geschrieben werden
oder Sie können den Indikator selbst ändern - geben Sie einen einfacheren Namen
zum Beispiel
-----------------------------------------------
Ich habe Ihnen bereits das Skript gezeigt - wenn dieses Skript an ein Diagramm angehängt wird und Sie keinen Indikatornamen angeben, funktioniert es, ohne einen Indikator zu löschen - aber es wird im Expert Advisor-Fenster schreiben, welche Indikatoren verfügbar sind
https://c.mql5.com/3/332/IndicatorDelete.mq5
Das habe ich
Versuchen Sie dieses Skript
Guten Tag zusammen!
Aleksey, ich habe Ihr Skript angewendet. Ich habe den Fehlercode 4115. Was das bedeutet, habe ich im Handbuch gefunden:
ERR_CHART_INDICATOR_CANNOT_DEL
4115
Fehler beim Löschen des Indikators aus dem Diagramm
Mit freundlichen Grüßen, Vladimir.
oder Sie können auch den Indikator selbst ändern, indem Sie ihm einen einfacheren Namen geben
wie diese
-----------------------------------------------
Ich habe das Skript bereits heruntergeladen - wenn dieses Skript an ein Diagramm angehängt wird und Sie keinen Indikatornamen angeben, wird es funktionieren, ohne einen Indikator zu löschen - aber es wird im Expert Advisor-Fenster schreiben, welche Indikatoren vorhanden sind
https://c.mql5.com/3/332/IndicatorDelete.mq5
Das ist es, was ich habe!
Hallo! Ich habe Ihr Skript implementiert. Auf der Registerkarte Experten erscheinen zwei Indikatoren: Volumen und ZigZag (80,20,0). Es ist tatsächlich so, nur der ZigZag-Indikator wird aus irgendeinem Grund ohne Farbe geschrieben.
Mit freundlichen Grüßen, Vladimir.
Versuchen Sie dieses Skript
Guten Tag zusammen!
Aleksey, wandte Ihr Skript an. Ich habe den Fehlercode 4115.
Mit freundlichen Grüßen, Vladimir.
Ich muss vorsichtiger sein.
Indikatorname und Indikatorkurzname stimmen oft nicht überein.
Hallo! Ich habe Ihr Skript angewendet. Auf der Registerkarte Experten erscheinen zwei Indikatoren: Volumen und ZigZag (80,20,0). Es ist tatsächlich so, nur der ZigZag-Indikator wird aus irgendeinem Grund ohne Farbe geschrieben.
Mit freundlichen Grüßen, Vladimir.
Sie müssen es also so schreiben: ZigZag (80,20,0).
In diesem Fall wird sie definitiv gelöscht.
-----------------
aber ohneFarbe
denn so steht es im Indikator geschrieben
Sie müssen es so schreiben - ZigZag (80,20,0)
Der ZigZag wird definitiv gelöscht.
-----------------
aber ohneFarbe
denn so steht es im Indikator geschrieben
Wenn Sie die Einstellungen ändern, müssen Sie die Nummern, die Sie im Indikator angegeben haben, hinzufügen.
zum Beispiel