003 - Pure, Functional, Financial Python Katas

When Paul Wilmott introduces Quantitative Finance, from the very beginning he pastes over reality with mathematical objects.

E.g. it is reasonable to assume that "stocks move in a geometric random walk".

This approach has been hotly debated, but for better or worse it gives us a clean understanding of mathematical things which may or may not help us in the real world (depending how we use them).

Computer science has the opposite problem, historically it has eschewed mathematics in favour of complicated programming languages which are not mathematically clean.

That is the purpose of these katas, using lambdas will give us a stricter more mathematically tractable understanding of our programs.


Wilmott describes random walks with help of a spreadsheet example.

Today's exercise is to translate the spreadsheet into Python code, again only using lambda (i.e. as always, no functions, variables, objects etc).