2

R でボリンジャー バンド戦略をバックテストするのに問題があります。ロジックは、終値がアッパー バンドよりも大きい場合はショート ポジションを取り、平均を超えたときにポジションをクローズするというものです。また、終値が下限バンドよりも低い場合はロング ポジションを取り、平均値を超えたときにポジションをクローズします。これまでのところ、これは私が持っているものです:

bbands <- BBands(stock$Close, n=20,sd=2)

sig1 <- Lag(ifelse((stock$Close >bbands$up),-1,0))

sig2 <- Lag(ifelse((stock$Close <bbands$dn),1,0))

sig3 <- Lag(ifelse((stock$Close > bbands$mavg),1,-1))

sig <- sig1 + sig2

...ここで行き詰まっていsig3ます。目的の結果を得るにはどうすればよいですか?

4

1 に答える 1