Featured post

Fixed Income Trading: New venues ( How many Fixed Income trading venues are there? )

How many Fixed Income trading venues are there?  [152]  A simple question came up recently in a conversation – how many new Fixed Income t...

Sunday, 20 December 2015

If not banks, then who?

Buy-side traders, cast your thoughts back to the mid 2000s, before Lehman Brothers failed.
Think back to trading good old fashioned corporate bonds.  It was pretty simple, anything small could be traded through an electronic platform.  

Friday, 11 December 2015

Third Avenue, the next crisis in the Bond market and Liquidation Risk...

This post will quote extensively from an excellent Bloomberg article entitled "Third Avenue Blocks Redemptions From Credit Fund Amid Losses"
The main thrust of the article is that "$788 million mutual fund is blocking clients from pulling their money so its holdings can be liquidated in an orderly fashion...David Barse, Third Avenue’s chief executive officer, said blocking redemptions was necessary to avoid fire sales."

Blog thieves

One of the most quoted blog posts on here is Fixed Income Trading: New venues which has been quoted at various conferences and on the internet.  That's perfectly fine yet a quick google of the opening sentence "A simple question came up recently in a conversation – how many new Fixed Income trading venues are there?" shows a considerable number of websites that have simply cut and pasted the entire blog post with no attribution.  Worse is that they all seem to be pretty dodgy sites with a mountain of pop-up windows and links to gambling sites and porn...

Friday, 20 November 2015

FIX messages for blockchain - FIXChain

A valid tag=value FIX message has a checksum computed.  So it's possible to detect if a message was corrupted over the wire. So FIX is used to calculating a value based upon the payload of a message.

R in Visual Studio

In this MSDN post https://msdn.microsoft.com/en-us/magazine/mt238409.aspx is an interesting line "I suspect support for R will be added to Visual Studio at some point."

Thursday, 19 November 2015

Fintech: Product Management, feedback loops and OODA

Had an interesting conversation with a fintech recently.  They commented that they received a lot of enquiries from potential clients in the form of emails, phone calls, RFIs, RFPs, ITTs and so on.

Sunday, 15 November 2015

FIIDL [Orchestra] - FIX Interactive Interface Definition Language (part four)

As keen readers will know, I have been a big fan of the idea of transitioning FIX from a message based protocol to a state+message based protocol.  This is all quite geeky but it can potentially revolutionise Electronic Trading globally for all asset classes, for buy-side, sell-side, exchanges, regulators and any other market participant.

Sunday, 8 November 2015

Thursday, 29 October 2015

Functional and non-functional requirements

 "Amateurs talk about tactics, but professionals study logistics."
General Robert H. Barrow, USMC (Commandant of the Marine Corps)
Replace tactics and logistics with functional requirements and non-functional requirements and you have a "too long, didn't read" version of this post.

Sunday, 11 October 2015

Tuesday, 22 September 2015

The tyranny of small

During a number of recent conversations a repeated theme has arisen around how a value proposition should be presented to a prospective client.  Take a very simple example - a firm creates a product that cost them £1m to create but which will create demonstrable, measurable operational efficiencies for a client firm that would be worth £5m per year.

Monday, 24 August 2015

VirtualBox, Solace Systems Virtual Message Router and SolCache

"Solcache is a scalable, in-memory message cache for Direct messaging that allows clients using Solace messaging APIs to request the most current messages for a topic of interest when they come online, or when they start subscribing to topics that they were not originally subscribed to." -- Solace_SolCache_Guide_R71_Iss01.pdf page 15.

Security, the right way

Working with clients in financial services has meant that at all times I have had to fit into the corporate security model employed by the firm. With a diverse range of firms I have seen different levels of security.  At one extreme has been a number of Swiss firms.

Monday, 17 August 2015

Sunday, 2 August 2015

Wednesday, 22 July 2015

Contractor, Consultant, Advisor

