Hacker News new | comments | show | ask | jobs | submit login
Python for Finance (amazon.com)
127 points by mjhea0 on May 1, 2014 | hide | past | web | favorite | 61 comments

Does anyone know if this is any good? I don't think that Packt is a particularly reputable publisher. They published a similar book about Haskell (called "Haskell Financial Data Modelling and Predictive Analytics") which was absolutely terrible - useless for learning anything about Haskell, finance, data modelling or predictive analytics.

You can find a commentary on that book here on Reddit[0].

I hope this book is better, but I will withhold judgement until someone comes along who's read it and is able to give an informed opinion.

[0] http://www.reddit.com/r/haskell/comments/1rj2jq/book_haskell...

The modelling the book covers is the best of the best. Not sure about the content of the book itself, but the Finances seem straight on.

I don't think I would call CAPM, the Fama-French 3-factor model, VaR, Black-Scholes and GARCH "the best of the best".

I would probably call the selection of topics "finance basics that no one in industry uses any more".

It may be suitable as a beginner's guide if the quality of the exposition is good enough, but my suspicion is that you would be better off getting a copy of "Python for Data Analysis" and a decent quant finance textbook.

"No one in the industry uses anymore"? Really?

Fama and French are still industry leaders, and they use the three factor model as the foundation of all of their portfolio management at Dimensional Fund Advisors, hands down the most successful mutual fund in existence. http://us.dimensional.com/process/multifactor.aspx

They continue to out-perform active fund managers, and they power a boat load of the investments for many American Corporations. And those American Corporations love to watch their money grow.

What makes you think these models don't still power successful financial products today?

I highly doubt Dimensional are using a three factor model to manage their portfolios. Typical multi-factor models these days can have anywhere from 10 to 100 factors.

The concepts of the three factor model are important to learn but implementing one in practice is rarely done. These core factors are too crowded these days as all the quant funds are looking at the same factors.

You're talking about active management. That is not what DFA does so you clearly don't get the philosophy.

The page you linked to is Dimensional explaining their five factor model, and it sounds like they only use that as a basis for a more complicated model.

The very example you gave to support your point actually detracts from it.

I dunno... Looking through the table of contents there's pretty good coverage of a lot of very specific research that goes well beyond basic capm/ff/var/bs/garch.

The goal of this book is clearly not going to be to teach you finance but rather to provide you with enough of the basics and beyond so you basically have all the tools needed to move forward.

Was very pleasantly surprised to see some of the stuff in the table of contents (ie. Pastor and Stambaugh's liquidity measure).

Will order this as I think it'll be a great reference.

Recommendations on the latter?

First of all, there's no "decent quant finance book" in existence.

But there are attempts at it. Most notable are:

- "An Introduction to the Mathematics of Financial Derivatives", by Neftci

- Wilmott books aren't bad.

- Brigo's "Interest Rate Models" is... flaky. It is a lot of material and seems to be quite rigorous, until some point most crucial for understanding, which gets skipped over. The interviews with traders at the end are good.

- Only buy Choudhry books, if you want to talk good about finance.

The gold standard for quant books: Hull's Options, Futures, and Derivatives.


This is very much a beginner's book. When I interviewed for internships in the summer of 2008, the interviewers expected that I would already be familiar with a large portion of the content of this book.

It really depends on what you're trying to achieve. The skills and knowledge necessary for long-term equity investment, short-term statistical arbitrage, derivative pricing and high-frequency trading are all quite different.

Investment Science by Luenberger

I took computational investing on coursera, which seems to have some overlap with the contents of the book. Course involves building and back testing stock trading strategies in python.


Is that the Georgia Tech/Tucker Balch course?

I'm amazed that GT let him teach that course. It's full of errors, omissions and bad habits. I vaguely followed along, and the most noticeable thing was how much the students complained about the low quality of the course.

The only result of someone implementing the advice in that course is that they'd lose a lot of money quite quickly.

That course isn't really well done. There are much better quant courses out there on Coursera.

Do you have get some profit using these strategies?

no, because the prof that teaches this course still didn't make any money using these strategies, otherwise he would be on his yacht in French Riviera

Shameless plug: my site Tradewave would be an ideal place to try some of these techniques out. We let you write automated trading algorithms for cryptocurrencies, in the browser, with Python.


Interesting. I've been working on a trading bot (for Bitstamp) written in Python and this comes pretty close to what I had in mind :)

Feel free to drop me an email if you have any feature requests.


Having struggled hard with the problem of remote Python code execution before, I'm quite interested how you're doing it. Mind sharing?

Essentially you can't sandbox CPython at the interpreter level, it's too introspective (I do it anyway though, just as a first level of defence). You need sandboxing at the OS level.

Happy to go into more details by email.

I expect this one will be better:


Looks interesting. Can you elaborate on why you think it will be good? Glad to see they're using Pandas.

I am the author of the O'Reilly book.

The book mainly covers chapter by chapter "all you need" to do Finance with Python. From data structures, performance Python, (Bayesian) statistics, stochastics to Excel integration and Web technologies.

It also provides -- in addition to many smaller examples and use cases -- a larger case study about a complete, integrated derivatives pricing library.

Here the table of contents as it stands now (work still in progress! Early Release covers chapters 4-7, 1-3 and 8 will be added soon):


Looks very interesting. Is the table of contents final? I didn't see any mention of fixed income. Will this book serve as a good intro for a programmer from the equities world (no specialized math or finance training)?

No, the TOC is not final, but mainly. It is true, the examples are more from the equities world. However, the approach is not to show Python for equities, fixed income, commodities, trading, risk, etc. It is to show Python (technical) topic-by-topic (data, viz, IO, Excel, Web, etc.).

Adding to this: yes, the book should serve as a good intro to Python for people with an equities background. But it should also useful for people with a different financial background.

Thanks, I actually meant how useful this book will be for professional programmers who want to understand financial math? (btw, I actually bought your book already :) )

