Back in April I posted on my use of tornado for real time push up to a browser client using websockets. Then I was building a proof of concept. I’ve come a lot further since; I’m now building the beta of my product. I’m still using tornado on the server side, and I’ve adopted Twitter’s Bootstrap framework for the browser GUI. There’s a bit of a learning curve to become productive in Bootstrap & jQuery. But it’s been worthwhile, and I’ve been pleasantly surprised by how far browser GUI development has advanced in the last five years. Anyway, the purpose of this post is to flag an excellent resource for anyone digging deeper into tornado server dev: Oscar Vilaplana‘s Tornado In Depth Europython talk. There’s no sound on that youtube video for the first couple of minutes, and even after that the audio is a little scratchy. But bear with it. Oscar spends an hour walking you through tornado based code and the supporting internals, and makes it all beautifully simple. All the examples from his talk can be found here on bitbucket. Thanks Oscar!

Banks as platforms

September 29, 2014

Zac Townsend‘s post on how Standard Treasury aims to turn banks into platforms is intriguing. There’s certainly no lack of ambition in his goal. But I do wonder if he’s setting himself to tilt against the very nature of both banks and platforms. One of the key phrases in Zac’s post is: “allowing developers to think of banks as platforms”. I’ll just unpack that a little. First, platforms, as explicated in Evans & Hagiu’s excellent Invisible Engines. Platforms are multi-sided markets. One side pays for access to the revenue generating customers that an effective platform aggregates by offering free or cheap access. For example, in gaming, game devs pay licenses to platform (console) owners so they can sell to gamers. The console manufactures sell consoles at or even below cost. In financial trading clients pay Bloomberg for access to information & liquidity, and dealers get access to the platform without paying fees to Bloomberg. Famously, Google and Facebook offer services free to consumers to enable them to sell to advertisers. So if banks are going to spend a load of cash adopting Standard Treasury tech so they can become more like real software platforms, who is going to pay?

Let’s bear in mind that banks are already liquidity platforms. They charge fees for access to the liquidity they provide by aggregating client capital. They disguise fees by making some things “free”, and charging for others when they cross sell. If you attempt to commoditise or aggregate by means of a software platform, they lose the cross sell, and so the margins. They will certainly resist that prospect. So, any software platform that integrates banks with with software services needs to offer the prospect of more margin in existing deal flow, or new deal flow to justify the cost of adoption. Judging by Zac’s post, it looks as if he thinks the new deal flow would come from the underbanked via mobile apps. Will that deal flow justify the cost of implementing Standard Treasury tech? I’m sceptical…

Standard Treasury should also be considering the cost of decommissioning those expensive legacy systems. In banking old and new systems tend to run in parallel until all stakeholders are confident that the new systems supports all legacy system functionality. So new tech that promises cost savings tends to cause a cost spike until the old system really has been put to bed. And, believe me, that can be a lengthy and painful process! I have first hand experience of systems that have resisted retirement for decades…

Going off topic here, as this isn’t etrading related, but I’ll blog it as I suspect others might be having problems with Windows 7 and 8 PCs dropping connections to BT HomHub 2 modem routers. If you’re connection only lasts for a few minutes, and then shows as “limited connectivity” it could be because recent Windows does DHCP differently than Homehub. I found an MS KB article that suggests adding a registry flag in HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters/Interfaces/{GUID}. The flag is called DhcpConnEnableBcastFlagToggle, it should be a DWORD, and be set to 1. There may be several GUIDs under Interfaces, depending on how many Wifi hubs your PC talks to. Look inside each and examine IP addresses to figure out which is the Homehub.

Penny jumping on EBS

September 20, 2012

EBS is an FX ECN owned and operated by ICAP, a cash FX equivalent to Bloomberg or TradeWeb. It’s been in decline for some time as flow shifts to single dealer platforms. Here’s an interesting NY Times article on how introducing an extra decimal place in their prices resulted in a fall in trading volumes. It’s an interesting illustration of how market microstructure choices can affect participant behaviour. A key phrase in the article is: “But that fifth decimal attracted super-fast computer traders, often disrupting the flow of liquidity on the EBS platform”