I had an interesting conversation with a gentleman who is new to London.  He was talking about working and the different types of situations available within the financial services world.  I realised I have always had a taxonomy for this so I thought it worthwhile to share.

Friday, 10 July 2015

Fintech innovation: Buy-side OMS

Following a number of recent conversations I thought it would be useful to collate some content and formally propose some fintech projects that should happen.  This will be the first in a series of posts...

Saturday, 20 June 2015

Sell-side Fixed Income connectivity reference implementation

Within the world of Fixed Income we are seeing a rapid proliferation of new venues that are attempting to bring about structural change in the Fixed Income market place.  How does a sell-side operate in this new paradigm of Fixed Income trading venue proliferation?

One impact is that the typical sell-side connectivity implementation faces structural difficulties.  In the past a sell-side would typically use a well known vendor for all of their connectivity or build in-house.  In either case the implementation would be expensive to run and not very flexible.

Tuesday, 9 June 2015

HTML5 postMessage as a "form" constructor - gotcha!

In most trading applications there is a requirement for a rich user experience. If the back-end works but the UX looks like a dogs breakfast the system will not be well regarded.  Typically within a trading system such as an OMS or EMS there is a blotter with drill down and a form based order entry paradigm.

The Enterprise FinTech Start-up...

The recent "news" of a Sungard IPO spurred a conversation on the topic of fintech startups.  The specific category of interest here is the firm that sells enterprise IT.  This is about the "Enterprise Fintech Start-up", hereafter EFS.

ISIN+MIC is not enough

Following on from an earlier post "The market data product that the global financial services industry really wants..." I was having a debate with an old chum.  He suggested that I was mistaken and that in the exchange traded equity world all you need is ISIN+MIC to identify any instrument.

Wednesday, 3 June 2015

Cursors and the evil that men do...

I had almost invariably been told by DBAs of my acquaintance that cursors are evil, a monstrosity born of desperation by the clever people who design relational database management systems to allow mere mortal users to work outside of the pure set based logic that rules within the realm of SQL.

Friday, 22 May 2015

What does a Single Dealer Platform have in common with Bond Street in London?

[Note for non-UK readers, Bond Street is an upmarket shopping street in the West End of London.  Pretty much every upmarket retailer globally has a shop on Bond Street - Cartier, Ralph Lauren, Chanel, Louis Vuitton, Bregeut and so on]

Thursday, 7 May 2015

Java Command Line parsers - total cost of ownership?

A pretty standard requirement for any Java server-side application is a command line parser
A quick google search shows a number of command line parsers.  The top hit is Apache Commons CLIAfter implementing it and dealing with the rather unhelpful documentation I decided to write my own.   

Wednesday, 29 April 2015

SQL Server 2014 - Exporting/restoring database diagrams

Within Microsoft SQL Server database diagrams provide a GUI oriented way to create relationships between tables - primary key/foreign key and so on.

Thursday, 23 April 2015

Bloomberg outage: an alternative view

After the Bloomberg outage a huge amount of sound and fury has been directed at the firm, indicating that Bloomberg has failed and that everyone needs to look at other products. 

Wednesday, 22 April 2015

C# and Auto-Incrementing Build Numbers in VS 2013

Anyone used to VB6 will remember that it can be configured to automatically increment the build number each time the code is built.  It was a simple way to track versions.

Tuesday, 21 April 2015

Saturday, 18 April 2015

Excel VBA - industrialisation...Part Fourteen "Enumerating Excel.Model"

Excel 2013 included a number of changes - one of the big changes is the addition of Excel.Model.  In essence, this allows the user to treat data within the Excel spreadsheets as though it is contained within database tables. 

Solace Systems & Node.js Market Data Terminal

We have looked at market data terminals and middleware.  One of the challenges of building a modern web browser based application is that there is a requirement to push JavaScript to the client to provide an interactive user experience and almost always a requirement to serve up real-time streaming data.

Friday, 17 April 2015

