Discusión sobre el artículo "Tercera generación de neuroredes: "Neuroredes profundas"" - página 11

 
kimkarus:

Meta Trader 4 tester genera un error:

i_SAE EURUSD,M30: array fuera de rango en 'i_SAE.mq4' (140,22)

Rterm arranca correctamente, dos instancias.

Según el código es Time[]. He hecho que el indicador se ejecute por barras, por ticks, inicializado junto con el Asesor Experto. No sirve de nada.

¿Hay alguna solución?

Por regla general, ocurre cuando la historia a la izquierda del punto de activación es menor que "atrás" (es decir, menos de 700 barras).

No se puede disminuir este valor. Es el valor mínimo.

Hace tiempo que no aparecen errores de este tipo.

Compruebe o bombee el historial. Y no ejecute el indicador en el borde mismo de la historia.

Suerte

 
kimkarus:

Nada especial, sólo inicializado Asesor Experto y el indicador en la consola y en el estudio (proyecto R, todo de acuerdo con las instrucciones del artículo).

¿Es posible conseguir mt4Rb7.dll para 64 bit y mql5?

No funciona sin ella, solo en metatrader 4.

Todavía no he conseguido añadir un tester (mql4).

R versión 3.2.2

MT5 no estaba involucrado y no planea hacerlo. DLL ahora funciona con R de 64 bits en MT4 (32p).

Según tengo entendido, el trabajo DLL en MT5 no debería causar ningún problema. Aunque no conozco las peculiaridades de MT5.

¿Y en qué ves la ventaja de usar MT5? ¿Qué es imposible de hacer en MT4 en comparación con MT5? Así que para el desarrollo general.

Buena suerte

 

Los errores parecen haber desaparecido. Pero la segunda instancia de Rterm no se lanza cuando se llama al indicador desde el Asesor Experto a través de iCustom(). ¿Hay alguna otra manera de lanzar el indicador junto con el Asesor de Expertos, excepto incluyendo el indicador en el Asesor de Expertos?

Acerca de MQL5. Acabo de empezar a dominar el lenguaje de la misma.

De lo que he aprendido. Hay una ventaja indudable de la creación de un Asesor Experto basado en la votación de indicadores (señales), el intercambio de búferes de indicadores.

Por supuesto, todo está implementado en MQL4, pero a través de "muletas", no fuera de la caja. También hay algunas dificultades al transferir código de MQL4 a MQL5 debido a la falta de funciones básicas simples en MQL5, que se necesitaban antes, pero ahora están ocultas.

En cuanto a mt4Rb7.dll. Esta biblioteca se compila como un objeto de sistema de 32 bits y por lo tanto no se ejecutará en Meta Trader 5, ya que funciona como una biblioteca de 64 bits. Sólo es adecuada la versión de 32 bits de Meta Trader, cuya quinta versión no he encontrado. Por eso estoy probando en la 4ª versión.

 
kimkarus:

Los errores parecen haber desaparecido. Pero la segunda instancia de Rterm no se lanza cuando se llama al indicador desde el Asesor Experto a través de iCustom(). ¿Hay alguna otra manera de lanzar el indicador junto con el Asesor de Expertos, excepto incluyendo el indicador en el Asesor de Expertos?

Acerca de MQL5. Acabo de empezar a dominar el lenguaje de la misma.

De lo que he aprendido. Hay una ventaja indudable de la creación de un Asesor Experto basado en la votación de indicadores (señales), el intercambio de búferes de indicadores.

Por supuesto, todo está implementado en MQL4, pero a través de "muletas", no fuera de la caja. También hay algunas dificultades al transferir código de MQL4 a MQL5 debido a la falta de funciones básicas simples en MQL5, que se necesitaban antes, pero ahora están ocultas.

En cuanto a mt4Rb7.dll. Esta biblioteca se compila como un objeto de sistema de 32 bits y por lo tanto no se ejecutará en Meta Trader 5, ya que funciona como una biblioteca de 64 bits. Sólo es apta la versión de 32 bits de Meta Trader, cuya quinta versión no he encontrado. Por eso estoy probando en la 4ª.

Permítanme mis cinco centavos.

¿Por qué es tan difícil con R? Algunos indicadores, servidores...

Al fin y al cabo, todo funciona (al menos para mí) a través de la librería incluida. Escribes una variable de cadena en µl, que es una llamada a función, se la pasas a R, que ejecuta el número necesario de funciones de R, y la felicidad ha llegado....

¿O me estoy perdiendo algo?

Archivos adjuntos:
 
СанСаныч Фоменко:

Permítame mis cinco centavos.

¿Por qué es tan difícil con R? Algunos indicadores, servidores...

Al fin y al cabo, todo funciona (al menos para mí) a través de la biblioteca suministrada. Escribes una variable de cadena en µl, que es una llamada a una función, se la pasas a R, que ejecuta el número necesario de funciones de R, y la felicidad ha llegado....

¿O me estoy perdiendo algo?

Aparentemente un malentendido.

Quiero ejecutar todo esto en el probador mql4.

Sin el probador, todo funciona bien, la felicidad está ahí.

En MQL5 no funciona, debido a la diferente digitalización de los objetos a ejecutar.

¿Cual es la diferencia entre la libreria adjunta para trabajar con R del articulo y la que tu sugieres (el peso es diferente)?

 
kimkarus:

Al parecer hay un malentendido.

Quiero ejecutar en mql4 probador todo esto.

Sin el probador, todo funciona bien, la felicidad está ahí.

En MQL5 no funciona, debido a la diferente digitalización de los objetos a lanzar.

¿Cuál es la diferencia entre la biblioteca adjunta para trabajar con R del artículo y el que usted sugiere (el peso es diferente)?

Ahora estoy utilizando esta librería.

En la versión anterior de MT4 (hasta la 540) la utilicé sin problemas.

La librería en sí está escrita en pascal, el código fuente está disponible. No veo ningún problema usando esta librería en mcl4 o mcl5.

Creo que todo el problema está en el intrincado circuito donde el probador se apaga

 
СанСаныч Фоменко:

Permítame mis cinco centavos.

¿Por qué es tan difícil con R? Algunos indicadores, servidores...

Al fin y al cabo, todo funciona (al menos para mí) a través de la biblioteca suministrada. Escribes una variable de cadena en µl, que es una llamada a una función, se la pasas a R, que ejecuta el número necesario de funciones de R, y la felicidad ha llegado....

¿O me estoy perdiendo algo?

Saludos SanSanych.

La variante cliente-servidor es atractiva por varias razones:

- trabajar en muchas herramientas al mismo tiempo.

- Pero lo principal es que el servidor permite el intercambio bidireccional no bloqueante de información no sólo cliente<->servidor (los clientes pueden ser hasta 128) sino también entre clientes y otros servidores. Es decir, durante los cálculos largos hay intercambio de datos con el servidor y otros clientes. La única limitación es que no se puede solicitar el resultado de un cálculo antes de que haya terminado, Rterm se bloqueará.Esto le permite construir un sistema jerárquico complejo con un Rterm controlando todos los demás. Por supuesto, si lo necesita.

- Es posible pasar los datos a un indicador, que dibujará la información necesaria en el gráfico. Mi experiencia dice que no hay control más fiable que el control visual. Y dibujar desde el Asesor Experto es problemático.

Por supuesto, todo se puede recoger en el Asesor Experto, pero cuando se trabaja en varios pares, surgen algunos problemas, que por supuesto se pueden resolver de otras maneras.

Esta es una forma de trabajar, pero no significa que sea la única ni la ideal.

En el artículo intento mostrar el máximo número de variantes posibles de trabajo. Y el usuario elegirá lo que necesite.

De lo complejo es fácil hacerlo sencillo, lo contrario es difícil. Aunque en mi opinión la variante cliente-servidor propuesta no es tan complicada. Mira la cantidad de código en MKL5 que se necesita para resolver tal problema.

Suerte

 
kimkarus:

