Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 673
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
¿Cómo detectar las alertas a través de iCustom?
¿Quizás conozca indicadores/asesores ya existentes para ello?
Estoy escribiendo un EA que funciona en base a la martingala.
¿Cómo puedo hacer que cierre todas las órdenes que ha abierto cuando se alcanza la pérdida máxima en pips en un par de divisas?
Si realmente lo necesitas en pips y no en dinero, aquí tienes una función para aplicar al igual que la anterior
//------------------ Возвращает суммарный профит открытых позиций в пунктах --------------------+
//===============================================================================================
double GetProfitOpenPosInPoint(string symb="0", int type=-1, int mg=-1) {
double p=0, prb=0, prs=0, pr=0;
if(symb=="0") { symb=Symbol();}
for(int i=0; i<OrdersTotal(); i++) {
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if((OrderSymbol()==symb||symb=="")&&(type<0||OrderType()==type)&&(mg<0||OrderMagicNumber()==mg)) {
p=MarketInfo(OrderSymbol(), MODE_POINT)*Sign;
if(OrderType()==OP_BUY) {
prb+=((MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/p);
}
if(OrderType()==OP_SELL) {
prs+=((OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/p);
}
pr=prb+prs;
}
}}
return(pr);
}
Hola,¿Qué código debo añadir para que las alertas de cualquier indicador aparezcan en el EA?
¿Cómo detectar las alertas a través de iCustom?
¿Quizás conozca indicadores/asesores ya existentes para ello?
Hola. Quería abrir el archivo.ex4 con mt4.exe y configurarlo para que lo use para todos los archivos. ¿Cómo puedo revertir la "biblioteca de shell general de Windows"? por alguna razón mt4 no ve este EA (robot) ahora.
No te lo vas a creer, pero todo el mundo!!! quiere abrir un archivo .ex4, el problema es que nunca se ha abierto para editarlo, y no se abre.
Los archivos editables son sólo .mq4, los ejecutables son .ex4
Eventos del terminal del cliente
Init
Inmediatamente después de que el terminal cliente cargue un programa (Asesor Experto o indicador personalizado) y comience la inicialización de las variables globales, se enviará un evento Init que se gestiona mediante OnInit(), si está disponible. Este evento también se genera después de un cambio de valor y/o de período del gráfico, después de recompilar el programa en el MetaEditor, después de un cambio de parámetros de entrada de un Asesor Experto o de una ventana de configuración de indicadores personalizados. El Asesor Experto también se inicializa después de cambiar la cuenta. El evento Init no se genera para los scripts.
¿Y si no es "por la ventana"? Por ejemplo, durante el modo de optimización en el Probador de Estrategias ? ¿Dónde leer sobre ello?
Eventos del terminal del cliente
Init
Inmediatamente después de que el terminal cliente cargue un programa (Asesor Experto o indicador personalizado) y comience la inicialización de las variables globales, se enviará un evento Init que se gestiona mediante OnInit(), si está disponible. Este evento también se genera después de un cambio de valor y/o de período del gráfico, después de recompilar el programa en el MetaEditor, después de un cambio de parámetros de entrada de un Asesor Experto o de una ventana de configuración de indicadores personalizados. El Asesor Experto también se inicializa después de cambiar la cuenta. El evento Init no se genera para los scripts.
¿Y si no es "por la ventana"? Por ejemplo, durante el modo de optimización en el Probador de Estrategias ? ¿Dónde leer sobre ello?
En el modo de optimización, cada pase con nuevos parámetros no es más que una nueva ejecución del programa. En consecuencia, después de iniciar el evento OnInit() pasa.
¡Gracias Vladimir! Lo entiendo)). ¿Pero en qué parte de la documentación está escrito? Si pongo Print, Alert, Comment en init(), no se escribe nada ni en el diario ni en la pantalla. ¿Cómo podemos estar seguros de lo que sabemos?
Existen limitaciones para algunas funciones en el probador de estrategias del terminal cliente.
Funciones Print() y PrintFormat()
Para mejorar el rendimiento al optimizar los parámetros de EA, las funcionesPrint() yPrintFormat() no se ejecutan. La excepción es el uso de estas funciones dentro del manejadorOnInit(). Esto nos permite facilitar la búsqueda de las causas de los errores cuando éstos se producen.
Las funciones Alert(), MessageBox(), PlaySound(), SendFTP, SendMail(), SendNotification() y WebRequest()
Las funcionesAlert(),MessageBox(),PlaySound(),SendFTP(),SendMail(),SendNotification() yWebRequest() que interactúan con el "mundo exterior" no se ejecutan en el probador de estrategias.
Y para asegurarnos - inicie la depuración en el historial y establezca un punto de interrupción en OnInit().
No consigo imprimir algo() en el registro del probador. ¿Cómo se hace esto?