Fixed Income: New market for Corporate Bonds

A topic we have covered before is the evolution of the market place for Corporate Bond trading - "Matching engine for corporate bonds?".  Since the demise of Lehman Brothers we have seen the banks pull back capital from the corporate bond flow trading business and a subsequent drastic reduction in liquidity.  This post is a modest proposal for the structure of how a new Fixed Income market could work.

Saturday, 11 April 2015

Excel COMAddin in C# - debugging...

Developing COM Addins for Excel is a case of creating a new class library, implementing the IDTExtensibility interface, writing the code and then deploying and debugging.

Tuesday, 7 April 2015

Sell-side FIX reference implementation (not low latency)

This post will cover a reference implementation of a FIX ecosystem for a reasonable size sell-side organisation. The target here is not a low latency environment.  The trading ecosystem that is suited to this reference implementation is a hub and spoke model, where a sell-side in a region runs connectivity out from a central hub to the regional exchanges (or SEFs, ECNs, FX Hubs etc.).  

Excel RTD Server VBA code wrapper: gotcha!

This is a nice and simple technical tip rather than one of my War and Peace tendency blog posts.  The Microsoft Excel RTD function is one we have covered here before many times.

Monday, 6 April 2015

Excel VBA - industrialisation...Part Thirteen "Enumerating Connections"

Another way to interact with Excel is through WorkbookConnections from external data sources to an Excel Workbook.  If this data is needed for a spreadsheet then clearly these connections must be enumerated for the Excel Industrialisation process.

Saturday, 4 April 2015

Excel VBA - industrialisation...Part Ten "Enumerating COMAddins"

This post is concerned with looking at COM Addins.  The COM Addin is part of the Office Object Model rather than Excel and was part of a Microsoft process to try and unify the different implementations of VBA.

Friday, 3 April 2015

Excel VBA - industrialisation...Part Eight "Enumerating RTD Servers"

An Excel RTD Server is a hybrid push/pull mechanism that can send data into Excel in something approaching real-time. If you are not familiar with this technology, you can find instructions on how to build one on this blog at:

Excel VBA - industrialisation...Part Nine "Enumerating DDE Servers"

A DDE Server is an old technology that is still used by a number of vendors to push real time data into Excel.  It has mainly been replaced by RTD but is still in use by many firms for internal applications and for some legacy applications.  In some quite particular use cases DDE outperforms RTD and so it will remain in use for some time yet.

Saturday, 28 March 2015

Excel VBA - industrialisation...Part Six "Error Handling"

A long standing complaint about Excel VBA has been the lack of error handling.  The error handling in other language is indeed more advanced - the Java "try-catch-finally", the similar C# "try-catch-finally" or the C++ "try-catch" are all more advanced.

Friday, 27 March 2015

Excel VBA - industrialisation...Part Five "Integration with Git"

Here we look at integrating Excel VBA with Git.  I will assume that the reader is familiar with Excel.  A great book on Git is downloadable from here.  I won't go into details on Git - it's covered in the pdf link.

Monday, 23 March 2015

Sunday, 22 March 2015

FIX implementation: Cost cutting proposal part III

In many cases I have seen firms that seek to capture FIX messages in log files which are then flattened and loaded into a relational database such as Oracle, MSSQL, Sybase etc.

Saturday, 7 March 2015

Matching Engines: An overview

Matching engines are at the core of electronic trading.  In many cases the actual software is old and written using techniques, patterns and languages from the past.  We've considered some enhancements to matching engines before "Matching engine for corporate bonds?". 

Saturday, 28 February 2015

Bond liquidity, collective investments and fairness

We have previously looked at responses to market shock where liquidity is diminished before in the post "ETFs, liquidity profile and valuation issues"

FIX Testing and Certification: Production support software

When running a FIX implementation it's generally viewed as being a wise thing to have a support infrastructure in place.  There are many ways to do this but the main way is to use one or more vendor tools as a dashboard to see what is going on within your FIX infrastructure.

