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

 
¿Puedes decirme cómo implementarlo en el código - hay un parámetro que debe ser añadido a un archivo con una periodicidad de n minutos?...

21
LLIAMAH 11.11.2011 21:03
Es decir, hay un parámetro y cambia semanalmente. Y quiero crear un asesor auxiliar, que guarde este parámetro en un archivo en formato de texto o mejor aún en excel. La periodicidad de la información en el archivo, creo que puedo escribir yo mismo, lo principal código o función que crea un archivo y escribe allí la información cuando se accede a ella. ¿Puede ayudar?

Podemos ayudar :) Como alguien nos ayudó una vez, nosotros te ayudaremos a ti :).

Kim tiene una función maravillosa que añade datos al final del documento de texto. Con él en la mano, todo lo que tienes que hacer es llevar la cuenta de esos mismos minutos. Una vez que hayan pasado, toma nuestro parámetro cambiado, mételo en la función de Kim y tendrás un documento de texto actualizado. (Excepto que me hubiera gustado mucho que entendieras cómo funciona esta función). Aquí está:

//+------------------------- WritingLineInFile() ----------------------------
//| Дописывание строки в конец файла
//+---------------------------------
void WritingLineInFile(string FlName, string Text){
  int file_handle=FileOpen(FlName, FILE_CSV|FILE_READ|FILE_WRITE, " ");
        if (file_handle>0){
                FileSeek(file_handle,0,SEEK_END);
                FileWrite(file_handle,Text);
                FileClose(file_handle);
        }
        else{
          Print("Ошибка ",GetLastError()," - Не удалось открыть файл ",FlName);
   }
}
//---------------------------------------------------------------------------

¿Cómo se utiliza?

He adjuntado mi indicador a este post. Lo único que hace es escribir el precio de cada nuevo tick en un documento de texto. Echa un vistazo al código: es sencillo. Creo que teniendo un simple indicador de funcionamiento en tus manos, lo entenderás más rápido que si yo tratara de describirlo con palabras.

Archivos adjuntos:
 

Hola a todos, ¿podríais aconsejar a un novato, utilizando un buffer de indicadores, puedo dibujar algo así en un gráfico:

Quiero hacer un diseño de gráfico horizontal con un buffer de indicadores, pero no entiendo cómo funciona.

 
drknn:

Podemos ayudarte :) Como alguien nos ayudó en el pasado, podemos ayudarte :).

Kim tiene una gran función que añade datos al final de un documento de texto. Con él en la mano, todo lo que tienes que hacer es seguir el camino hasta el final de los minutos. Una vez que hayan pasado, toma nuestro parámetro cambiado, mételo en la función de Kim y tendrás un documento de texto actualizado. (Excepto que me hubiera gustado mucho que entendieras cómo funciona esta función). Aquí está:

¿Cómo se utiliza?

He adjuntado mi indicador a este post. Lo único que hace es escribir el precio de cada nuevo tick en un documento de texto. Echa un vistazo al código: es sencillo. Creo que teniendo un simple indicador de funcionamiento en tus manos, lo entenderás más rápido que si yo tratara de describirlo con palabras.

Gracias, Vladimir, ha funcionado :) He copiado el código línea por línea en 15 minutos, no ha aparecido ningún problema, he sustituido el valor de DoubleToStr(Bid,Digits) por mi valor de DoubleToStr(Profit_Loss,Digits) sin ningún problema :)

Decidí hacer un seguimiento de los mismos minutos utilizando la nueva función de barra:

//+------------------------------------------------------------------+
// Определение появления нового бара!                                
//+------------------------------------------------------------------+
bool NewBar()
{
   static datetime lastbar = 0;
   datetime curbar = Time[0];
   if(lastbar!=curbar)
   {
      lastbar=curbar;
      return (true);
   } 
   else return(false);
}
//+------------------------------------------------------------------+

Por lo tanto, la información en el archivo se escribe cada minuto, 5 minutos, 15, 30, hora, 4 o un día, dependiendo del marco de tiempo, en el que se adjuntó el EA auxiliar :)

Muchas gracias de nuevo. :) Útil :)

 

¡Buenas tardes!

Por favor, aconseja cómo organizar el espacio en el MetaEditor correctamente.

Quiero tener indicadores no sólo en una gran lista, sino para cada TS en una carpeta separada.

He probado lo siguiente: Ordenador - P.F- MetaTrader 4-expertos - indicadores y crear una carpeta allí, pero aparentemente esto no es correcto,

Porque los datos de esta carpeta no se muestran en Navigator y no están disponibles para trabajar a través del terminal.

Gracias. Saludos, Olga

 

Probablemente lo más fácil sea cambiar el nombre de los indicadores para que cada grupo comience con un símbolo/dígito/letra/conjunto de ellos diferente.

Pero los innecesarios deben guardarse en una carpeta aparte: no serán visibles y no tardarás en conseguirlos cuando los necesites (por pequeños o grandes que sean).

La lista se reducirá y se ordenará (alfabéticamente).

 
drknn:

Podemos ayudarte :) Como alguien nos ayudó en el pasado, podemos ayudarte :).

Kim tiene una gran función que añade datos al final de un documento de texto. Con él en la mano, todo lo que tienes que hacer es seguir el camino hasta el final de los minutos. Una vez que hayan pasado, toma nuestro parámetro cambiado, mételo en la función de Kim y obtendrás un documento de texto actualizado. (Excepto que me hubiera gustado mucho que entendieras cómo funciona esta función). Aquí está:

¿Cómo se utiliza?

He adjuntado mi indicador a este post. Lo único que hace es escribir el precio de cada nuevo tick en un documento de texto. Echa un vistazo al código: es sencillo. Creo que teniendo un simple indicador de funcionamiento en tus manos, lo entenderás más rápido que si yo tratara de describirlo con palabras.

Una pregunta más: he decidido hacer el formato csv en lugar del txt y he sustituido la línea del nombre del archivo por:

FileName=Symbol()+"_"+DoubleToStr(Day(),0)+"_"+DoubleToStr(Month(),0)+"_"+DoubleToStr(Year(),0)+".csv";

Ahora guarda el valor de mi parámetro en mi documento de Excel así:

¿Puedes decirme cómo puedo dividir los valores en filas, de modo que en la columna A1 introduzca el valor de la fecha, en la columna B2 la hora y en la C2 el valor de mi parámetro?

P.D. no hagas caso de los valores, porque lo comprobé en el probador, ahora el mercado está cerrado... :(

 
google: separador de excel site:mql4.com
 
Google:
google: separador de excel site:mql4.com

Gracias, lo tengo :)

 
¿Cómo puedo calcular el tamaño máximo del lote permitido con el apalancamiento, etc.?
Gracias
 
¿Cuál es la diferencia entre POINT y TICKSIZE? Cuando se consultan a través de MarketInfo() son iguales, pero ¿deberían ser diferentes si tienen nombres distintos?
Razón de la queja: