TTR is an R package that provides the most popular technical analysis functions for financial market data. Many of these functions are used as components of systematic trading strategies and financial charts.
Professionally-supported TTR now available
Tidelift gives software development teams a single source for purchasing and maintaining their software, with professional-grade assurances from the experts who know it best, while seamlessly integrating with existing tools.
Supporting TTR through Patreon
If you are interested in supporting this project, please consider becoming a patron.
The current release is available on CRAN, which you can install via:
To install the development version, you need to clone the repository and build from source, or run one of:
# lightweight remotes::install_github("joshuaulrich/TTR") # or devtools::install_github("joshuaulrich/TTR")
You will need tools to compile C, C++, and Fortran code. See the relevant appendix in the R Installation and Administration manual for your operating system:
Here are a few examples of some of the more well-known indicators:
# "TTR Composite" (simulated data) data(ttrc) # Bollinger Bands bbands <- BBands( ttrc[,c("High","Low","Close")] ) # Directional Movement Index adx <- ADX(ttrc[,c("High","Low","Close")]) # Moving Averages ema <- EMA(ttrc[,"Close"], n=20) sma <- SMA(ttrc[,"Close"], n=20) # MACD macd <- MACD( ttrc[,"Close"] ) # RSI rsi <- RSI(ttrc[,"Close"]) # Stochastics stochOsc <- stoch(ttrc[,c("High","Low","Close")])
TTR works with the
chartSeries() function in quantmod. Here's an example that uses
chartSeries() and adds TTR-calculated indicators and overlays to the chart.
# "TTR Composite" (simulated data) data(ttrc) # Use quantmod's OHLCV extractor function to help create an xts object xttrc <- xts(OHLCV(ttrc), ttrc[["Date"]]) chartSeries(xttrc, subset = "2006-09/", theme = "white") addBBands() addRSI()
Have a question?
Please see the contributing guide.