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
Traté de usar este artículo para hacer mi propio programa, pero es demasiado complicado para mis propósitos simples. Aquí traté de hacer un programa simple, pero el compilador encontró (sólo) un error: Clase con "sin tipo". Y no importaba lo que pusiera como "tipo" o "nombre" de Clase no había ningún cambio.
Aquí está el principio. ¿Qué estoy haciendo mal?
//|KaufVerkauf.mq5
//|Copyright ....2012//|http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright .... 2012"
#property link"http://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Include|
//+------------------------------------------------------------------+
#include <Expert\Expert.mqh>
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Inicialización del objeto Experto |
//+------------------------------------------------------------------
//---- handles para indicadores
int RSI_handle = 0;// handle del indicador iRSI
intADX_handle = 0; // manejador del indicador iADX
intFuerza_mango = 0; // handle del indicador iForce
int AD_handle = 0;// handle del indicador iAD
int Close_handle = 0;
intHigh_handle = 0;
int Low_handle = 0;
int VTick_handle = 0;
int VReal_handle = 0;
int sig =0;
double MqlParams[]; // Matriz para almacenar los parámetros del indicador
//+------------------------------------------------------------------+
//| Función de inicialización del experto RSI|
//+------------------------------------------------------------------+
Clase CExpertSignal
{
private:
int OnInit()
//--- creación del indicador iRSI...........
Muchas gracias.
Trato de probar esto:
- Descargar el código, copiar a MQL5 y compilado: éxito sin errores.
- Pero EA no se puede ejecutar, se genera un error como el siguiente:
Por favor, ayúdame lo que está mal con estos parámetros:
Una vez más, muchas gracias.
En primer lugar, me gustaría dar las gracias al autor(es) por este artículo.
¡Soy nuevo en MetaTrader, MQL5 y en el trading en Forex, así que estos artículos son realmente útiles!
Cuando pruebo este EA, me doy cuenta de que para el cierre de una posición larga, da una señal de venta con un tamaño de lote duplicado.
¿Por qué no sólo cierra mi posición larga, pero directamente entra en una posición corta en la misma señal?
Como primera prueba para entender toda la programación, me gustaría sólo ir en largo, por lo que sólo abrir y cerrar una posición larga
sin entrar en una posición corta en la señal de cierre / venta.
Gracias de antemano.
Buenas tardes,
Por favor, aconséjeme cómo aumentar (recargar) una posición en un Asesor Experto, que está escrito sobre la base de MQL5 Wizard y donde las posiciones se abren a través de
virtual int CondiciónLarga();
virtual int CondiciónCorta();
Escribí el robot de acuerdo con las recomendaciones del artículo
https://www.mql5.com/es/articles/367 "Crear un robot de comercio en 6 pasos" y funciona bien, pero los intentos de influir en el tamaño de la posición (no importa si para aumentar o disminuir)
(no importa si aumentar o disminuir) a través de la generación repetida de una condición en , por ejemplo en
LongCondition();
no conduce a nada, la posición ya abierta no se modifica, sólo puede borrarse ejecutando la condición de cierre o disparando sl , tp.
Me gusta el MQL5 Wizard, puedes "construir" fácil y rápidamente un Expert Advisor multiindicador, cambiar el módulo de seguimiento de sl, cambiar el módulo de gestión monetaria.
Pero mi intento de escribir un Asesor Experto que abre una posición mínima cuando una condición es formada por un indicador y aumenta (llena) la posición cuando la tendencia es confirmada por otro indicador.
Me encontré con el problema descrito anteriormente - la posición ya abierta no cambia cuando la señal para abrir de nuevo se emite a través de. por ejemplo LongCondition();
Gracias.
Si ejecuto este ejemplo en el probador de estrategias mt5, y elijo el activo como pex. Vale5, algoritmo genético, d1, ohlc 1 minuto, max balance, ¡da un error!
Si lo ejecuto en un par de divisas, la misma optimización parece completarse (no esperaba que lo hiciera porque tarda demasiado en el agente local).
El error que aparece en el diario del probador, en este caso para Vale5, tiene algo que ver con OnInit. ¿Alguien ha detectado el mismo problema? Si es así, ¿habéis llegado a alguna solución y/o conclusión?
¡Gracias si alguien puede ayudar!
Si ejecuto este ejemplo en el probador de estrategias mt5, y elijo el activo como pex. Vale5, algoritmo genético, d1, ohlc 1 minuto, max balance, ¡da un error!
Si lo ejecuto en un par de divisas, la misma optimización parece completarse (no esperaba que lo hiciera porque tarda demasiado en el agente local).
El error que aparece en el diario del probador, en este caso para Vale5, tiene algo que ver con OnInit. ¿Alguien ha detectado el mismo problema? Si es así, ¿habéis llegado a alguna solución y/o conclusión?
¡Gracias si alguien puede ayudar!
Hola, por favor, proporciona información adicional, como un registro de errores o capturas de pantalla, para que podamos intentar analizar mejor el problema.
Una simple descripción como la que has dado arriba no ayuda mucho a identificar el problema.
Saludos cordiales,
Malacarne
No tengo ninguna experiencia (todavía) con la programación en MQL, pero tengo algo de experiencia en programación en otros lenguajes. Uno de los errores más fáciles de hacer en la programación (mi clase específica era Java, que es muy similar en estilo a C ++ y al parecer MQL) es no cerrar las llaves correctamente. Es uno de los errores más fáciles de hacer, y por el contrario, también uno de los más difíciles de encontrar.KJG, en cuanto al cierre de un largo y la partida a la derecha en un corto, es probablemente lo que este estilo de EA está diseñado para hacer. He visto muchos estilos de comercio con sólo ese tipo de configuración, creo que fueron diseñados para un mercado que tiene una gran cantidad de volatilidad y grandes oscilaciones de precios que ocurren todo el tiempo, como algo que probablemente ocurriría en un gráfico de tiempo minuto marco.
En el caso de que el precio de la divisa sea mayor que el de la divisa de la que se trate, el precio de la divisa de la que se trate será mayor que el de la divisa de la que se trate.
Buenas tardes,
Usted está recibiendo el siguiente error cuando intenta probar el robot.
2017.07.04 18:20:27.404 tester se detuvo porque OnInit falló
Estoy haciendo algo mal o hay que hacer algún ajuste en el robot?
Saludos
Carlos F.
Las diferentes etapas de construcción están bien explicadas. Es un trabajo claro y útil, especialmente para aquellos que nunca han desarrollado un robot. Gracias