Al parecer hay un malentendido.

Quiero ejecutar en mql4 probador todo esto.

Sin el probador, todo funciona bien, la felicidad está ahí.

En MQL5 no funciona, debido a la diferente digitalización de los objetos a lanzar.

¿Cual es la diferencia entre la libreria adjunta para trabajar con R del articulo y la que tu ofreces (el peso es diferente)?

¿Puedo preguntar por qué es necesario ejecutar el Asesor Experto en el probador?
 
kimkarus:

Los errores parecen haber desaparecido. Pero la segunda instancia de Rterm no se lanza cuando se llama al indicador desde el Asesor Experto a través de iCustom(). ¿Hay alguna otra manera de lanzar el indicador junto con el Asesor Experto, excepto incluir el indicador en el Asesor Experto?

¿De qué indicador estamos hablando? ¿Qué indicador desea utilizar a través de iCustom()?

En cuanto a MQL5. Acabo de empezar a dominar el lenguaje de la misma.

Por lo que he aprendido. Hay una indudable ventaja de crear un Asesor Experto basado en la votación de indicadores (señales), intercambiando los buffers de los indicadores.

Todos los cálculos, incluidos los de los indicadores, se debe hacer en R. Y no hay restricciones para sus fantasías en términos de matemáticas. ¡Sólo se toman citas de MT!

Por supuesto, todo puede ser implementado en MQL4, pero a través de "muletas", no fuera de la caja. También hay algunas dificultades al transferir el código de MQL4 a MQL5 debido a la falta de funciones básicas simples en MQL5, que se necesitaban antes, pero ahora están ocultos.

En cuanto a mt4Rb7.dll. Esta biblioteca se compila como un objeto de sistema de 32 bits y por lo tanto no se ejecutará en Meta Trader 5, ya que funciona como una biblioteca de 64 bits. Sólo es apta la versión de 32 bits de Meta Trader, cuya quinta versión no he encontrado. Por eso estoy probando en la 4ª por ahora.

Intenta escribir al autor. Tiene una rama donde aparece de vez en cuando. Pero según mi información, la librería no ha sido rediseñada para MT5.

Tienes que reordenar un poco tus ideas sobre la estructura del Asesor Experto. Un Asesor Experto debe hacer su trabajo (ejecutar órdenes, monitorizar posiciones, etc. etc.). Para realizar estas tareas, no importa en qué lenguaje (MKL4 o MKL5) lo implementarás. Es una cuestión de preferencia. Los cálculos, análisis y otras tareas complejas deben implementarse en el proceso R.

Separa el "hacer" del "pensar". Ninguna MKL está diseñada para "pensar". Está perfeccionada para "hacer".

Necesitas usar cada lenguaje para lo que fue diseñado.

Suerte

 

Vladimir Perervenko

Añade al artículo información adicional sobre cómo trabajar con R Studio

  • Para que todo funcione correctamente debes asegurarte de que no hay otras referencias a "localhost" en el archivo hosts.
  • Asegúrate de instalar todos los paquetes y ejecutarlos con el comando (en el espacio de trabajo de R)

install.packages("R.matlab")
install.packages("deepnet")
install.packages("caret")
install.packages("h2o")
instalar.paquetes("TTR")
instalar.paquetes("rminer")
instalar.paquetes("foreach")
instalar.paquetes("doParallel")
instalar.paquetes("svSocket")
instalar.paquetes("lattice")
instalar.paquetes("ggplot2")
instalar.paquetes("statmod")
instalar.paquetes("kknn")
instalar.paquetes("iteradores")
instalar.paquetes("parallel")

library("R.matlab")
biblioteca("deepnet")
biblioteca("caret")
biblioteca("h2o")
biblioteca("TTR")
biblioteca("rminer")
biblioteca("foreach")
biblioteca("doParallel")
biblioteca("svSocket")
biblioteca("lattice")
biblioteca("ggplot2")
biblioteca("statmod")
biblioteca("kknn")
biblioteca("iteradores")
biblioteca("parallel")