Errores, fallos, preguntas - página 2534

 
Alexey Navoykov:
Inline es una reliquia, en mi opinión. El compilador inline todo bien por sí mismo, así que no hay necesidad de sobrecargar el código. Y en MQL este especificador no es nada, se añade sólo por compatibilidad (no sé para qué, si se podría declarar tal macro por uno mismo).
¿Y quién puede garantizar que el compilador ha inlineado 100500 llamadas de la función GetTo() en un bucle, si la llamada está precedida por if(algo) y este algo es falso una vez en cinco años?
Me resulta más fácil escribir en línea que buscar en el código del desensamblador para comprobarlo.
 
Vladimir Simakov:
¿Quién puede garantizar que el compilador alineará 100500 llamadas a GetTo() en un bucle, si la llamada está precedida por if(algo) y este algo es falso una vez en cinco años?
Me resulta más fácil escribir en línea que mirar el código del desensamblador para comprobarlo.
Disculpe, ¿está desmontando los códigos ex4, ex5?
 
Artyom Trishkin:
Disculpe, ¿desmonta los códigos ex4, ex5?

Artyom, como moderador por favor ayúdame con esto, escribí antes :

"Para los administradores de sitios:

No he podido encontrar dónde, escribo aquí

Es necesario cambiar los datos del vendedor en el perfil.

¿Cómo hacer esto?

Escribí un mensaje hace tiempo en la cuenta del vendedor, sin respuesta.

¿tal vez haya otra forma?

"

 
Andrey Egorov:

Artyom, como moderador por favor ayúdame con esto, escribí antes :

"Para los administradores de sitios:

No pude encontrar dónde, escribo aquí

Es necesario cambiar los datos del vendedor en el perfil.

¿Cómo hacer esto?

Escribí un mensaje hace tiempo en la cuenta del vendedor, sin respuesta.

¿tal vez haya otra forma?

"

Escriba en este hilo (+ pasó su solicitud a la administración):

Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • 2010.03.08
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
 
Artyom Trishkin:
Disculpe, ¿desmonta los códigos ex4, ex5?
No. ¿Hay alguna complejidad fundamental ahí?
No hay que confundirlo con la descompilación: son cosas diferentes.
 
Vladimir Simakov:
No. ¿Hay alguna complejidad fundamental ahí?
No hay que confundirlo con la descompilación: son cosas diferentes.

He hecho una pregunta concreta. Ha dado una respuesta concreta.

Y "confundir algo con algo" es una invención tuya. Por favor, no se preocupe: lo sé, y no estoy confundido, y sus otras preguntas son redundantes aquí.

 
Vladimir Simakov:
¿Y quién puede garantizar que el compilador incrustó 100500 llamadas a la función GetTo() en el bucle, si esta llamada está precedida por if(algo) y este algo es falso una vez en cinco años?
Me resulta más fácil escribir en línea que mirar el código del desensamblador para comprobarlo.

¿Y has conseguido optimizar mucho con tus inlines en modo Release? )

p.d. ¿No eras tú el que estaba jugando con las alineaciones el otro día?

 

Amigos, me pueden decir que es lo que hace, un mes todo funcionaba bien, pero me atreví a cargar un depósito y ahora me da un error - el karma está negro :(

Aquí está la llamada del indicador del Asesor Experto

//+------------------------------------------------------------------+
//|значение Regressor Номера буферов: 0 - Up, 1 - Center, 2 - Low    |
//+------------------------------------------------------------------+
double Regressorf(int Bufer,int index)
  {
   double MA[1];
   ResetLastError();
   if(CopyBuffer(handle_Regressor,Bufer,index,1,MA)<0)
     {
      Print("handle_Regressor: Bufer=",Bufer," index=",index);
      PrintFormat("Failed to copy data from the handle_Regressor indicator, error code %d",GetLastError());
      return(0.0);
     }
   Print("handle_Regressor: Bufer=",Bufer," index=",index," arr=",MA[0]);
   return MA[0];
  }

Desde julio probé activamente todo en una cuenta real bajo mi mirada, no había ningún error, y ahora lo tengo :(

2019.08.15 20:51:11.827 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        Failed to copy data from the handle_Regressor indicator, error code 4806
2019.08.15 20:51:58.329 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        handle_Regressor: Bufer=1 index=627
2019.08.15 20:51:58.329 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        Failed to copy data from the handle_Regressor indicator, error code 4806
2019.08.15 20:52:44.840 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        handle_Regressor: Bufer=0 index=627
2019.08.15 20:52:44.840 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        Failed to copy data from the handle_Regressor indicator, error code 4806
2019.08.15 20:53:31.350 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        handle_Regressor: Bufer=2 index=627
2019.08.15 20:53:31.350 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        Failed to copy data from the handle_Regressor indicator, error code 4806
2019.08.15 20:54:17.867 TZ_Sky_and_Ground_V_04_test (Si-9.19,M1)        handle_Regressor: Bufer=1 index=627

¿Qué puede ser? Al mismo tiempo el indicador en sí funciona visualmente, la reinicialización del EA solucionó el problema.

 

¡Buenas tardes!

Puede que sea una pregunta tonta, pero no consigo saber qué estoy haciendo mal. Empecé a aprender MQL5 y surgió el primer problema. No puedo utilizar el script para la apertura inmediata de una orden (compra/venta, cualquier orden). Acabo de tomar el código listo de MQL5 Reference y he intentado ejecutarlo (adjuntar el script a la ventana del gráfico). No funcionó. Al compilar, no se produjo ningún error, por supuesto. No puedo adjuntarlo al gráfico. Tal vez todo sea obvio, pero estoy perdido.

#define  EXPERT_MAGIC 123456   // MagicNumber эксперта
//+------------------------------------------------------------------+
//| Открытие позиции Buy                                             |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- объявление и инициализация запроса и результата
   MqlTradeRequest request={0};
   MqlTradeResult  result={0};
//--- параметры запроса
   request.action   =TRADE_ACTION_DEAL;                     // тип торговой операции
   request.symbol   =Symbol();                              // символ
   request.volume   =0.1;                                   // объем в 0.1 лот
   request.type     =ORDER_TYPE_BUY;                        // тип ордера
   request.price    =SymbolInfoDouble(Symbol(),SYMBOL_ASK); // цена для открытия
   request.deviation=5;                                     // допустимое отклонение от цены
   request.magic    =EXPERT_MAGIC;                          // MagicNumber ордера
//--- отправка запроса
   if(!OrderSend(request,result))
      PrintFormat("OrderSend error %d",GetLastError());     // если отправить запрос не удалось, вывести код ошибки
//--- информация об операции
   PrintFormat("retcode=%u  deal=%I64u  order=%I64u",result.retcode,result.deal,result.order);
  }

Por favor, aconséjeme, ¿qué es lo que está mal? ¿O el código es correcto y yo soy un torpe?

 
Kelser05:

¡Buenas tardes!

Puede que sea una pregunta tonta, pero no consigo saber qué estoy haciendo mal. Empecé a aprender MQL5 y surgió el primer problema. No puedo utilizar el script para la apertura inmediata de una orden (compra/venta, cualquier orden). Acabo de tomar el código listo de MQL5 Reference y he intentado ejecutarlo (adjuntar el script a la ventana del gráfico). No funcionó. Al compilar, no se produjo ningún error, por supuesto. No puedo adjuntarlo al gráfico. Tal vez todo esté claro, pero estoy perdido.

Por favor, dígame qué pasa. ¿O el código es correcto y yo sólo soy torpe?


¿Qué dice el diario?