1

OBV 計算に関するいくつかの参考文献を次に示します。

  1. http://ta.mql4.com/indicators/volumes/on_balance_volume
  2. http://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:on_balance_volume_obv
  3. http://en.wikipedia.org/wiki/On-balance_volume

TTR パッケージの OBV 関数のソース コードに移動すると、次のように表示されます。

"OBV" <-
function(price, volume) {
    # On Balance Volume
    price <- try.xts(price, error=as.matrix)
    volume <- try.xts(volume, error=as.matrix)

    if(!(is.xts(price) && is.xts(volume))) {
        price <- as.vector(price)
        volume <- as.vector(volume)
    }
    obv <- c( volume[1], ifelse( ROC(price) > 0, volume, -volume )[-1] )
    obv <- cumsum( obv )
    if(is.xts(obv)) {
        obv <- xts(obv,index(price))
        colnames(obv) <- 'obv'
    }
    reclass( obv, price )
}

参照 Web ページの等値ケース (今日の終値が昨日の終値と等しい場合に発生することを意味します) は、OBV 関数の実装には存在しないことがわかります。

それはバグですか、それともパッケージの承認ですか? バグの場合、どこに報告すればよいですか?

ありがとう、

4

1 に答える 1

1

これはバグのように見えるので、報告しました。今後数日のうちに修正できるはずです。

一般に、パッケージのメンテナー (この場合はたまたま私) に尋ねる必要があります。

于 2015-04-22T16:48:24.363 に答える