[ARCHIVO] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 3. - página 336

 
Elenn:
.... La cuestión es cómo organizar los arrays. Si declaramos todos los arrays a nivel global, ocupará demasiado espacio en la memoria. Además, este EA se instalará en cada uno de los 12 pares, por lo que será un desperdicio de memoria muy improductivo. Ojalá fuera posible eliminar las matrices cuando ya no se necesitan, pero ¿cómo hacerlo, especialmente desde el nivel global?


Si tienes el código fuente, puedes fusionar las tres funciones en una sola y declarar arrays en ella.

Después de salir de esta función, la memoria se liberará automáticamente.

 

No puedo entender por qué el código no funciona correctamente en el 4.

La tarea consiste en cerrar todas las posiciones a una hora determinada del día y eliminar las órdenes pendientes colocadas por el EA. El problema es que no se toca cada segundo orden. No hay ningún patrón. No puedo entender cuál es el problema. Por favor, dime, ¿qué estoy haciendo mal? ¡Gracias de antemano por la respuesta!

   if (!ClosedByTime)
      if (CurrentHour==CloseTradesTime-1 && TimeMinute(TimeCurrent())>55)
            {
            ClosedByTime=true;
            for (n=0;n<=OrdersTotal()-1;n++)
               {
               OrderSelect(n,SELECT_BY_POS);
               if (OrderMagicNumber()==Magic)
                  { 
                  if (OrderType()==0 || OrderType()==1){
                     if (OrderType()==0)
                        {
                        OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),1);
                        Alert("BUY position has been closed due to tradetime timeout!");
                        }
                       else
                        {
                        OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),1);
                        Alert("SELL position has been closed due to tradetime timeout!");
                        }}
                     else {OrderDelete(OrderTicket());Alert("Pending order (type "+OrderType()+") has been canceled due to tradetime timeout!");}
                  }
               
               }
            }

P.D. Por favor, no respondas con un "eres una mierda..." :)

 
for(n=OrdersTotal()-1;n>=0;n--)
 

Hola a todos, cómo puedo gestionar las propiedades de las ventanas desde un indicador, me interesan los parámetros marcados con flechas, ¿qué funciones utilizar para ello?

 
sanches83:

Siento ser tan insistente, solo quería saber si realmente no es real o es un tema perdido.
No lo he utilizado, pero hay un archivo "DDE-Sample.xls" que se incluye con el terminal, sólo hay que habilitar el servidor en el terminal. Pruébalo, tal vez funcione. O tal vez la tarea se formule de manera diferente. ¿O tal vez la tarea se formule de manera diferente? ¿A través de la API? Experimenta con el DDE.
 
FAQ:

Ahhhhhhhh me voy a caer de la silla ahora... No debería haber sido tan estúpido). Deberías trabajar menos por la noche...

Gracias.

 
Si su Asesor Experto es muy intensivo en código... La velocidad de procesamiento del código - la velocidad de toma de decisiones depende del rendimiento del ordenador o incluso a pesar de un ordenador muy potente, la velocidad de procesamiento estará limitada por "el límite de velocidad del lenguaje MKL4" (no sé cómo expresarlo correctamente)
 

Este es el código

int handle=FileOpen("1all.txt",FILE_WRITE|FILE_CSV,"\t");
  if(handle<0) {Print("FAQ"); return(0);}

  FileWrite(handle,"OrderTicket","OrderOpenPrice","OrderOpenTime","OrderSymbol","OrderLots");
  int total=OrdersHistoryTotal();

  for(int pos=0;pos<total;pos++)
    {
     if(OrderSelect(pos,SELECT_BY_POS,MODE_HISTORY)==false) continue;
     FileWrite(handle,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots());
    }
  FileClose(handle);
  Print("done");

No da ningún error. Parece que lo escribe todo, pero no sé dónde lo guarda. He buscado el archivo 1all.txt en mi ordenador, pero no lo he encontrado. ¿A dónde va?

 
Shniperson:
Si su Asesor Experto es muy intensivo en código... La velocidad de procesamiento del código - la velocidad de toma de decisiones depende del rendimiento del ordenador o incluso a pesar de un ordenador muy potente, la velocidad de procesamiento estará limitada por "el límite de velocidad del lenguaje MKL4" (no sé cómo expresarlo correctamente)

No hay problemas particulares para el código óptimo. Una curva puede tener 10 líneas y colgar el sistema.
 
Alp:

Este es el código

No da ningún error. Parece que lo escribe todo, pero no sé dónde lo guarda. He buscado el archivo 1all.txt en mi ordenador, pero no lo he encontrado. ¿A dónde va?


¿Qué sistema operativo? ¿En qué unidad se encuentra el terminal?

Por defecto.

\N - Perfiles de expertos

\N - Archivos de prueba

Razón de la queja: