Errores, fallos, preguntas - página 736

 
Me refería a ella y también a la extensión .chm
 
 
void OnStart()
  {
   MqlRates a[],b[];
   Alert("после MqlRates a[],b[] Series == "+ArrayIsSeries(b));
   CopyRates(Symbol(),PERIOD_CURRENT,0,TerminalInfoInteger(TERMINAL_MAXBARS),a);
   ArraySetAsSeries(a,true);
   CopyRates(Symbol(),PERIOD_M1,0,TerminalInfoInteger(TERMINAL_MAXBARS),b);
   Alert("после CopyRates Series == "+ArrayIsSeries(b));
   ArraySetAsSeries(b,true);
   Alert("после ArraySetAsSeries(b,true); Series == "+ArrayIsSeries(b));
}
2012.05.06 17:29:55 TEMP (EURUSD,H1) después de ArraySetAsSeries(b,true); Series == false
2012.05.06 17:29:55 TEMP (EURUSD,H1) después de CopyRates Series == false
2012.05.06 17:29:55 TEMP (EURUSD,H1) después de MqlRates a[],b[] Series == false

Se nota y no se ruboriza. ¿Puede ser que esté hirviendo?

 
 
sergeev:

ArrayGetAsSeries

Retirar la tapa, apagar el fuego.

Gracias.

 
El mercado no funciona, no se pueden descargar demos ni productos gratuitos - "Error al cargar el programa *****. Por favor, inténtelo más tarde"
 
papaklass:

1 hilo filtrado que queda

Lo he descubierto, es el modo de inicialización de la estructura de solicitud MQLTradeRequest.

Si lo inicializamos de esta manera:

entonces no aparece"1 cadena filtrada".

Si la inicialización se realiza desde la función OpenPosition() al nivel global, aparece el registro de memoria:

En cuanto a la segunda opción. Tratando de entenderlo, encontré el siguiente código:

//+------------------------------------------------------------------+
//|                                                   papaclass4.mq5 |
//+------------------------------------------------------------------+
MqlTradeRequest      mrequest={1};
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart()
  {
   Print("Global: mrequest.price=",mrequest.price);
  }
//+------------------------------------------------------------------+

Devuelve:

2012.05.07 10:52:10 papaclass4 (USDCAD,M1) Global: mrequest.price=0.0

Resulta que la variable mrequest={1} está inicializada a nivel global, pero el programa no ve los valores de sus campos inicializados por alguna razón. El compilador no se queja también.

 
Ha inicializado el primer miembro de la estructura con uno y el resto con cero por defecto.
 
Renat:
Ha inicializado el primer miembro de la estructura con uno y el resto con cero por defecto.
Lo tengo. Encontré la explicación en el Manual de Referencia: "Debe haber al menos un valor en la secuencia de inicialización: el primer elemento de la estructura o array correspondiente se inicializa con este valor, los elementos que faltan se consideran cero".
 
papaklass:

1 hilo filtrado que queda

Lo he descubierto, viene de la forma en que se inicializa la estructura MqlTradeRequest.

Si lo inicializamos de esta manera:

entonces no aparece"1 cadena filtrada".

Si trasladamos la inicialización de la función OpenPosition() al nivel global, aparece el registro de memoria:

Gracias por el mensaje, el error del compilador está solucionado.