Errores, fallos, preguntas - página 503

 
snookeredman:

¡Buenas tardes!

Por favor, ayúdenme a entender ....

void OnStart()
  {
    int h;
    int    m_integer  = 23;
    string m_string   = "EURUSD";
    double m_double   = 1.2345678;    
    
    h=FileOpen("TEST_CSV_FILE.CSV",FILE_CSV|FILE_WRITE,";");
    FileWrite(h,  
              m_integer, 
              m_string, 
              DoubleToString(NormalizeDouble(m_double,5),5));
    FileWrite(h,  
              m_integer, 
              m_string, 
              DoubleToString(NormalizeDouble(m_double,5),5));
    FileClose(h);
  }

Apropiadamente, el tamaño del archivo es 2 veces el tamaño previsto.

Pruébalo así:

void OnStart()
  {
    int h;
    int    m_integer  = 23;
    string m_string   = "EURUSD";
    double m_double   = 1.2345678;    
    
    h=FileOpen("TEST_CSV_FILE.CSV",FILE_CSV|FILE_WRITE|FILE_ANSI,";");                     // Добавлен флаг FILE_ANSI
    FileWrite(h, m_integer, m_string, DoubleToString(NormalizeDouble(m_double,5),5));
    FileWrite(h, m_integer, m_string, DoubleToString(NormalizeDouble(m_double,5),5));
    FileClose(h);
  }
Creo que esto es exactamente lo que estabas buscando.
 
¿Qué está pasando? ¿Cuánto tiempo continuarán estas desconexiones y fallos de los servidores? Ahora el sitio vuelve a estar en línea después de tres días de inactividad, pero los servidores vuelven a estar caídos y el terminal no se conecta
 
Bene_Nota:

¿Qué está pasando? ¿Cuánto tiempo continuarán estas desconexiones y fallos de los servidores? Ahora el sitio vuelve a estar en línea después de tres días de inactividad, pero los servidores vuelven a estar caídos y el terminal no se conecta
Mi terminal está conectado desde ayer por la tarde. Punto de acceso : Estados Unidos, Europa, Hong Kong
 

Gracias a TheXpert, MetaDriver por la ayuda.

La bandera FILE_ANSI ayudó, y tratar de jugar con las páginas de código sin esta bandera no tuvo éxito.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5
 

Señores, ¿cómo se sabe el número total de elementos de un formulario en C++?

 

Buenas tardes, me gustaría contactar con los desarrolladores, pero primero un poco deinformación...

Como ahora es imposible mantener varias posiciones, veo que la salida más sensata para mí es establecer órdenes pendientes. Pero hay un problema al establecer las órdenes una por una. Tenemos que establecer tres órdenes (una de ejecución inmediata y dos órdenes pendientes en lugar de TP y SL). ¿Qué pasa si hago un pedido y no puedo hacer dos? ¿Qué pasa si mi empresa de corretaje se va a comer? Puede que mi depósito no le guste. ¿Piensa abrir varios pedidos (todo o nada)?

 
220Volt:

¿Piensan hacer posible la fijación de múltiples órdenes (ya sea todo o nada)?

Por desgracia, no.

Esto es prácticamente imposible, especialmente en las pasarelas de intercambio, donde en principio no se admiten órdenes tan complejas.

 

Estoy intentando pedir la fecha de inicio del historial y me salen ceros.

La prueba está en modo de visualización, todos los ticks están en H1.

Comprobación del código de prueba

int DS[];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   int total=SymbolsTotal(false);
   ArrayResize(DS,total);
   for(int i=0;i<total;i++)
   {
    DS[i]=0;
    string symbol=SymbolName(i,false);
    
    while(!SymbolIsSynchronized(symbol)) 
    {
     DS[i]=(int)SeriesInfoInteger(symbol,0,SERIES_SERVER_FIRSTDATE);
     Sleep(30);
    }
    DS[i]=(int)SeriesInfoInteger(symbol,0,SERIES_SERVER_FIRSTDATE);
    Print("История по символу ",symbol," Синхронизирована. дата начала истории ",TimeToString(DS[i])," = ",DS[i]);
   }
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   
  }
//+------------------------------------------------------------------+

Se adjunta un registro.

 

¿Tiene el optimizador de código limitaciones en cuanto al tamaño del árbol de objetos?

Obtengo un "error de optimización del árbol" en la fase de compilación cuando aumento el número de objetos.

P.D. En el modo de depuración, la compilación se lleva a cabo.

 
sergey1294:

Estoy intentando pedir la fecha de inicio del historial y me salen ceros.

La prueba está en modo de visualización, todos los ticks están en H1.

Comprobación del código de prueba

Se adjunta un registro.

En primer lugar, ¿qué sentido tiene descargar a la fuerza el historial en el probador? El propio probador descargará el historial necesario y disponible del servidor, si hay solicitudes en el código u operaciones comerciales con los símbolos necesarios. Como su código está vacío, el probador no necesita simular ticks para otros símbolos, excepto para el símbolo, en el que se realiza la prueba. Y eso es lo que el probador descargó su historia. Y como no hay un historial (en el probador), terminamos con 0.

En segundo lugar, aunque se aumente el código llamando a todo el historial para todos los símbolos, es poco probable que la descarga de todo el historial disponible para todos los símbolos tenga éxito, y se producirá un fallo en alguna parte. Dado que el probador utiliza la base de citas del terminal, necesita descargar el historial necesario.
Razón de la queja: