R - あなたの経験をお聞かせください - ページ 5 12345678 新しいコメント Sergey Kovalyov 2012.06.03 16:40 #41 Rの問題点は、テスターと連動して実行できないことと、グラフィカルな レポートが描けないことです。=) TheXpert 2012.06.03 16:46 #42 wise: Rの問題点は、テスターと連動して実行できないことと、グラフィカルなレポートが描けないことです。=) 何がそれを防いでいるのか? Sergey Kovalyov 2012.06.03 16:57 #43 どうだろう。forexfactoryで話題になってるのを見ただけだけど。もしかしたら、勘違いしていたかもしれませんね。=) TheXpert 2012.06.03 17:00 #44 ふむ。たぶん、私もわからないと思います。まだあまり使っていない。 anonymous 2012.06.03 17:41 #45 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') R - please share Python in algorithmic trading Web Trading System (10%/mn) Serge 2012.06.03 18:26 #46 MT5 + Rを動作させることができた方はいらっしゃいますか? Алексей Тарабанов 2012.06.03 20:05 #47 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') 単純な話ですが...。 グリッドを解読してみようか? 削除済み 2012.06.04 15:32 #48 TheXpert: ふむ。たぶん、私もわからないと思います。まだあまり使っていない。 非同期だからかな?Rは非同期で作業できるのに、テスターはできない。しかし、非同期はやはりエキゾチックです。 削除済み 2012.06.04 15:34 #49 tara: ただ、何でもそうなんですが... グリッドを解読してみようか? えー...。は、mqlではなく、端末言語のRでしょう。 削除済み 2012.07.10 11:26 #50 よろしくお願いします。 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と推定されるオーダーを選択。 12345678 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
Rの問題点は、テスターと連動して実行できないことと、グラフィカルなレポートが描けないことです。=)
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')
それは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')
単純な話ですが...。
グリッドを解読してみようか?
ふむ。たぶん、私もわからないと思います。まだあまり使っていない。
ただ、何でもそうなんですが...
グリッドを解読してみようか?
よろしくお願いします。
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と推定されるオーダーを選択。