R - por favor, comparta sus experiencias - página 5 12345678 Nuevo comentario Sergey Kovalyov 2012.06.03 16:40 #41 El problema de R es que no se puede ejecutar junto con un comprobador y no se pueden elaborar informes gráficos. =) TheXpert 2012.06.03 16:46 #42 wise: El problema de R es que no se puede ejecutar junto con un comprobador y no se pueden elaborar informes gráficos. =)¿Qué lo impide? Sergey Kovalyov 2012.06.03 16:57 #43 No lo sé. Acabo de ver a gente en forexfactory hablando de ello. Tal vez me equivoque. =) TheXpert 2012.06.03 17:00 #44 Hmm. Quizá yo tampoco lo sepa. Todavía no lo he utilizado. anonymous 2012.06.03 17:41 #45 wise: El problema con R es que no se puede ejecutar junto con el probador y dibujar informes gráficos. =) Esto no es un problema de R, es un problema de los cajones de informes. Para la investigación es suficiente con escribir un simple probador por sí mismo en cinco minutos. library(TTR) library(zoo) # get some data num.points <- ... midprices <- ... spreads <- ... bids <- midprices - 0.5 * spreads asks <- midprices + 0.5 * spreads # length(midprices) == num.points; length(spreads) == num.points ma.fast <- EMA(midprices, 15) ma.slow <- EMA(midprices, 50) # compute entry/exit signals open.long.position <- (ma.fast > ma.slow) & (ma.slow > midprices) close.long.position <- (ma.fast < midprices) open.short.position <- (ma.fast < ma.slow) & (ma.slow < midprices) close.short.position <- (ma.fast > midprices) signals.to.position <- function (num.points, signal.open, signal.close) { pos <- rep(NA, num.points) pos[signal.open] <- 1 pos[signal.close] <- 0 pos <- na.locf(pos, na.rm = F) pos[is.na(pos)] <- 0 pos } # compute strategy positions pos.long <- signals.to.position(num.points, open.long.position, close.long.position) pos.short <- signals.to.position(num.points, open.short.position, close.short.position) pos.total <- pos.long - pos.short # compute equity commission <- 1 trade.size <- c(0, pos.total[2 : num.points] - pos.total[1 : (num.points - 1)]) fees <- abs(trade.size) * (commission + 0.5 * spreads) equity <- midprices * pos.total + cumsum(-midprices * trade.size - fees) # compute balance balance <- rep(NA, num.points) balance[trade.size != 0] <- equity[trade.size != 0] balance <- na.locf(balance, na.rm = F) balance[is.na(balance)] <- 0 # display results par(mfrow = c(2, 1)) plot(midprices, t = 'l', col = 'gray', lty = 'dashed') lines(bids, col = 'blue') lines(asks, col = 'red') points(which(trade.size > 0, arr.ind = T), asks[trade.size > 0], col = 'blue') points(which(trade.size < 0, arr.ind = T), bids[trade.size < 0], col = 'red') plot(equity, t = 'l') lines(balance, col = 'gray', lty = 'dashed') R - please share Ayuda con la codificación... Aprendizaje automático en el Serge 2012.06.03 18:26 #46 ¿Alguien ha conseguido que MT5 + R funcione? Алексей Тарабанов 2012.06.03 20:05 #47 anonymous: Ese no es el problema de R, es el problema de los dibujantes de informes. Todo lo que se necesita es cinco minutos para escribir un simple probador usted mismo para la investigación. library(TTR) library(zoo) # get some data num.points <- ... midprices <- ... spreads <- ... bids <- midprices - 0.5 * spreads asks <- midprices + 0.5 * spreads # length(midprices) == num.points; length(spreads) == num.points ma.fast <- EMA(midprices, 15) ma.slow <- EMA(midprices, 50) # compute entry/exit signals open.long.position <- (ma.fast > ma.slow) & (ma.slow > midprices) close.long.position <- (ma.fast < midprices) open.short.position <- (ma.fast < ma.slow) & (ma.slow < midprices) close.short.position <- (ma.fast > midprices) signals.to.position <- function (num.points, signal.open, signal.close) { pos <- rep(NA, num.points) pos[signal.open] <- 1 pos[signal.close] <- 0 pos <- na.locf(pos, na.rm = F) pos[is.na(pos)] <- 0 pos } # compute strategy positions pos.long <- signals.to.position(num.points, open.long.position, close.long.position) pos.short <- signals.to.position(num.points, open.short.position, close.short.position) pos.total <- pos.long - pos.short # compute equity commission <- 1 trade.size <- c(0, pos.total[2 : num.points] - pos.total[1 : (num.points - 1)]) fees <- abs(trade.size) * (commission + 0.5 * spreads) equity <- midprices * pos.total + cumsum(-midprices * trade.size - fees) # compute balance balance <- rep(NA, num.points) balance[trade.size != 0] <- equity[trade.size != 0] balance <- na.locf(balance, na.rm = F) balance[is.na(balance)] <- 0 # display results par(mfrow = c(2, 1)) plot(midprices, t = 'l', col = 'gray', lty = 'dashed') lines(bids, col = 'blue') lines(asks, col = 'red') points(which(trade.size > 0, arr.ind = T), asks[trade.size > 0], col = 'blue') points(which(trade.size < 0, arr.ind = T), bids[trade.size < 0], col = 'red') plot(equity, t = 'l') lines(balance, col = 'gray', lty = 'dashed') Así de simple... ¿Desciframos las cuadrículas? [Eliminado] 2012.06.04 15:32 #48 TheXpert: Hmm. Quizá yo tampoco lo sepa. Todavía no lo he utilizado. ¿Tal vez por la asincronía? R puede trabajar de forma asíncrona y el probador no. Pero la asincronía sigue siendo exótica. [Eliminado] 2012.06.04 15:34 #49 tara: Es que, como todo... ¿Desciframos las cuadrículas? Eh.... sería R el lenguaje de la terminal, no mql. [Eliminado] 2012.07.10 11:26 #50 Por favor, ayuda. He introducido EURUSD en R. He calculado el modelo y calculado el coeficiente. ¿Cómo puedo dibujar un gráfico y combinarlo con el kotir? > x.ar<-ar(eur[1:256],method="mle") > x.ar Llama: ar(x = eur[1:256],method="mle") Coeficientes: 1 ........2.......... 3 0.9420 0.1955 -0.1644 Orden seleccionado 3 sigma^2 estimado como 2,73e-06 R - please share Teoría de los flujos Discusión sobre el artículo 12345678 Nuevo comentario
El problema de R es que no se puede ejecutar junto con un comprobador y no se pueden elaborar informes gráficos. =)
El problema con R es que no se puede ejecutar junto con el probador y dibujar informes gráficos. =)
Esto no es un problema de R, es un problema de los cajones de informes.
Para la investigación es suficiente con escribir un simple probador por sí mismo en cinco minutos.
library(TTR)
library(zoo)
# get some data
num.points <- ...
midprices <- ...
spreads <- ...
bids <- midprices - 0.5 * spreads
asks <- midprices + 0.5 * spreads
# length(midprices) == num.points; length(spreads) == num.points
ma.fast <- EMA(midprices, 15)
ma.slow <- EMA(midprices, 50)
# compute entry/exit signals
open.long.position <- (ma.fast > ma.slow) & (ma.slow > midprices)
close.long.position <- (ma.fast < midprices)
open.short.position <- (ma.fast < ma.slow) & (ma.slow < midprices)
close.short.position <- (ma.fast > midprices)
signals.to.position <- function (num.points, signal.open, signal.close) {
pos <- rep(NA, num.points)
pos[signal.open] <- 1
pos[signal.close] <- 0
pos <- na.locf(pos, na.rm = F)
pos[is.na(pos)] <- 0
pos
}
# compute strategy positions
pos.long <- signals.to.position(num.points, open.long.position, close.long.position)
pos.short <- signals.to.position(num.points, open.short.position, close.short.position)
pos.total <- pos.long - pos.short
# compute equity
commission <- 1
trade.size <- c(0, pos.total[2 : num.points] - pos.total[1 : (num.points - 1)])
fees <- abs(trade.size) * (commission + 0.5 * spreads)
equity <- midprices * pos.total + cumsum(-midprices * trade.size - fees)
# compute balance
balance <- rep(NA, num.points)
balance[trade.size != 0] <- equity[trade.size != 0]
balance <- na.locf(balance, na.rm = F)
balance[is.na(balance)] <- 0
# display results
par(mfrow = c(2, 1))
plot(midprices, t = 'l', col = 'gray', lty = 'dashed')
lines(bids, col = 'blue')
lines(asks, col = 'red')
points(which(trade.size > 0, arr.ind = T), asks[trade.size > 0], col = 'blue')
points(which(trade.size < 0, arr.ind = T), bids[trade.size < 0], col = 'red')
plot(equity, t = 'l')
lines(balance, col = 'gray', lty = 'dashed')
Ese no es el problema de R, es el problema de los dibujantes de informes.
Todo lo que se necesita es cinco minutos para escribir un simple probador usted mismo para la investigación.
library(TTR)
library(zoo)
# get some data
num.points <- ...
midprices <- ...
spreads <- ...
bids <- midprices - 0.5 * spreads
asks <- midprices + 0.5 * spreads
# length(midprices) == num.points; length(spreads) == num.points
ma.fast <- EMA(midprices, 15)
ma.slow <- EMA(midprices, 50)
# compute entry/exit signals
open.long.position <- (ma.fast > ma.slow) & (ma.slow > midprices)
close.long.position <- (ma.fast < midprices)
open.short.position <- (ma.fast < ma.slow) & (ma.slow < midprices)
close.short.position <- (ma.fast > midprices)
signals.to.position <- function (num.points, signal.open, signal.close) {
pos <- rep(NA, num.points)
pos[signal.open] <- 1
pos[signal.close] <- 0
pos <- na.locf(pos, na.rm = F)
pos[is.na(pos)] <- 0
pos
}
# compute strategy positions
pos.long <- signals.to.position(num.points, open.long.position, close.long.position)
pos.short <- signals.to.position(num.points, open.short.position, close.short.position)
pos.total <- pos.long - pos.short
# compute equity
commission <- 1
trade.size <- c(0, pos.total[2 : num.points] - pos.total[1 : (num.points - 1)])
fees <- abs(trade.size) * (commission + 0.5 * spreads)
equity <- midprices * pos.total + cumsum(-midprices * trade.size - fees)
# compute balance
balance <- rep(NA, num.points)
balance[trade.size != 0] <- equity[trade.size != 0]
balance <- na.locf(balance, na.rm = F)
balance[is.na(balance)] <- 0
# display results
par(mfrow = c(2, 1))
plot(midprices, t = 'l', col = 'gray', lty = 'dashed')
lines(bids, col = 'blue')
lines(asks, col = 'red')
points(which(trade.size > 0, arr.ind = T), asks[trade.size > 0], col = 'blue')
points(which(trade.size < 0, arr.ind = T), bids[trade.size < 0], col = 'red')
plot(equity, t = 'l')
lines(balance, col = 'gray', lty = 'dashed')
Así de simple...
¿Desciframos las cuadrículas?
Hmm. Quizá yo tampoco lo sepa. Todavía no lo he utilizado.
Es que, como todo...
¿Desciframos las cuadrículas?
Por favor, ayuda.
He introducido EURUSD en R. He calculado el modelo y calculado el coeficiente. ¿Cómo puedo dibujar un gráfico y combinarlo con el kotir?
> x.ar<-ar(eur[1:256],method="mle")
> x.ar
Llama:
ar(x = eur[1:256],method="mle")
Coeficientes:
1 ........2.......... 3
0.9420 0.1955 -0.1644
Orden seleccionado 3 sigma^2 estimado como 2,73e-06