17
R/quantstrat For Fun & Profit E. Allen ([email protected] ) Nov. 4 th 2013 Pittsburgh R Users Group Lightning Talk Motivation Why R/quantstrat? Overview: The Toolset Data Warehousing with XTS Modeling Backtesting

R/ quantstrat For Fun & Profit

  • Upload
    montana

  • View
    338

  • Download
    0

Embed Size (px)

DESCRIPTION

Motivation Why R/ quantstrat ? Overview: The Toolset Data Warehousing with XTS Modeling Backtesting. R/ quantstrat For Fun & Profit. E. Allen ( [email protected] ) Nov. 4 th 2013 Pittsburgh R Users Group Lightning Talk. Jan Humme , Brian Peterson @ R/Finance 2013: - PowerPoint PPT Presentation

Citation preview

Page 1: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit

E. Allen ([email protected]) Nov. 4th 2013

Pittsburgh R Users Group Lightning Talk

MotivationWhy R/quantstrat?Overview: The ToolsetData Warehousing with XTSModelingBacktesting

Page 2: R/ quantstrat For Fun & Profit

ReferencesJan Humme, Brian Peterson @ R/Finance 2013:http://www.rinfinance.com/agenda/2013/workshop/Humme+Peterson.pdf

Guy Yollin, quantstrat/blotter lecture notes:http://www.r-programming.org/papers

Blair Hull @ R/Finance 2012:http://www.rinfinance.com/agenda/2012/talk/BlairHull.pdf

My Blog: http://ww.biglucre.com/

This presentation focuses on brevity and perceived gaps in more comprehensive resources. Slides will be available.

Page 3: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Motivation

Quantitative Trading Motivation

• Profit!

• But, it’s risky – not good for regular income to pay the rent. Don’t quit your day job – unless you’re working for a group that really knows what they’re doing.

• But, it is also interesting!

• Not as expensive as you might think to trade –except for High Frequency.

Page 4: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Why R/quantstrat?

Why R/quantstrat?

• Features – Leveraging framework with much of what commercial packages offer.• Flexibility – Ability to change for own use.• Cost • Used in professional trading firms. • From Blair Hull: xts, xtime, indexing, sde, monomvn, lars, fUnitRoots, fGarch, manova • Proprietary trading firm contributions, even those with large operations.

Page 5: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: The Toolset

The Toolset (from Humme/Peterson)

Page 6: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: The Toolset: quantstrat

The Toolset: quantstrat• Part of the TradeAnalytics package• https://r-forge.r-project.org/projects/blotter/ • Not yet available on CRAN (under heavy development)

• Installing quantstrat: • http://biglucre.com/environment/ (Linux/from source)• or, you can try:install.packages("quantstrat", repos="http://R-Forge.R-project.org")

Page 7: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: The Toolset: quantstrat

The Toolset: quantstrat• Recommended Reading: Trading Systems: A New Approach to System Development and Portfolio Optimisation by Tomasini and Jaekle

• This text follows the development and testing of a simple system, Luxor which is featured in several quantstratdemos.

Page 8: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: The Toolset: quantstrat

Professional+Commercial Tools will provide:1. Data Warehouse2. System Development3. Production Strategy Deployment

R/quantstrat can be used for 1 and 2 – maybe 3.

Page 9: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: The Toolset: quantstrat

Toolset: quantstrat (from Humme/Peterson)

Page 10: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: The Toolset: quantstrat

Toolset: quantstratFunctional Programming Workflow

• Indicators and Signals add columns to mkdata xts object.• Applying a Strategy results in a blotter object that contains trade information, ready for analysis.• More advanced features include optimization methods and parallelization.

Page 11: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Data Warehousing

Data Warehousing• Acquire Data• Record from feed (IQFeed, Interactive Brokers)• Purchase (tickdata.com, IQFeed 6-mo backfill)

Code for the following forthcoming at www.biglucre.com • Import Data• Use read.csv, convert to xts, name columns for BBO or OHLC data

• Use FinancialInstrument SaveSymbols()/getSymbols.FI to• save xts data into daily .rda data files• load/merge subsets of daily data into xts objects

Page 12: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Modeling

Modeling

R offers many useful packages. Some examples:

• urca: Unit root and cointegration tests for time series datahttp://cran.r-project.org/web/packages/urca/index.html

• fGarch: Rmetrics - Autoregressive Conditional Heteroskedastic Modelling http://cran.r-project.org/web/packages/urca/index.html

Page 13: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Backtesting

Backtesting (from Humme/Peterson)

Page 14: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Backtesting

Backtesting (from Humme/Peterson)

Page 15: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Optimization

Optimization/Parallelization (from Guy Yollin)

Page 16: R/ quantstrat For Fun & Profit

R/quantstrat For Fun & Profit: Questions?

Questions?

Page 17: R/ quantstrat For Fun & Profit

Appendix A: Equity curve for a strategy under development.