So how did the high speed traders disrupt the flow of liquidity ? Note that EBS’s cash FX trading is organised as a limit order book.  Introducing an extra decimal creates 10 times as many price levels in the order book, which in turn makes penny jumping much easier for quick automated trading strategies. Which is obviously going to piss off the other market participants, who end up paying the spread earned by the penny jumpers. Larry Harris has an excellent discussion of penny jumping it in his seminal “Trading and Exchanges”, but the Wikipedia link has an adequate explanation.

No doubt considerations like the ones above motivated the rates dealers making govt bond markets on MTS when they decided not to admit hedge funds.

Progress ?

June 6, 2012

prog21 blogs that progress in software tech is slower than one might think. I suggest it’s slower than even prog21 thinks, possibly negative even. Xerox had the Alto running in 1973, and it had a GUI & mouse, TCP/IP networking and a Smalltalk-72 programming environment. So how much fundamental progress has there been since 1973 ?

Single threaded async

April 11, 2012

This is an excellent explanation of the single threaded asynchronous model of programming. It’s refers to Twisted, but many of the points apply generally.

Lords of Finance II

January 11, 2010

Finished Lords of Finance over the Xmas break, and strongly recommend to any interested in financial history. The author concludes by summarising the causes of the Great Depression as four distinct crises: the German contraction in 1928, the Great Crash of 29, the US banking panics of 31-33 and the European financial crisis of 31. He compares these four to the Mexican peso crisis of 94, the dotcom crash in 2000, the recent credit crunch and the 97/8 Asian currency and Russian default crisis. Compelling stuff…

I’ve been interviewing C++ developers for years now, so I know that Alexandrescu, Meyers, Josuttis and Sutter are the thought leaders in C++ land. Interviewing JavaScript devs has taught me that their analogs in JavaScript land are Doug Crockford, Nick Zakas, Steve Heron and Dean Edwards.

Effective Boost

May 1, 2008

I’ve long been a fan of Scott Meyer‘s Effective C++, More Effective C++ and Effective STL series of books. I have a 1992 first edition of Effective C++ on my desk that’s been very well thumbed. Today I asked a colleague who’s a heavy hitting C++ expert for Boost book recommendation. He suggested Karlsson’s book, which looks OK. But we really need Scott to write a book on Boost. Bring it on please Scott !!

Clueless journos

May 30, 2006

The cluelessness of most journalists is a bit of a pet theme for me. It shouldn't really need pointing out. Anyone with two brain cells to rub together will figure it out like this: read a newspaper article on your specialist subject, notice that the author has failed to do even the most basic research and ask the most obvious questions, then realise that the same must apply to pretty much everything else in the paper.

Today's Evening Standard had yet another example. The City Editor, Anthony Hilton commented on 'Big banks deadly game'. He mentions Enron, points out that they had a dealing room, and then asserts that we're now surrounded by Enrons, in the shape of the global investment banks, which of course, all have dealing rooms. He goes on to say "the big banks make between half and three quarters of their profit from dealing, and that no one from the outside can tell how they do it, or what their business really is".

Later in the column there's an attempt to appear cluefull by means of a reference to Taleb. So let's spell it out for Hilton, since he seems not to understand what a dealer is, depsite his long and distinguished journalisic career. A dealer offers liquidity to the market by quoting prices to buy and sell a range of financial instruments in trades up to a certain size. I work for a dealer that supplies liquidity to the European government bond markets, among others. By standing ready to buy or sell EuroGovies in large amounts, my employer makes it possible for pension funds and insurers to take or unwind positions in EuroGovies at any time. They also make it possible for European governments to conduct treasury operations smoothly – for instance borrowing to finance government spending by issuing new debt. Dealers play a critical role in the smooth running of market economies.

 I suspect Hilton is confused about the distinction between dealers and proprietary traders. No doubt he's confused about a lot else too.