R - por favor, comparta sus experiencias - página 5

 
El problema de R es que no se puede ejecutar junto con un comprobador y no se pueden elaborar informes gráficos. =)
 
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?
 
No lo sé. Acabo de ver a gente en forexfactory hablando de ello. Tal vez me equivoque. =)
 
Hmm. Quizá yo tampoco lo sepa. Todavía no lo he utilizado.
 
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')

 
¿Alguien ha conseguido que MT5 + R funcione?
 
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?

 
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.
 
tara:

Es que, como todo...

¿Desciframos las cuadrículas?

Eh.... sería R el lenguaje de la terminal, no mql.
 

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

Razón de la queja: