[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 36

 

¿Cómo se cierra una operación al final del día?

if (Hour()==23&&Minute()==59) - esta construcción no funciona en el probador. No lo he entendido en la vida real. ¿Cómo probar y arreglar correctamente la condición de cierre? Gracias.
 
alexey999 >> :

Hola a todos.

AYUDA. Quién sabe dónde y qué hacer para cambiar la luz de la barra de símbolos en "Market Watch". Por ejemplo el EUR/USD es rojo, yo necesito gris o blanco. Que yo sepa sólo es posible editando archivos en la carpeta config del terminal. Traté de buscar en los archivos ini, pero no entiendo dónde cambiar el color

Pulse PrintScreen y pegue la imagen en cualquier editor gráfico a través del portapapeles. Y luego puedes colorear como quieras, aunque sea una mujer desnuda en tu símbolo favorito.

 

¡Hola!

He descargado un indicador basado en el RSI y la MA, que se adjunta a continuación. Por alguna razón no puedo escribir sus lecturas por debajo de 47 en csv, escribe 2147483647, pero todas las lecturas por encima de este valor escribe y en el terminal también se muestra correctamente. Ayúdame a entender cuál es la trampa...

Una pequeña pregunta más, puede alguien saber cómo hacer una coma como signo de separación en el MetaEditor en lugar de un punto. Cansado de cambiar el formato cada vez...

Archivos adjuntos:
rsidk.mq4  2 kb
 
demsan писал(а) >>

¡Hola!

He descargado un indicador basado en el RSI y la MA, que se adjunta a continuación. Por alguna razón no puedo escribir sus lecturas por debajo de 47 en csv, escribe 2147483647, pero todas las lecturas por encima de este valor escribe y en el terminal también se muestra correctamente. Ayúdame a entender cuál es la trampa...

Una pequeña pregunta más, puede alguien saber cómo hacer una coma como signo de separación en el MetaEditor en lugar de un punto. Cansado de cambiar el formato cada vez...

Es posible que sólo pueda tomar los valores de un búfer. Hay tres de ellos

0. MA>47

1. MA<53

Y 2147483647 parece ser un EMPTY_VALUE

Y no está muy claro lo de la coma. Si tienes problemas con Excel, puedes cambiar la configuración regional y poner un punto en lugar de una coma como separador. En este caso será idéntico tanto en Excel como en el MetaEditor.

 

¡¡¡Hola a todos!!!

Por favor, ayuda - No quiero establecer el Stop Loss

Archivos adjuntos:
 
gobl1n писал(а) >>

¡¡¡Hola a todos!!!

Por favor, ayúdenme, no quiero poner Stop Loss.

Deberías leer el manual. Al menos debe utilizar las funciones correctamente.

bool OrderSelect( int index, int select, int pool=MODE_TRADES)

índice - Posición de la orden o número de la orden en función del segundo parámetro.
seleccione - Bandera del método de selección. Puede ser uno de los siguientes valores:
SELECT_BY_POS - el parámetro índice transmite el número ordinal de la posición en la lista,
SELECT_BY_TICKET - el número del billete se pasa al parámetro índice.
piscina - Fuente de datos para la selección. Se utiliza cuando el parámetro select es igual a SELECT_BY_POS. Puede ser uno de los siguientes valores:
MODE_TRADES (por defecto) - la orden se selecciona entre las órdenes abiertas y pendientes,
MODE_HISTORY - la orden se selecciona entre las órdenes cerradas y borradas.
bool OrdenModificar( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
billete - Número de serie único del pedido.
precio - Nuevo precio de apertura de la orden pendiente.
stoploss - Nuevo valor de StopLoss.
Aprovechar el beneficio - Nuevo valor de TakeProfit.
caducidad - Hora de caducidad de la orden pendiente.
color_flecha - Color de las flechas de modificación de StopLoss y/o TakeProfit en el gráfico. Si falta este parámetro o su valor es CLR_NONE, las flechas no se muestran en el gráfico.

La magia no es un número de billete después de todo

 
¡¡¡Gracias por señalar la inexactitud!!!
 

Buenas tardes.

¿Cómo puedo escribir correctamente en el código del Asesor Experto para que sólo funcione después de un cierto tiempo. Por ejemplo, debe cerrar después de 1 hora y 20 minutos desde la apertura de una orden y abrir una nueva después de 20 minutos desde el cierre de la última orden. Gracias.

 

Hola. Este es el trozo de código en el que tengo un problema.

double Set_SL[];
int init()
{
Set_SL[Historial*Profundidad]=1.0*Nivel*Punto; /configurar el valor inicial para un determinado elemento del array
Alert("Init:"," Set_SL[",Historial*Profundidad,"]=",Set_SL[Historial*Profundidad]);//hay una salida especial para verlo: (digamos) 0.0001

return(0);
}
int start()
{
Alert("Start:"," Set_SL[",History*Depth,"]=",Set_SL[History*Depth]);/aquí ya muestra 2147483647
return(0);
}

Lo especificado en los comentarios ocurre en el cambio de marco temporal. Al mismo tiempo, después de cambiar los parámetros del indicador - realmente muestra el valor establecido previamente (es decir, lo que se estableció durante la inicialización). Lo he intentado de nuevo muchas veces - lo mismo: cuando el marco de tiempo cambia - el valor del elemento del array establecido se transfiere incorrectamente de la función especial init() a la función especial start(). ¿Qué es? ¿Qué me estoy perdiendo aquí? Por favor, dígame.

¡P.d.: " Set_SL[",Historia*Profundidad,"]=" esta pieza especialmente insertada para asegurarse de que el número de secuencia del elemento del array sigue siendo el mismo!






 
ikatsko писал(а) >>

Hola! Este es el trozo de código - Tengo un problema.

doble Set_SL[];
int init()
{
Set_SL[Historial*Profundidad]=1,0*Nivel*Punto; //establecer el valor inicial del elemento del array definido
Alert("Init:"," Set_SL[",Historia*Profundidad,"]=",Set_SL[Historia*Profundidad]);//Introducirlo para ver: muestra (suponer) 0,0001

return(0);
}
int inicio()
{
Alert("Inicio:"," Set_SL[",Historia*Profundidad,"]=",Set_SL[Historia*Profundidad]);//ya muestra 2147483647
return(0);
}

Esto es lo que ocurre cuando se cambia de marco temporal. Al mismo tiempo, después de cambiar los parámetros del indicador - muestra el valor previamente establecido (es decir, lo que se estableció durante la inicialización). Lo he intentado de nuevo muchas veces - lo mismo: cuando el marco de tiempo cambia - el valor del elemento del array establecido se transfiere incorrectamente de la función especial init() a la función especial start(). ¿Qué es? ¿Qué me estoy perdiendo aquí? >> Dame una pista.

¡P.d.: " Set_SL[",Historia*Profundidad,"]=" esta pieza se inserta especialmente para asegurarse de que el número de secuencia del elemento del array sigue siendo el mismo!

Y estaría bien definir el tamaño del array para empezar.