2016-07-24 4 views
1

すでにKeltnerチャンネルを実装しているRのパッケージはありますか?私が見つけようとしているのは、毎日の終値がどこのチャンネルにあるかです(-3、-2、-1、 3)R Keltnerチャンネル

私はTTRでATR機能を見つけましたが、それを使用する方法があるかどうかはわかりませんが、私が得ようとしているのはリンクの説明と似たものです。ないグラフ、私はチャンネル対日々の終値を比較できるように

Keltner Channels : StockCharts.com

Keltner Channels

私に正しい方向を指示する助けがありがたいです

答えて

1

この種のテンプレートコードは、あなたが特に必要とするものを手に入れるのに役立ちます。あなた自身のn値などを選択してください。

library(quantmod) 
getSymbols("AAPL") 

get_Keltner_channels <- function(ohlc, n_EMA = 10, n_ATR = 14, multiplier = 2) { 
    mid <- EMA(Cl(ohlc), n_EMA)  
    hi <- mid + multiplier * ATR(HLC = HLC(ohlc), n = n_ATR)$atr 
    lo <- mid - multiplier * ATR(HLC = HLC(ohlc), n = n_ATR)$atr 
    keltner <- cbind(lo, mid, hi) 
    colnames(keltner) <- c("Kelt_lo", "Kelt_mid", "Kelt_hi") 
    keltner 
} 

out <- get_Keltner_channels(AAPL) 

# > tail(out) 
# Kelt_lo Kelt_mid Kelt_hi 
# 2016-07-15 94.26621 97.09092 99.91563 
# 2016-07-18 94.74742 97.58893 100.43045 
# 2016-07-19 95.27084 98.00367 100.73651 
# 2016-07-20 95.71888 98.35937 100.99986 
# 2016-07-21 95.83500 98.55403 101.27306 
# 2016-07-22 95.88848 98.57330 101.25811 
+0

'Reduce(merge、list(lo、mid、hi))は不要です。 TTR関数をテンプレートとして使用し、 'try.xts' /' reclass'パラダイムを使用します。 'Reduce'行を' keltner < - cbind(lo、mid、hi) 'に置き換えることができます。 –

+0

@Joshua Ulrichアドバイスをいただきありがとうございます – FXQuantTrader

関連する問題