Bond fund distance, liquidity and trading

Distance is a concept of which we are all aware but few ever quantify except in the easiest way.  I know that London is close to Paris and Berlin is more distant.  We can measure these distances in miles, kilometres, flying time, time taken by train and so on...

Tuesday, 24 February 2015

The buy-side OMS, an appreciation part two...

The term OMS is used as an umbrella for a number of pieces of distinct functionality, this post will list them and provide some direction for a future landscape.

Monday, 23 February 2015

Python versus VBScript

A diversion from the normal discourse on here, a language comparison.
Disclosure:  I have been using VBScript for years, I have designed a couple of systems that embedded the VBScript.ocx into a three-tier architecture system to provide an extensible method for creating business logic. 

Sunday, 22 February 2015

R - libraries...

One thing to note is that by default R will want somewhere to store any libraries you download.  Just as a matter of style I always try and detach libraries from the core. 

Thursday, 19 February 2015

What’s a FIX network? Part two...

Here I want to look at the more interesting world of low-latency.  A further post will cover co-location.

What’s a FIX network? Part one...

When the world of FIX was young and there was a great deal of perceived execution risk in building out connectivity many firms turned to vendors to provide connectivity networks. 

What is a FIX network, Part three...

This post will cover co-location.  So why is co-location being covered within the context of a series of articles on FIX networks?
This is a follow-up to part one and part two.  Part one looked at equity, fixed income and foreign exchange connectivity.  Part two looked at the low-latency world.
Simply put, the world has moved on since the days when buy-sides and sell-sides would run servers in their own datacentres.  The rise of the likes of Equinix, CenturyLink and many others has changed the dynamics of the market entirely.  In simple terms, why bother with a FIX network when you can get a cross-connect from your racks in a datacentre to the racks that belong to your counterparty?

Friday, 13 February 2015

What is a FIX engine? [Updated]

In a number of consulting roles over the years I've been asked this question. It's something that I still get asked so I'll describe my view. First, some history on the firms in the FIX engine market sector, then some narrative. 

Thursday, 12 February 2015

Tuesday, 10 February 2015

Using R to choose which conference

Within most fields of human endeavour there is a cycle of conferences, seminars and so on.  One challenge is to get the maximum value in terms of seeing speakers and topics of interest while minimising the time spent on the conference.This got me to thinking about using R to perform an analysis of the speakers and topics of two conferences and to establish which conference to attend. 

Monday, 2 February 2015

Thursday, 29 January 2015

Buy-side analytics: Equity execution venue analysis

A number of years back I was working with a client with a buy-side asset management business.  They wanted to understand the impact of MIFID and the proliferation of multiple execution venues for equity trades.  I prepared some thought leadership and sketched out a development plan for what needed to be done for a slow-time system to offer after the event analysis.

Tuesday, 27 January 2015

Tuesday, 20 January 2015

Buy-side analytics: Beyond TCA

Within most buy-sides there is a realisation of a need for TCA.  TCA is something we have covered before here. There is also a recognised need for performance measurement and attribution.  This post covers those topics yet has a focus on a new analytic area for buy-sides - behavioural analytics.

Sunday, 18 January 2015

Buy-side compliance systems: Still 20th Century technology?

Buy-side compliance systems are not, in large part, true real-time.  What does that mean? A genuine real-time system will be event-driven, most existing systems are not. 

Wednesday, 14 January 2015

Electronify, Evangelise, Educate...

It's not enough to simply work within a firm to change the workflow from telephone to an electronic workflow.  You also have to educate the staff who will be using the system.  And to evangelise...

Sunday, 11 January 2015

FIX implementation: Cost cutting proposal part I

The last few years have seen an incredible focus on cost cutting. I've seen a few implementations over this period where firms have picked up the low hanging fruit options. So several firms have switched from Solaris/Sparc to Linux/x86 hardware.