日付形式のデータ系列があります。始値高値と終値 (価格)。データのクローズ列の極大値と極小値を作成したいと考えています。さらに、極小値 @ 終値の 2 日間後に買い、極値 @ 終値の 2 日間後に売りたいと考えています。さらに、同じ利益と損失を計算したいと思います。同じコードは以下のとおりです。
require(quantmod)
tckr1<-"^NSEI"
start<-Sys.Date()-200
end<- format(Sys.Date(),"%Y-%m-%d") # yyyy-mm-dd
getSymbols(tckr1, from=start, to=end)
data<- NSEI$NSEI.Close
data$n <- 1:nrow(data)
data$z <- ZigZag(data$NSEI.Close , change = 2 , percent = T)
data$level<- data[c(findPeaks(data$z) , findValleys(data$z)) - 1 , ]
data$NSEI.Close.1<- NULL
data$n.1<- NULL
data$trade<- lag(data$level,2)
ここで、+1 と -1 でいつ売買するかを教え、同じ利益と損失を計算するデータ列が必要です。この上記のデータでは、n= 29 @ 5719.70 の場合、n=36 @ 5851.20 の場合などに購入します。
よろしくアシッシュ