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
Por fin traducido al chino, ¡y digno de un estudio atento de los buenos artículos!
¡Hola!
No has descrito cómo has cargado las comillas en el entorno env ("Como hemos cargado vectores de comillas en el env...) y cómo lo has creado.
Estoy intentando repetir todo desde el principio manualmente con mis quotes, los he descargado en vectores, pero me he encontrado con este entorno que has creado. No entiendo como crearlo y repetirlo según tu ejemplo.
Ayuda.
El mensaje ha desaparecido.
¿Cómo transfieres las comillas a Rterm? ¿Lee de un archivo o del terminal?
El mensaje ha desaparecido.
¿Cómo transfieres las comillas a Rterm? ¿Lees desde un archivo o desde el terminal?
Más o menos lo he averiguado yo mismo. Probé tu Parte 1 sobre cotizaciones EURUSD, todo funcionó.
Hago lo siguiente
1. EN MT4 -
for(i = 0; i < lim; i++)
{
tm[i] = Tiempo[i+1];
o[i] = Apertura[i+1];
hi[i] = Alto[i+1];
lo[i] = Bajo[i+1];
clo[i]= Cierre[i+1];
vol[i]= Volumen[i+1];
}
//--------Envía datos a Rterm--------------------------------------
Rv(R, "Datos",tm);
Rv(R, "Open",o);
Rv(R, "High",hi);
Rv(R, "Low",lo);
Rv(R, "Cierre",clo);
Rv(R, "Volumen",vol);
2. EN R -.
precio_origen <- cbind(Cierre = rev(Cierre), Datos = rev(Datos), Alto = rev(Alto), Bajo = rev(Bajo), Abierto = rev(Abierto), Volumen = rev(Volumen) )
precio1 <- data.frame(precio_origen)
precio2 <- as.list(precio1)
env <- new.env()
assign("Cierre", precio1$Cierre, env)
assign("Datos", precio1$Datos, env)
assign("Alto", precio1$Alto, env)
assign("Mínimo", precio1$Mínimo, env)
assign("Abierto", precio1$Abierto, env)
assign("Volumen", precio1$Volumen, env)
Dig <- 5;
sym <- "EURUSD";
tf <- "M15";
evalq({pr <- pr.OHLCV(Datos, Apertura, Máximo, Mínimo, Cierre, Volumen)}, env)
No se pueden ejecutar gráficos en MT4, no pasa evalq, %>%, aes, geom_candlestick :
Rx(R, "evalq(pr %>% tail(., 500) %>%
ggplot(aes(x = Datos, y = Cierre)) +
geom_candlestick(aes(open = Abierto, high = Alto, low = Bajo, close = Cierre)) +
labs(title = "Gráfico de velas del EURJPY", y = "Precio de cierre", x = "") +
theme_tq(), env)");
He probado de la forma antigua sin la variable de entorno env, descargado los datos, se inicia el comando ggplot(,) y se abre la ventana del gráfico. Con parámetros, ni hablar.
Más o menos lo he resuelto yo mismo. Probé su Parte 1 en las cotizaciones EURUSD, todo funcionó.
Hago lo siguiente
1. EN MT4 -
for(i = 0; i < lim; i++)
{
tm[i] = Tiempo[i+1];
o[i] = Apertura[i+1];
hi[i] = Alto[i+1];
lo[i] = Bajo[i+1];
clo[i]= Cierre[i+1];
vol[i]= Volumen[i+1];
}
//--------Envía datos a Rterm--------------------------------------
Rv(R, "Datos",tm);
Rv(R, "Open",o);
Rv(R, "High",hi);
Rv(R, "Low",lo);
Rv(R, "Cierre",clo);
Rv(R, "Volumen",vol);
2. EN R -.
precio_origen <- cbind(Cierre = rev(Cierre), Datos = rev(Datos), Alto = rev(Alto), Bajo = rev(Bajo), Abierto = rev(Abierto), Volumen = rev(Volumen) )
precio1 <- data.frame(precio_origen)
precio2 <- as.list(precio1)
env <- new.env()
assign("Cierre", precio1$Cierre, env)
assign("Datos", precio1$Datos, env)
assign("Alto", precio1$Alto, env)
assign("Mínimo", precio1$Mínimo, env)
assign("Abierto", precio1$Abierto, env)
assign("Volumen", precio1$Volumen, env)
Dig <- 5;
sym <- "EURUSD";
tf <- "M15";
evalq({pr <- pr.OHLCV(Datos, Apertura, Máximo, Mínimo, Cierre, Volumen)}, env)
No se pueden ejecutar gráficos en MT4, no pasa evalq, %>%, aes, geom_candlestick :
Rx(R, "evalq(pr %>% tail(., 500) %>%
ggplot(aes(x = Datos, y = Cierre)) +
geom_candlestick(aes(open = Apertura, high = Alto, low = Bajo, close = Cierre)) +
labs(title = "Gráfico de velas del EURJPY", y = "Precio de cierre", x = "") +
theme_tq(), env)");
He probado de la forma antigua sin la variable de entorno env, descargado los datos, se inicia el comando ggplot(,) y se abre la ventana del gráfico. Con parámetros, no hay manera.
Buenos días.
Esa transferencia desde el terminal es innecesaria. Cargas en el entorno global y luego transfieres al entorno env. Después tendrás que limpiar el entorno global. El sentido de cargar y procesar los datos en un entorno separado es evitar conflictos de nombres cuando se utilizan varios TF de un mismo símbolo o de varios símbolos. Todos ellos son procesados por los mismos scripts y los datos de origen y los resultados tienen los mismos nombres, pero cada uno en su propio entorno. Necesitamos hacer esto
En Init().
Rx(R, "env <- new.env()");
//Aquí puede ser cualquier símbolo, por ejemplo EURUSD <- new.env(). Entonces se accederá a los datos en consecuencia EURUSD$price.
En start().
Los datos se pondrán inmediatamente en un entorno env separado. Y luego trabajar con ellos a través de evalq().
evalq({pr <- pr.OHLCV(Data, Open, High, Low, Close, Volume)}, env)Pruebe de esta manera con los gráficos:
Yo no imprimo gráficos de esta manera. Por favor, escríbeme cómo lo compruebas.
Mucha suerte
Buenas tardes.
Esta transferencia desde el terminal es innecesaria. Se carga en el entorno global y luego se transfiere al entorno env. Después tendrás que limpiar el entorno global. El sentido de cargar y procesar los datos en un entorno separado es evitar conflictos de nombres cuando se utilizan varios TF de un mismo símbolo o de varios símbolos. Todos ellos son procesados por los mismos scripts y los datos de origen y los resultados tienen los mismos nombres, pero cada uno en su propio entorno. Necesitamos hacer esto
En Init().
Rx(R, "env <- new.env()");
//Aquí puede ser cualquier símbolo, por ejemplo EURUSD <- new.env(). Entonces se accederá a los datos en consecuencia EURUSD$price.
En start().
Los datos se pondrán inmediatamente en un entorno env separado. Y luego trabajar con ellos a través de evalq().
Pruebe de esta manera con los gráficos:
Yo no hago gráficos de esta manera. Por favor, escríbeme cómo lo compruebas.
Suerte
Todo funcionó con la carga. Gracias.
Pero con el gráfico no funciona. Da un error. Aunque las librerías están cargadas.
Rx(R, "library(magrittr)");
Rx(R, "library(dplyr)");
Rx(R, "library(xts)");
Rx(R, "library(anytime)");
Rx(R, "library(quantmod)");
Rx(R, "library(TTR)");
Rx(R, "library(ggplot2)");
Comprobado lo mismo en RStudio, no encuentra %>%.( Error en env$pr %>% tail(., 500) %>% ggplot(aes(x = env$Data, y = env$Close)) :
no se pudo encontrar la función "%>%")Todo ha funcionado con la carga. Gracias.
Pero con el gráfico no funciona. Da un error. Aunque las librerías están cargadas.
Rx(R, "library(magrittr)");
Rx(R, "library(dplyr)");
Rx(R, "library(xts)");
Rx(R, "library(anytime)");
Rx(R, "library(quantmod)");
Rx(R, "library(TTR)");
Rx(R, "library(ggplot2)");
Comprobado lo mismo en RStudio, no encuentra %>%.( Error en env$pr %>% tail(., 500) %>% ggplot(aes(x = env$Data, y = env$Close)) :
En este script, %>% está fuera de lugar. Pruebe
Es mejor escribir todo esto en R en lugar de en el terminal. No estoy seguro si esta combinación funcionará. Hace mucho que no escribo así, así que no puedo opinar.
Suerte
En este script, %>% está fuera de lugar. Pruébalo
No funciona, el error tanto a través de MT4 como en RStudio:
> env$pr %>% tail(., 500) -> tpr> > ggplot(aes(x = tpr$Data, y = tpr$Close)) + + + + geom_candlestick(aes(open = tpr$Open, high = tpr$High, low = tpr$Low, close = tpr$Close))) ++ + + labs(title = "EURJPY Candlestick Chart", y = "Close Price", x = "") + ++ + theme_tq()Error:ggplot2 doesn't know how to deal with data of class uneval
Así que insertado en MQL Rx(R, "env$pr %>% tail(., 500) -> tpr"); Rx(R, "ggplot(aes(x = tpr$Data, y = tpr$Close)) + geom_candlestick(aes(open = tpr$Open, high = tpr$High, low = tpr$Low, close = tpr$Close)) + labs(title = 'EURUSD Candlestick Chart', y = 'Close Price', x = '') + theme_tq())");
No funciona, error tanto a través de MT4 como en RStudio:
En ggplot2(v2.2.1) desapareció la definición de geom_candlestick (MRO 3.4.1).
Ya he derribado el MRO 3.4.0 en el que hacía todos los cálculos así que mañana buscaré una solución y escribiré.
¿Qué versión de R tienes?