Scott Sanderson: Developing an Expression Language for Quantitative Financial Modeling
986 views · Published 4 December 2015 · 34:32 · Indexed 19 October 2026
Channel: PyData · 2015 · Science & Technology
PyData NYC 2015 We discuss the design and implementation of zipline.modeling, a new component of the backtesting engine that powers Quantopian. Drawing inspiration from libraries such as SQLAlchemy, Dask, and Theano, we develop a declarative API for concisely describing efficient computations on financial data. Along the way, we consider some of the unique challenges of computing in the financial domain. This talk details the challenges addressed during the development of Zipline's new Modeling API, which provides a high-level expression language allowing users to describe computations on rolling windows of continuously-adjusted financial data. We discuss the notion of "perspectival" time-series data, arguing that this concept provides a useful framework for formally reasoning about financial data in the face of domain oddities like stock splits, dividends, and restatements. We also consider the architectural and performance benefits of developing an API focused on symbolic computation, drawing comparisons to several recent developments in the Python numerical ecosystem. Slides available here: http://www.slideshare.net/ScottSanderson5/developing-an-expression-language-for-quantitative-financial-modeling. They're also available on SpeakerDeck here: https://speakerdeck.com/ssanderson/developing-an-expression-language-for-quantitative-financial-modeling The notebooks and underlying assets are on GitHub here: https://github.com/ssanderson/pydata-nyc-2015 00:00 Welcome! 00:10 Help us add time stamps or captions to this video! See the description for details. Want to help add timestamps to our YouTube videos to help with discoverability? Find out more here: https://github.com/numfocus/YouTubeVideoTimestamps
More from this channel
-
31:23
Kostas Perifanos - Authorship Attribution Using Python
-
31:08
Prash Majmudar - Measuring the Digital Economy Using Big Data
-
36:26
Ian Ozsvald - The High Performance Python Landscape
-
37:48
Mike Muller - Shared Memory Parallelism with Python
-
35:01
Martin Goodson - Most Winning A/B Test Results are Illusory
-
30:19
Mark Basham - Python for High Throughput Science
-
1:13:42
David Cournapeau & Simon Jagoe - Narrowing the Gap Between Array Computing and Databases
-
31:38
Emlyn Clay - Phython, Pharmaceuticals & Discovery