Money_Maker: Muchas gracias esto será más rápido, por eso también me decidí por "lippy" gracias especiales por los códigos de caracteres ahora no tendré que buscarlos.
Escribí para reemplazar los nombres cortos de los personajes, romper las líneas en letras y hacer el reemplazo.
no, no lo es... el significado de la decodificación es el siguiente: cada letra rusa tiene un valor, por ejemplo, "a", que es una combinación de \u0430
para convertirlo hay que determinar qué letra tiene tal o cual valor y luego reemplazar estos valores con letras ... Puede ser posible a través de KernelDll pero es un camino turbio, al menos a mí no me ha funcionado, no hay mucha información y parece que no está del todo bien... pero una función personalizada es la única salida fácil en mi opinión
Buenas tardes. Tengo un pequeño problema cuando uso el indicador al cambiar a otro marco temporal, el terminal empieza a ralentizarse, y a veces se cuelga completamente.
El indicador es las Bandas de Bollinger con el valor de desviación mostrado. No sé qué es exactamente lo que está causando la degradación del rendimiento en el código.
¿Puede alguien aconsejar cómo se resuelven estos problemas en general, o por dónde empezar?
Buenas tardes. Tengo un pequeño problema cuando uso el indicador al cambiar a otro marco temporal, el terminal empieza a ralentizarse, y a veces se cuelga completamente.
El indicador es las Bandas de Bollinger con el valor de desviación mostrado. No sé qué es exactamente lo que está causando la degradación del rendimiento en el código.
¿Puede alguien aconsejar cómo se resuelven estos problemas en general, o por dónde empezar?
Lo más probable es que haya un periodo grande para el cálculo, por eso se cuelga, no creo que haya que contar durante 5000 barras en el historial para obtener los valores actuales.
Trader76 aquí está la función que se añadió: iMAOnArray. En él, hay que especificar el número de elementos a calcular. He especificado todos los elementos del array; sólo así se obtiene el valor correcto de la media de la desviación estándar.
Lo he comprobado superponiendo una media móvil al indicador de desviación estándar. Si especifico un número determinado de elementos, el valor calculado cambia.
Tal vez, el indicador es lento debido al cálculo de toda la matriz, pero no lo calcula correctamente de otras maneras.
Trader76 aquí está la función que se añadió: iMAOnArray. En él, hay que especificar el número de elementos a calcular. He especificado todos los elementos del array; sólo así se obtiene el valor correcto de la media de la desviación estándar.
Lo he comprobado superponiendo una media móvil al indicador de desviación estándar. Si especifico un número determinado de elementos, el valor calculado cambia.
Tal vez, el indicador es lento debido al cálculo de toda la matriz, pero no lo calcula correctamente de otras maneras.
Esto es exactamente lo que he añadido, antes de esto el indicador no se ralentizaba.
//+------------------------------------------------------------------- //|Расчет среднего значения девиации//+-------------------------------------------------------------------
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);
}
//+------------------------------------------------------------------+
Muchas gracias esto será más rápido, por eso también me decidí por "lippy" gracias especiales por los códigos de caracteres ahora no tendré que buscarlos.
Escribí para reemplazar los nombres cortos de los personajes, romper las líneas en letras y hacer el reemplazo.
StringGetChar()
StringGetChar()
¿O es el equivocado?
para convertirlo hay que determinar qué letra tiene tal o cual valor y luego reemplazar estos valores con letras ... Puede ser posible a través de KernelDll pero es un camino turbio, al menos a mí no me ha funcionado, no hay mucha información y parece que no está del todo bien... pero una función personalizada es la única salida fácil en mi opinión
He estado escribiendo para reemplazar los nombres cortos de los personajes, dividir las cadenas en letras y hacer el reemplazo.
Buenas tardes. Tengo un pequeño problema cuando uso el indicador al cambiar a otro marco temporal, el terminal empieza a ralentizarse, y a veces se cuelga completamente.
El indicador es las Bandas de Bollinger con el valor de desviación mostrado. No sé qué es exactamente lo que está causando la degradación del rendimiento en el código.
¿Puede alguien aconsejar cómo se resuelven estos problemas en general, o por dónde empezar?
Buenas tardes. Tengo un pequeño problema cuando uso el indicador al cambiar a otro marco temporal, el terminal empieza a ralentizarse, y a veces se cuelga completamente.
El indicador es las Bandas de Bollinger con el valor de desviación mostrado. No sé qué es exactamente lo que está causando la degradación del rendimiento en el código.
¿Puede alguien aconsejar cómo se resuelven estos problemas en general, o por dónde empezar?
Trader76 aquí está la función que se añadió: iMAOnArray. En él, hay que especificar el número de elementos a calcular. He especificado todos los elementos del array; sólo así se obtiene el valor correcto de la media de la desviación estándar.
Lo he comprobado superponiendo una media móvil al indicador de desviación estándar. Si especifico un número determinado de elementos, el valor calculado cambia.
Tal vez, el indicador es lento debido al cálculo de toda la matriz, pero no lo calcula correctamente de otras maneras.
El periodo de media calculado es de 30.
Trader76 aquí está la función que se añadió: iMAOnArray. En él, hay que especificar el número de elementos a calcular. He especificado todos los elementos del array; sólo así se obtiene el valor correcto de la media de la desviación estándar.
Lo he comprobado superponiendo una media móvil al indicador de desviación estándar. Si especifico un número determinado de elementos, el valor calculado cambia.
Tal vez, el indicador es lento debido al cálculo de toda la matriz, pero no lo calcula correctamente de otras maneras.
El periodo de media calculado es de 30.
Esto es exactamente lo que he añadido, antes de esto el indicador no se ralentizaba.
Esto es exactamente lo que he añadido, antes de esto el indicador no se ralentizaba.
Bueno, si no lo quieres, bien.
No lo entiendo. ¿Cómo que no quieres?
¿Quieres el código completo? De acuerdo.
El nombre está en cirílico, por eso está en jeroglífico.