only~ 先頭〇個だけsum/mean(R言語自分用メモ)
シストレ検証用ソフトを作ってて、ある条件のトレードを抽出、結果を集計し、期待値が~、PFが~、資産曲線グラフが~、、、、
ってやっているわけですけど
たとえば、ある日に100個も買いシグナルが出て、とかの場合、全部トレードするには相当な資金力が必要になるのですが、まあ無理なので、そこも考慮しないといけない
で、資金を設定し、厳密にシミュレーションすればいいけど、まあ、ちょっと簡単に傾向だけみたいので、、、、
と、折角ソートしたので、データの先頭〇個だけ処理すれば、ある程度資金限定はできる(厳密ではないが)
ということで新しく以下の関数を作成
先頭y個だけのデータを処理してくれる
-----------------------------------
#データべクトルxの先頭y個のみ処理
onlymean <-function (x,y) {
n<-length(x)
names(x)<-1:n
mean(x[1:y],na.rm=TRUE)
}
onlysum <-function (x,y) {
n<-length(x)
names(x)<-1:n
sum(x[1:y],na.rm=TRUE)
}
----------------------
nemes()で先頭から番号を振り、番号順1~yだけ処理する
names()を使う発想が出るようになったので、ちょっとはR言語使いなった感じがするw