es posible hacer backtest ea con dll
http://forum.mql4.com/52401Una observación más, no creo que la latencia del tiempo sea un desafío, pero para esculpir egy, las latencias pueden afectar el comportamiento de egy o no. No tengo idea ahora.
Versión para imprimir
es posible hacer backtest ea con dll
http://forum.mql4.com/52401Una observación más, no creo que la latencia del tiempo sea un desafío, pero para esculpir egy, las latencias pueden afectar el comportamiento de egy o no. No tengo idea ahora.
hola, comentaré su concepto: - Tradinglogic (la mayor parte de eso) escrito en c la mayor parte de eso ... - MT4 Backtest tiene que trabajar con tradinglogic! Necesario para investigar: Tradinglogic debe estar fuera de la raíz MT4. No hay problemas: todo el constructo debe ser flexible para el futuro, es posible agregar elementos como cálculos independientes, visualizar arreglos (GUI), guardar csv, todo está bien ... En este caso, mejor considere Java para visualizaciones, cvs erc .. y C para cálculos críticos rápidos. Es posible realizarlo en C , pero el resultado será muy costoso (en un tiempo y esfuerzo) y difícil de mantener. La saparación no afectará signifiivamente la funcionalidad principal. -Lo que encontré hasta ahora es que puedes llamar a funciones desde la DLL y pasar valores. ¿Es posible pasar matrices? Es posible pasar el puntero al primer elemento de la matriz y usar valores de la matriz. - A la inversa, el programa (c ) podría llamar a una función de MQL que resolvería todos los problemas porque fácilmente podría recoger los valores. Mira aquí
http://stackoverflow.com/questions/1...m-imported-dll
El concepto: - Tradinglogic (la mayor parte de eso) escrito en c - ¡MT4 Backtest tiene que trabajar con el tradinglogic! - Tradinglogic debe estar fuera de la raíz MT4. - El constructo completo debe ser flexible para el futuro, que es posible agregar elementos como cálculos independientes, visualizar matrices (GUI), guardar csv, todas las cosas buenas cumplidas ...
https://www.forosforex.com/attachments/1529228295.pngTengo experiencia básica con MQL pero no en c porque eso es lo que quiero preguntar qué construcciones son posibles para la comunicación entre ex4 y dll, etc. Durante la investigación he encontrado que:
https://www.forosforex.com/trading-s...o-journal.html(usar pascal)
http://www.xpworx.com/metatrader-mql...ension-dll.phpCreo que el principal problema es conseguir el acceso a los datos. El programa c tiene que obtener los datos requeridos, como los valores de inferior o gráfico con historial (valores de desplazamiento). Lo que encontré hasta ahora es que puede llamar a funciones desde la DLL y puede pasar valores. ¿Es posible pasar matrices? Pero, por ejemplo, cuando el programa necesita el valor iHigh (NULL, variable, 333) o valores de Indiors con variables variables como iATR (NULL, variable, variable, variable). A la inversa, el programa (c ) podría llamar a una función de MQL que resolvería todos los problemas porque fácilmente podría recoger los valores. No sé si esto va a funcionar ...? Estoy feliz y agradecido por cualquier sugerencia para aprender y entender las posibilidades de tal construcción. ¡Gracias hasta ahora!
Debido a que MT4 está instalado en su computadora y puede escanear todo el disco. Pero no veo la razón para hacerlo. Metaquotes, en común, no tiene interés para su EA, es rentable o no. Así que no es su negocio. Broker es capaz de copiar todas sus operaciones, la ingeniería inversa de los EA no es tan simple y barata. Estoy de acuerdo con el segundo punto. Mejor estar libre de las limitaciones de mql. Si tiene alguna idea concreta para hoy, podemos discutirla, aunque mi tiempo se limita a hacer nuevos proyectos. Trabajé como programador profesional, en C Java.
Por que piensas No creo que sea fácil para el Broker obtener acceso fuera de la raíz MT4 ... pero no soy un especialista ... ¿Puede el Broker acceder a través de mt4ex4 a dll en Code o Harddrive fuera de la raíz MT4? No esperoCita:
Iniciado por ;
Jes, otra razón es que mql no es tan rápido como c y tiene menos oportunidades. En el futuro, cuando mis habilidades de codificación sean mejores, posiblemente quiera trabajar con redes neuronales y bibliotecas en c para cálculos complejos. Y creo que es bueno ser independiente en Futuro, cuando MT45 cambie (y su lenguaje mql) a MT6,7,8 ... Solo tengo que cambiar el Código para la Comunicación mql-dll pero el EA-Logic en dll puede quedarse.Cita:
Iniciado por ;
Es posible, pero creo que no es confiable para prevebt el acceso a DLL. No creo que MT4 escanee las computadoras de los usuarios en busca de DLL y las vuelva a activar para obtener su contraseña. Acerca del corredor. Si ur egy es rentable, el agente podría copiar sus operaciones en nombre propio, sin ningún conocimiento sobre el egy en sí. Pero es posible crear esta cadena a partir de 2 dlls y scripts, tal como propusiste. Pueden existir otras razones para separar Logic DLL y Communiion DLL, pero aún están ocultas en nuestra discusión. En general, es un enfoque común en la programación, lógica y comunicación separadas, aspecto diferente de los modelos de vista de modelo.
Jes, en la misma computadora pero fuera de la raíz MT4Cita:
Iniciado por ;
https://www.forosforex.com/attachments/1529228295.png
Hmmm ... ¿qué significa que el tradinglogic debería estar lejos de MT4? ¿Estás hablando de la colocación física de los DLL? U ha puesto la primera DLL en el directorio predefinido dentro del directorio MT4. Segundo DLL podría estar fuera de la raíz MT4. Todo el código se encuentra en la computadora. De todos modos, puedes poner una segunda DLL en la otra computadora y la comunidad a través de sockets o llamadas remotas.Cita:
Iniciado por ;
Creo que la forma más rápida y sencilla de enviar datos de MT4 a otra aplicación (ventana) (y posiblemente viceversa) es usar el mensaje de la ventana WM_COPYDATA, consulte aquí:
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspxSin embargo, hacer la lógica de negociación en una DLL debería ser seguro y los datos pueden enviarse como parámetros a una función DLL, y volver a colocarse en las variables locales del programa MT4.
Jes su derecho La idea de usar un segundo programadll después de la primera dll existe porque desconfío de los intermediarios Metaquotes (complemento del distribuidor virtual ...). Porque el tradinglogic debería estar lejos de MT4.
https://www.forosforex.com/attachments/1529228295.pngSé un poco paranoico, pero me siento mejor cuando el código importante no está al alcance de MT y el Broker. Puedo codificar en mql y lern c pero los archivos DLL y el intercambio de datos entre progr son muy nuevos para mí. Debe ser una solución que el propio programa c obtenga los datos requeridos de Mt4 (por ejemplo, open [12] open [523] iHigh (x [x], 0,1) Time [x] etc.