Is there a list I can subscribe to, to be notified when the book is finished?

Best to follow me on Twitter -- @dyjh

This book is written by Yves J. Hilpisch a premier figure in the big data python world and great teacher. He has another more advanced book, which I loved, called Derivative Analytics with Python[0] and has given many well known and received talks.

Note, I am Continuum Analytics[1] alumni, of which is Yves J. Hilpisch is the European director and whose CEO was the lead contributer to NumPy for many years.

So my endorsement is not against Packt's Python for Finance but rather for O'Reillys Python for Finance based on previous work and experience of the Author.

[0] http://www.python-for-finance.com/ [1] http://continuum.io/

The author is pretty well known in the (very narrow I suppose) circle of quants using Python. He has a company working in the field[0] and also works for Continuum Analytics[1] which are the guys doing very interesting things in PyData community.

[0] http://www.derivatives-analytics.com/ [1] http://continuum.io/our-team

Continuum make a free alternative python distribution, Anaconda, which is listed on python.org as an alternate. They also sell other python tools on top of Anaconda.

In addition to the many, many libraries included with Anaconda, it installs ipython (and ipython notebook). I believe using Anaconda is among the easiest ways to get ipython on Windows, and you get all the other libs too.

For windows, I have been using python(x,y)--it's huge, but it works :-)

By the same author, "Derivatives Analytics with Python":


Is this book available in a DRM free format? I’m blind and attempting to read the book word by word on my iPhone to follow code samples and then entering them in the computer is not worth it.

Can I bother you with some accessibility questions? (Sorry HN but no contact info in profile) I am currently converting a giant (2800+ pages) government pdf[1] to markdown so that it can be converted to html/epub/latex/etc. I am casually aware of the DAISY file format but have not found any free software tools for creating DAISY files. Is there anything I can do that would be better for you than DRM free epub/mobi files and/or plain markdown text files?

[1]: http://www.gpo.gov/fdsys/pkg/GPO-CONAN-2013/pdf/GPO-CONAN-20... -- http://www.gpo.gov/fdsys/pkg/GPO-CONAN-2013/content-detail.h...

Will try to look at that site tonight. I've updated my profile with contact info.

Many thanks. When I have something close to a final product I will get in touch with you.

How are you converting it?

The initial bit is kind of easy. I am just using pdftotext. This is a simplification (I actually use one txt file per page grouped by section):

  PDFOPT='-x 0 -y 160 -W 556 -H 553 -nopgbrk -layout'
  pdftotext $PDFOPT pdfs/GPO-CONAN-2013.pdf out.txt
Things get tricky after the raw txt is created. Once I have the raw output the conversion is a lot of shell scripts and elbow grease. I have not yet been able to create a workflow that is completely automated. The part I am currently struggling with is the footnote replication (footnote extraction is pretty easy with csplit) and the ability to recreate the index. There are thousands of footnotes (as in some sections have thousands of footnotes) and the numbering resets with each section. I think I am going to use python to recreate the footnotes in markdown format.

Once I have the converted it to markdown I am going to use pandoc for output formatting.

Are you familiar with CONAN? It is an amazing work of scholarship, I don't know how to express my appreciation without resorting to hyperbole. It is a shame that it is distributed in a format that does not allow it to shine like it could. There are some neat legal citation extraction scripts in node.js that could lead to a really useful web version. I look forward to the day I can add it to my kindle and read it from start to finish.

Yes. While it costs a few dollars more than Amazon, you can buy it from the publisher here: http://www.packtpub.com/python-for-finance/book

Packt says that their ebooks are DRM free in the "Pactk Facts" section here: https://www.packtpub.com/about

Like other tech publishers, they frequently have discount codes on their ebooks, though $20 doesn't seem expensive if the information is useful.

I have bought two or three Packt books.

They have very light DRM: they print your name (or whatever you give them as your name) in the book. There are no copy prevention measures, they're just straight pdf or other format.

It's actually a nice compromise.

I've ordered a copy of this book.

I have a coy of Haskell Financial Data Modelling, which someone else had asked about.

I don't want to be too negative, but I didn't get too much out of this book. It moves pretty slow when explaining both Haskell and the financial content. To be fair, this might be considered an advantage if you are new to both.

It also doesn't really give you alot of "actionable code" that you can drop into an existing system. Each chapter is an introduction to large subjects, so I guess by definition the author can't dive very deeply.

In contrast the posted book seems to cover a bit more ground and seems to include on graphing and practical applications of black scholes, which is nice.

I'll post a review once I've read it.

I would be more forthright - the Haskell book was a travesty that never should have been published and I wouldn't want to inflict it on anyone (I have experience with all three of Haskell, quant finance and modelling & analytics and I am confident in saying that the Haskell book is useless).

One of the projects on my back burner is to write a decent financial library for Python. The closest out there is numpy.financial, but it is not well done. I have contributed bug fixes to some of the functions but have not done a comprehensive overhaul, and I question whether numpy is where financial functions should live. A standalone library would be simpler, except for the fact that having access to scipy's numerical solver is handy for some functions. My proposed starting point would be a library that covered the financial functions available in Excel.

Is this something you think you'll get to in the near future? and is there a way I could stay updated about such a library?

The SWIG bindings for QuantLib are quite good, no?

Maybe it's news because the Kindle price is discounted?

I don't know the book, but anyone interested in financial modeling in Python should check out https://datanitro.com/ and their Excel API https://voyager.datanitro.com/. Definitely a big improvement over Visual Basic macros.

In my O'Reilly book I also cover Excel integration, both without and with the DataNitro solution.

I hope not. I quote:

    I show how to use Python, free software, as a financial calculator to estimate 
    PV, FV, PV of annuity, to estimate effective rates, beta and more. 
I can literally do that with the built in functions of pocket calculator. Doing that in Python isn't very interesting. It will take some huge steps in only 321 pages to get to proficient use of NumPy and co from there.

I've been working on a free finance application in python if anyone want's to help: https://github.com/scoofy/wxStocks

It's not yet really functional, but i've been working on it for a while, and it scrapes yql and some morningstar pretty well.

I'm pretty excited about QuantStart's up-coming book+code:


It is in a similar vein: python + finance. Based on the depth of the blog posts, I expect a lot of good content.

Any suggestions for a intro to finance text? I am pretty good with python already, should I wait for the oreily book?

Just went through the table of contents. There are some interesting topics in there. You can go through them here: http://www.packtpub.com/python-for-finance/book

I have read several of Packt's titles, and their quality is inconsistent.

This is news how? Isn't this what reviews are or on Amazon?

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact