Errores, fallos, preguntas - página 1256 1...124912501251125212531254125512561257125812591260126112621263...3188 Nuevo comentario Ilnur Iksanov 2014.12.14 12:00 #12551 sanyooooook: ¿quién sabe si OnChartEvent funciona en el probador?A mí no me funciona. También funciona en MT5. Alexandr Bryzgalov 2014.12.14 12:04 #12552 Estoy haciendo esto, pero no imprime nada://+------------------------------------------------------------------+ //| CheckObjectClick.mq4 | //+------------------------------------------------------------------+ #property copyright "" #property link "https:/" #property version "1.00" #property strict //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ string InpName="Button"; // Имя кнопки ENUM_BASE_CORNER InpCorner=CORNER_LEFT_LOWER; // Угол графика для привязки string InpFont="Arial"; // Шрифт int InpFontSize=14; // Размер шрифта color InpColor=clrBlack; // Цвет текста color InpBackColor=C'236,233,216'; // Цвет фона color InpBorderColor=clrNONE; // Цвет границы bool InpState=false; // Нажата/Отжата bool InpBack=false; // Объект на заднем плане bool InpSelection=false; // Выделить для перемещений bool InpHidden=true; // Скрыт в списке объектов long InpZOrder=0; // Приоритет на нажатие мышью int OnInit() { //--- ButtonCreate(0,StringConcatenate(InpName,"LIMIT"),0,20,25,55,20,InpCorner,"LIMIT",InpFont,InpFontSize, InpColor,clrLime,InpBorderColor,InpState,InpBack,InpSelection,InpHidden,InpZOrder); ButtonCreate(0,StringConcatenate(InpName,"STOP"),0,80,25,60,20,InpCorner,"STOP",InpFont,InpFontSize, InpColor,clrRed,InpBorderColor,InpState,InpBack,InpSelection,InpHidden,InpZOrder); //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- } //+------------------------------------------------------------------+ void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) { //--- if(id==CHARTEVENT_OBJECT_CLICK) { string clickedChartObject=sparam; if(clickedChartObject=="ButtonLIMIT") { Print(1); } if(clickedChartObject=="ButtonSTOP") { Print(2); } } //int Click=EventChartCustom(id,CHARTEVENT_OBJECT_CLICK); } bool ButtonCreate(long chart_ID=0, // ID графика string name="Button", // имя кнопки int sub_window=0, // номер подокна int x=0, // координата по оси X int y=0, // координата по оси Y int width=50, // ширина кнопки int height=18, // высота кнопки ENUM_BASE_CORNER corner=CORNER_LEFT_UPPER, // угол графика для привязки string text="Button", // текст string font="Arial", // шрифт int font_size=10, // размер шрифта color clr=clrBlack, // цвет текста color back_clr=C'236,233,216', // цвет фона color border_clr=clrNONE, // цвет границы bool state=false, // нажата/отжата bool back=false, // на заднем плане bool selection=false, // выделить для перемещений bool hidden=true, // скрыт в списке объектов long z_order=0) // приоритет на нажатие мышью { //--- сбросим значение ошибки ResetLastError(); //--- создадим кнопку if(ObjectFind(name)<0) { ObjectCreate(chart_ID,name,OBJ_BUTTON,sub_window,0,0); } //--- установим координаты кнопки ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x); ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y); //--- установим размер кнопки ObjectSetInteger(chart_ID,name,OBJPROP_XSIZE,width); ObjectSetInteger(chart_ID,name,OBJPROP_YSIZE,height); //--- установим угол графика, относительно которого будут определяться координаты точки //ObjectSet(name,OBJPROP_CORNER,corner);Print(GetLastError()); ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner); //--- установим текст ObjectSetString(chart_ID,name,OBJPROP_TEXT,text); //--- установим шрифт текста ObjectSetString(chart_ID,name,OBJPROP_FONT,font); //--- установим размер шрифта ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size); //--- установим цвет текста ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr); //--- установим цвет фона ObjectSetInteger(chart_ID,name,OBJPROP_BGCOLOR,back_clr); //--- установим цвет границы ObjectSetInteger(chart_ID,name,OBJPROP_BORDER_COLOR,border_clr); //--- отобразим на переднем (false) или заднем (true) плане ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back); //--- переведем кнопку в заданное состояние ObjectSetInteger(chart_ID,name,OBJPROP_STATE,state); //--- включим (true) или отключим (false) режим перемещения кнопки мышью ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection); ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection); //--- скроем (true) или отобразим (false) имя графического объекта в списке объектов ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden); //--- установим приоритет на получение события нажатия мыши на графике ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order); //--- успешное выполнение return(true); } Alexandr Bryzgalov 2014.12.14 12:07 #12553 ¿o hay algún problema en alguna parte?Apenas he trabajado con eventos en MT4, así que no lo sé.ZZZ: Todo está bien en un gráfico normal. Valeriy Korobeynik 2014.12.14 12:20 #12554 sanyooooook: ¿o hay algún problema en alguna parte?Apenas he trabajado con eventos en MT4, así que no lo sé.ZS: En un gráfico normal todo son buenas impresiones.Cierto, no lo hace. Pero funciona. Intenta seguir el evento con el gráfico. Evgeniy Ledovskih 2014.12.14 12:25 #12555 svds75: Hola Estimados usuarios del foro. Hay una situación que no está clara.En realidad la cosa es que no hay manera de hacer que la función ChartOpen (), en el probador (visualizador), abra un par de gráficos.En el modo normal, todo funciona, pero en el probador, constantemente devuelve no cero como está escrito en la ayuda, y el mismo número 16388.Estaré muy agradecido si alguien me dice qué es lo que pasa. Robot de prueba adjunto. Amigos míos, ¿nadie se ha enfrentado a ello? ¿O es un error reciente? ¿Cómo se prueban entonces las multivoluciones con gráficos? Denis Kirichenko 2014.12.14 12:37 #12556 sanyooooook:ZS: Todas las impresiones están bien en un gráfico normal.Tal vez estés buscando en el Diario equivocado... si estás en modo de optimización, las impresoras están apagadas... Muéstrame los detalles de la configuración del probador Alexandr Bryzgalov 2014.12.14 12:49 #12557 denkir:Debes estar mirando en el Diario de a bordo equivocado... de hecho, si estás en modo de optimización, las impresiones están desactivadas allí... Muéstrame los detalles de la configuración del probador.No sé dónde buscar )Ni siquiera creo objetos durante la optimización. Pero no estoy en modo de optimización. Alexandr Bryzgalov 2014.12.14 12:51 #12558 He probado con una variable declarada a nivel global, pero su valor tampoco cambia. Andrey Barinov 2014.12.14 13:06 #12559 sanyooooook: He intentado utilizar una variable declarada globalmente, pero su valor tampoco cambia.¿Dónde está la información de que OnChartEvent() debe funcionar en el probador? ¿Me he perdido algo? Todavía no me funciona. Ni en el 4, ni en el 5. Valeriy Korobeynik 2014.12.14 13:17 #12560 Funciona. Lo he comprobado con mi EA, abre las órdenes desde los botones. Me pregunto por qué no se imprime... 1...124912501251125212531254125512561257125812591260126112621263...3188 Nuevo comentario
¿quién sabe si OnChartEvent funciona en el probador?
A mí no me funciona.
Estoy haciendo esto, pero no imprime nada:
¿o hay algún problema en alguna parte?
Apenas he trabajado con eventos en MT4, así que no lo sé.
ZZZ: Todo está bien en un gráfico normal.
¿o hay algún problema en alguna parte?
Apenas he trabajado con eventos en MT4, así que no lo sé.
ZS: En un gráfico normal todo son buenas impresiones.
Cierto, no lo hace. Pero funciona. Intenta seguir el evento con el gráfico.
Hola Estimados usuarios del foro. Hay una situación que no está clara.
En realidad la cosa es que no hay manera de hacer que la función ChartOpen (), en el probador (visualizador), abra un par de gráficos.
En el modo normal, todo funciona, pero en el probador, constantemente devuelve no cero como está escrito en la ayuda, y el mismo número 16388.
Estaré muy agradecido si alguien me dice qué es lo que pasa. Robot de prueba adjunto.
ZS: Todas las impresiones están bien en un gráfico normal.
Tal vez estés buscando en el Diario equivocado... si estás en modo de optimización, las impresoras están apagadas...
Muéstrame los detalles de la configuración del probador
Debes estar mirando en el Diario de a bordo equivocado... de hecho, si estás en modo de optimización, las impresiones están desactivadas allí...
Muéstrame los detalles de la configuración del probador.
No sé dónde buscar )
Ni siquiera creo objetos durante la optimización. Pero no estoy en modo de optimización.
He intentado utilizar una variable declarada globalmente, pero su valor tampoco cambia.