R - あなたの経験をお聞かせください - ページ 5

 
Rの問題点は、テスターと連動して実行できないことと、グラフィカルな レポートが描けないことです。=)
 
wise:
Rの問題点は、テスターと連動して実行できないことと、グラフィカルなレポートが描けないことです。=)
何がそれを防いでいるのか?
 
どうだろう。forexfactoryで話題になってるのを見ただけだけど。もしかしたら、勘違いしていたかもしれませんね。=)
 
ふむ。たぶん、私もわからないと思います。まだあまり使っていない。
 
wise:
Rの問題は、テスターと連動して動かし、グラフィカルなレポートを描くことができないことです。=)


これはRの問題ではなく、レポートの引き出しの問題です。

研究のためには、自分で簡単なテスターを5分程度で書けば十分です。

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')

 
MT5 + Rを動作させることができた方はいらっしゃいますか?
 
anonymous:


それはRの問題ではなく、レポートの引き出しの問題です。

研究のために自分で簡単なテスターを書くのに必要な時間は5分程度です。

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')

単純な話ですが...。

グリッドを解読してみようか?

 
TheXpert:
ふむ。たぶん、私もわからないと思います。まだあまり使っていない。
非同期だからかな?Rは非同期で作業できるのに、テスターはできない。しかし、非同期はやはりエキゾチックです。
 
tara:

ただ、何でもそうなんですが...

グリッドを解読してみようか?

えー...。は、mqlではなく、端末言語のRでしょう。
 

よろしくお願いします。

RでEURUSDを入力しました。モデルを計算し、係数を算出しました。 チャートを描き、コティルと組み合わせるにはどうしたらよいでしょうか。

> x.ar<-ar(eur[1:256],method="mle")

> x.ar


コール

ar(x = eur[1:256],method="mle")。


係数です。

1 ........2..........3

0.9420 0.1955 -0.1644


3 σ^2が2.73e-06と推定されるオーダーを選択。