Over the years I have written quite a few posts on finance and financial mathematics, based on the work I was doing at the time as a derivatives quant within various investment banks. Some of my post popular posts have been: How to calculate option prices in your head How to understand fixed-income trader jargon … Continue reading Introduction
On 7th December 2017 I gave a presentation at CodeNode (London UK) in which I showed how to set up a Spark cluster on AWS spot-requested instances. You can find the meeting notes on the Full Stack Quants website -- there is a link to a video recording of the session as well as links … Continue reading Setting up a Spark cluster on AWS
One of the great things about Python is the way you can easily juggle items around in collections -- lists, dictionaries, sets -- and the shortcuts you get when you combine them. For example, to get a unique collection of elements in a list: list(set(my_list)) will do it. Similar things happen in Smalltalk but these … Continue reading Smalltalk collections for Python coders
Nice collection of tutorials here. PDF crib sheet here. Nice collection of suggestions in StackOverflow here. Some code for GDB which displays STL containers in a more friendly way, halfway down here. Nice tutorial which gives a bit more depth on tui here.
[ This is an article that I started writing a few years back, when I was experimenting with Puppy Linux, then put on hold. Much of it is still useful, so the post merits to go public. ] Having written a walk-through on how to set up a Linux system ready for compiling software (see here), … Continue reading Setting up QuantLib in Linux
The principle of pricing in the risk-neutral measure is the foundation of quantitative analysis. I have already written a post which gives an intuitive description of the concept of a risk premium and which discusses some aspects of the risk-neutral approach (see here). In this post I want to look again at risk-neutral pricing. It … Continue reading The easy route to risk-neutral measure pricing
What does TDD achieve? If you are pair programming, TDD is excellent because it keeps the pair communicating on the same level. If you have an idea then you have to represent it as a test and the other person can follow your idea more easily. Should you always write a test first? I think … Continue reading TDD and your solution domain
This is a good example here of a bad explanation of FP: basically saying that FP is intelligent whilst non-FP is dumb. I recently read a couple of blog posts by Kris Jenkins which give his answers to the questions: What is functional programming? Which languages could be said to be functional programming languages? I … Continue reading What is Functional Programming and what does it do for you?
A few years ago I came up with a useful improvement to the Jarrow-Yilidirm inflation model: let's diffuse the inflation curve rather than the real-yield curve. It turns out that this gives the modern inflation derivatives trader a much better risk management tool. In the attached paper I give the details. I wrote it up … Continue reading Improving the Jarrow-Yildirim inflation model
Of the many points made by Tom Preston-Warner in his article Open source (almost) everything, I particularly like the paragraph on why you should let your coders work on open source projects: ... dedication to open source code is an amazingly effective way to retain ... talent. Let’s face it, great developers can take their … Continue reading The value of open source
I use Underscore an awful lot. I have many good things to say about Underscore in the context of Functional Programming, but this post explains a simple one-liner which got my Underscore code quickly into our ever-increasing collection of TypeScript modules. This is not a long term, fully robust solution incorporated into our Grunt build … Continue reading TypeScript with Underscore, a simple Grunt way