Magic Ink

March 1, 2012

Thanks to reddit I’ve just discovered Bret Victor. I watched the Invention video, and enjoyed the whole theme on tightening the feedback loop between changing code and seeing results. The later part on moral crusading was interesting if not entirely convincing. So I checked out the web site, and am reading Magic Ink. Wow ! This is a full blown vision of doing software differently. Back in the 90s I got really excited by, in turn, Brad Cox’s vision, Patterns, and Open Source. About 10 years ago I discovered dynamically typed languages with Python and Smalltalk. And that’s the last time I had a real rush of excitement about some new approach in software. Sure, I’ve dabbled in functional languages like F#, and played with various OSS projects. But for the most part my attention has been on the trading topics that fascinate me, like electronic limit order books.

So what’s Magic Ink about ?  Victor divides software into three categories: information, manipulation and communication software. He focuses on information software, which is most apps really. And that includes most financial and trading apps. And then he proceeds to argue that there’s too much interactivity, and that interaction is bad. The way forward is context sensitivity combined with history and graphic design. Counterintuitive, and utterly convincing. A joy to read !

I can’t help wondering what the UX crew over at Caplin think of this ?  I haven’t seen them blogging on it. Victor’s views have radical implications for how etrading apps should work. I’d expect Sean Park to be pushing this angle with his portfolio companies too…

Fascinating post from Quantivity – I’m hoping for more on the same topic from him. Many of the advantages listed would be enjoyed by any small non real money fund: hedge, prop, family office etc. Of course there are some serious obstacles that small (relatively) unregulated funds face, and Lars Kroijer describes them in detail in Money Mavericks. And a lack of legacy technology is indeed an advantage in building trading systems quickly. A relatively recent pre existing framework, either from vendor or in house built can be a big advantage though. A classic example is gateways for exchange/ECN connectivity.

Fascinating blog on HFT implementation from WK. He commnts “a variation on this structure is to store the Limits in a sparse array instead of a tree. ”  More detail on the implications for L1 and L2 cache behaviour of trees versus arrays for limits would be welcome. I’m assuming C++ implementation here of course, though WK points out you can make Java go fast if you avoid GC, which chimes with the experience of the LMAX guys. I ask because I interviewed with a big HFT firm last year: they gave me a programming exercise based on L1/2 cache behaviour.

The Greatest Trade Ever

February 1, 2011

I’m reading Zuckerman’s Greatest Trade Ever, an accout of how John Paulson’s hedge fund profited from the credit crunch. There’s a lot of anecdotage and general background. But among all that there’s some good detail on implementation. How to implement a view of the markets as a trade is a key question for any trader. Drobny’s House of Money is excellent on this. Zuckerman’s book as some good stuff on why shorting the bonds or equity of home loan origination companies didn’t work, why CDSs on sub prime MBSs didn’t become tradeable til 2005, and why they were the right vehicle for shorting. Also on why using CDSs means negative carry, and why that’s generally a difficult thing for any portfolio. Taleb has some good comments on why his out the money options strategy suffered from the same problem.

LMAX conference

January 28, 2011

So I’ve signed myself for the LMAX UCL algo trading conference – see you there !  I’m looking forward to Martin Thompson’s talk, and hoping I can bend his ear on a few server engineering questions over drinks at the end of the afternoon. I’m also keen to know more about the LMAX market design. In the infoq presentation I linked earlier there are some intriguing comments about ensuring low and stable latency for market makers. This makes me wonder what the terms are for market maker participation on the LMAX order books. Do market makers have a different API than market takers ? Do makers get processing priority for placing, pulling and amending orders ? Can maker orders cross with other maker orders, or only market taker orders ?

If an FX dealer quotes a currency rate – say USDCHF – as 0.9877 that means USD is the base currency and CHF the term currency. The rate quoted is CHF/USD, the number of Swiss Francs to the US Dollar. If a client trades at the quoted rate, then the dealt currency is the one that specifies the unit of the trade. So if USD is the dealt currency, and the trade size is 10,000,000 then we’re trading 10,000,000USD. Which means a trade size of 987,700CHF. In this case CHF is the contra currency.

CLOB stifles innovation ?

September 14, 2010

Thanks to Matt for the heads up on this article. In pt III Tusar asserts that Trade-At “essentially creates the CLOB [consolidated limit order book]–the thing that everyone agrees would stifle innovation.”  Now my knowledge of algo equity execution is certainly not state of the art. But it’s news to me that there’s a body of opinion that thinks CLOBs stifle innovation. Certainly the advantage of CLOBs is that they aggregate liquidity for a security, and provide a public, visible live price during trading, and a record of open and close prices too. They also tend to come with clearing arrangements. This is exactly the arrangement that the industry has been inching towards for the OTC stuff that was so problematic in 2008, with the introduction of swaps clearing, which should improve transparency.

I suspect that Tusar is talking his own book. Plus ca change !  Of cause major broker dealers like Goldman want “innovation” in the form of multiple dark pools and execution venues, including their own. That leads to fragmented liquidity, which causes opacity and hinders price discovery. Which is good for Goldman, and bad for clients who will need expensive Goldman execution services.

Update: there’s an enlightening discussion of Trade-At here.

Greek govt bonds

April 28, 2010

The price action on Greek government bonds over the last couple of days has been staggering. I’ve been watching the short end 2yr GGBs. Yesterday the yield went out from 14% in the morning, through 15% to 16% in the afternoon. This morning the yield hit 20% on the 2012 GGBs. At the time of writing it’s calmed down to 17%. This compares to yields of 0.8 to 2% for benchmark EGBs, depending on coupon.

For those not familiar with fixed income pricing, yields are inversely proportional to prices. Rising yields means falling prices. Prices are quotes as percentage of par. For benchmark German, French, Belgian or Dutch EGBs short end prices are ~99 to 105% of par. Bear in mind the coupons !  Those high GGB yields mean investors and speculators are only prepared to pay ~67% or 77% of par. Which reflects the market’s view of the default risk.

The flows are intriguing too, but I won’t comment here ;)

O’Kane on Asset Swaps

April 27, 2010

This is a good read for those interested in understanding the asset swap structure, and why asset swap margins are an integral part of bond quotes on Bloomberg and any single dealer channel.

Eurex Market Data

February 3, 2010

Eurex publishes a lot of intersting information about the heavily traded Euro Govt Bond futures, Schatz (2yr), Bobl (5yr) and Bund (10yr). You can see the trade volume on each contract for today here, together with the open interest. You can see a 15 min delayed price chart for Schatz here. But most interestingly, you can get access to historical order book data. You have to pay for it of course, but there’s a free sample in the big zip: a full day’s data for Bund on 23 Mar 2007 including all orders and trades. From this data one could reconstruct the state of the order book at any point during the day with disaggregated depth.