Money_Maker: Vielen Dank, das wird schneller gehen, deshalb habe ich mich auch für "lippy" entschieden. Besonderen Dank für die Zeichencodes, jetzt muss ich nicht mehr danach suchen.
Ich habe geschrieben, um Kurznamen für Zeichen zu ersetzen, Zeilen in Buchstaben zu unterteilen und die Ersetzung vorzunehmen.
nein, ist es nicht ... die Bedeutung der Dekodierung ist folgende: jeder russische Buchstabe hat einen Wert, z.B. "a", der eine Kombination aus \u0430
ist, um zu konvertieren, müssen Sie bestimmen, welcher Buchstabe diesen oder jenen Wert hat und dann diese Werte durch Buchstaben ersetzen ... Es scheint möglich zu sein, durch KernelDll, aber dieser Weg ist sehr verwirrend, zumindest hat es nicht für mich, nicht viele Informationen und es sieht aus wie es ist nicht ganz richtig ... aber eine benutzerdefinierte Funktion ist der einzige einfache Weg aus meiner Meinung nach
Guten Tag. Ich habe ein kleines Problem bei der Verwendung des Indikators beim Wechsel zu einem anderen Zeitrahmen, beginnt das Terminal zu verlangsamen, und manchmal bleibt es ganz hängen.
Der Indikator ist das Bollinger Band mit dem angezeigten Abweichungswert. Ich weiß nicht, was genau im Code die Leistungseinbußen verursacht.
Kann mir jemand sagen, wie solche Probleme im Allgemeinen gelöst werden, oder wo ich anfangen soll?
Guten Tag. Ich habe ein kleines Problem bei der Verwendung des Indikators beim Wechsel zu einem anderen Zeitrahmen, beginnt das Terminal zu verlangsamen, und manchmal bleibt es ganz hängen.
Der Indikator ist das Bollinger Band mit dem angezeigten Abweichungswert. Ich weiß nicht, was genau im Code die Leistungseinbußen verursacht.
Kann mir jemand sagen, wie solche Probleme im Allgemeinen gelöst werden, oder wo ich anfangen soll?
Höchstwahrscheinlich gibt es eine große Periode für die Berechnung, das ist, warum es hängt, ich glaube nicht, dass Sie für 5000 Bars in der Geschichte zählen müssen, um die aktuellen Werte zu erhalten.
Trader76 hier ist die Funktion, die hinzugefügt wurde: iMAOnArray. Darin müssen Sie die Anzahl der zu berechnenden Elemente angeben. Ich habe alle Elemente des Arrays angegeben; nur so erhält man den korrekten Wert für die mittlere Standardabweichung.
Ich habe dies überprüft, indem ich einen gleitenden Durchschnitt über den Standardabweichungsindikator gelegt habe. Wenn ich eine bestimmte Anzahl von Elementen angebe, ändert sich der berechnete Wert.
Vielleicht ist der Indikator langsam, weil er das gesamte Array berechnet, aber er berechnet es auf andere Weise nicht korrekt.
Der Zeitraum des berechneten Durchschnitts beträgt 30.
Trader76 hier ist die Funktion, die hinzugefügt wurde: iMAOnArray. Darin müssen Sie die Anzahl der zu berechnenden Elemente angeben. Ich habe alle Elemente des Arrays angegeben; nur so erhält man den korrekten Wert für die mittlere Standardabweichung.
Ich habe dies überprüft, indem ich einen gleitenden Durchschnitt über den Standardabweichungsindikator gelegt habe. Wenn ich eine bestimmte Anzahl von Elementen angebe, ändert sich der berechnete Wert.
Vielleicht ist der Indikator langsam, weil er das gesamte Array berechnet, aber er berechnet es auf andere Weise nicht korrekt.
Der Zeitraum des berechneten Durchschnitts beträgt 30.
Das ist genau das, was ich hinzugefügt habe, denn vorher hat sich der Indikator nicht verlangsamt.
//+------------------------------------------------------------------- //|Расчет среднего значения девиации//+-------------------------------------------------------------------
Averagedeviation=iMAOnArray(deviationBuffer,0,30,0,MODE_SMA,i);
//+------------------------------------------------------------------- //|Вывод значения на экран отдельным объектом//+------------------------------------------------------------------- string Text =DoubleToStr(deviation,4); // Текст для отображения с указанием количества знаков ппосле запятойif(deviation<=(Averagedeviation*1.1)&&deviation>=(Averagedeviation*0.9))// Выбор цвета зависит от динамики
Color_Day_Percent = Color_0; // Цвет для 0if(deviation>Averagedeviation*1.1) // Выбор цвета зависит от динамики
Color_Day_Percent = Color_Up; // Цвет для +if(deviation<Averagedeviation*0.9) // Выбор цвета зависит от динамики
Color_Day_Percent = Color_Dn; // Цвет для -if(ObjectFind(Obj_Name)==-1) // Если объекта нет..
{
ObjectCreate(Obj_Name,OBJ_LABEL,0,0,0); // Создаём новый объект
ObjectSet (Obj_Name,OBJPROP_CORNER, 1); // Угол привязки
ObjectSet (Obj_Name,OBJPROP_XDISTANCE,15); // Координата Х
ObjectSet (Obj_Name,OBJPROP_YDISTANCE,15); // Координата Y
}
ObjectSetText(Obj_Name,Text,10,"MS Sans Serif",Color_Day_Percent);// Текстовое описание объекта
i--;
}
//----------------------------------------------------------------------return(0);
}
int deinit()
{
ObjectDelete(Obj_Name); // Удаление объекта при выходеreturn(0);
}
//+------------------------------------------------------------------+
Vielen Dank, das wird schneller gehen, deshalb habe ich mich auch für "lippy" entschieden. Besonderen Dank für die Zeichencodes, jetzt muss ich nicht mehr danach suchen.
Ich habe geschrieben, um Kurznamen für Zeichen zu ersetzen, Zeilen in Buchstaben zu unterteilen und die Ersetzung vorzunehmen.
StringGetChar()
StringGetChar()
Oder ist es der falsche?
ist, um zu konvertieren, müssen Sie bestimmen, welcher Buchstabe diesen oder jenen Wert hat und dann diese Werte durch Buchstaben ersetzen ... Es scheint möglich zu sein, durch KernelDll, aber dieser Weg ist sehr verwirrend, zumindest hat es nicht für mich, nicht viele Informationen und es sieht aus wie es ist nicht ganz richtig ... aber eine benutzerdefinierte Funktion ist der einzige einfache Weg aus meiner Meinung nach
Ich habe geschrieben, um kurze Namen für Zeichen zu ersetzen, die Zeichenketten in Buchstaben aufzulösen und die Ersetzung vorzunehmen.
Guten Tag. Ich habe ein kleines Problem bei der Verwendung des Indikators beim Wechsel zu einem anderen Zeitrahmen, beginnt das Terminal zu verlangsamen, und manchmal bleibt es ganz hängen.
Der Indikator ist das Bollinger Band mit dem angezeigten Abweichungswert. Ich weiß nicht, was genau im Code die Leistungseinbußen verursacht.
Kann mir jemand sagen, wie solche Probleme im Allgemeinen gelöst werden, oder wo ich anfangen soll?
Guten Tag. Ich habe ein kleines Problem bei der Verwendung des Indikators beim Wechsel zu einem anderen Zeitrahmen, beginnt das Terminal zu verlangsamen, und manchmal bleibt es ganz hängen.
Der Indikator ist das Bollinger Band mit dem angezeigten Abweichungswert. Ich weiß nicht, was genau im Code die Leistungseinbußen verursacht.
Kann mir jemand sagen, wie solche Probleme im Allgemeinen gelöst werden, oder wo ich anfangen soll?
Trader76 hier ist die Funktion, die hinzugefügt wurde: iMAOnArray. Darin müssen Sie die Anzahl der zu berechnenden Elemente angeben. Ich habe alle Elemente des Arrays angegeben; nur so erhält man den korrekten Wert für die mittlere Standardabweichung.
Ich habe dies überprüft, indem ich einen gleitenden Durchschnitt über den Standardabweichungsindikator gelegt habe. Wenn ich eine bestimmte Anzahl von Elementen angebe, ändert sich der berechnete Wert.
Vielleicht ist der Indikator langsam, weil er das gesamte Array berechnet, aber er berechnet es auf andere Weise nicht korrekt.
Der Zeitraum des berechneten Durchschnitts beträgt 30.
Trader76 hier ist die Funktion, die hinzugefügt wurde: iMAOnArray. Darin müssen Sie die Anzahl der zu berechnenden Elemente angeben. Ich habe alle Elemente des Arrays angegeben; nur so erhält man den korrekten Wert für die mittlere Standardabweichung.
Ich habe dies überprüft, indem ich einen gleitenden Durchschnitt über den Standardabweichungsindikator gelegt habe. Wenn ich eine bestimmte Anzahl von Elementen angebe, ändert sich der berechnete Wert.
Vielleicht ist der Indikator langsam, weil er das gesamte Array berechnet, aber er berechnet es auf andere Weise nicht korrekt.
Der Zeitraum des berechneten Durchschnitts beträgt 30.
Das ist genau das, was ich hinzugefügt habe, denn vorher hat sich der Indikator nicht verlangsamt.
Das ist genau das, was ich hinzugefügt habe, denn vorher hat sich der Indikator nicht verlangsamt.
Nun, wenn Sie es nicht wollen, gut.
Das verstehe ich nicht. Was soll das heißen, Sie wollen nicht?
Sie wollen den gesamten Code? Ja.
Der Name ist kyrillisch, deshalb ist er in Hieroglyphen geschrieben.