2016-07-24 14 views
1

Gibt es ein Paket für R, das bereits Keltner Channels implementiert, versuche ich herauszufinden, in welchem ​​Channel der Tagesschlusskurs positioniert ist (-3, -2, -1, 1, 2, 3)R Keltner Channels

Ich fand die ATR-Funktion in TTR, aber ich bin nicht sicher, ob es eine Möglichkeit gibt, es zu verwenden, was ich versuche zu bekommen ist etwas, was dem Link ähnlich ist, ich brauche nur die Werte, nicht die Grafik, so dass ich

Keltner Channels : StockCharts.com

Keltner Channels

den Tagesschlusskurs vs den Kanälen vergleichen

Jede Hilfe, die mich auf die richtige Richtung zeigt, wird geschätzt

Antwort

1

Diese Art von Vorlagencode wird Ihnen helfen, das zu bekommen, was Sie speziell wollen. Wählen Sie Ihre eigenen Werte usw.

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 (Zusammenführen, Auflisten (lo, mid, hi))' ist unnötig. Verwenden Sie die TTR-Funktionen als Vorlage und verwenden Sie das Paradigma 'try.xts' /' reclass'. Dann können Sie die 'Reduce'-Zeile durch' keltner <- cbind (lo, mid, hi) 'ersetzen. –

+0

@Joshua Ulrich Danke für den Hinweis – FXQuantTrader