Scott Sanderson: Developing an Expression Language for Quantitative Financial Modeling

986 views · Published 4 December 2015 · 34:32 · Indexed 21 September 2026

Channel: PyData · 2015 · Science & Technology

Watch on YouTube

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