• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Algo trading software went wild, lost $1M in one second

To be precise, there was a subject in my engg. dedicated to atomic transactions which are necessarily characteristic of some particular industries

Yes, there is a huge pile of elementary CompSci that is absent from banking systems, and ACID is one of them.
One of my missions is a couple of lectures reprising a crash course in Computer Science for Quants, as part of the CQF. It's so hard.
Every time I think I reach a base that I can assume, I find people who actually work in banks who don't know it.
For instance that network cards are serial devices, not parallel, that you can't write a program that will tell you what another program will do, that floating point numbers are very different from Reals, and I'd say that around 1/3 of people programming computers in banks could not reliably read statements that contain more than 3 logical operators, and that half could not even name 4 of them.
How about
if (a >b || b == x && x < r)
Even something that trivial will get people confused, some even think that there is any chance this will work which in most quant programs it won't.

You ask what does Dominic mean by 'work' since I haven't said what it is supposed to do but my assertion holds regardless of the purpose of the statement. Except when it does, and you can lose whole days (or a million bucks) when it hits you.


 
The result: CME on Friday fined a trader at Infinium Capital Management $50,000 for this episode.

http://online.wsj.com/article/BT-CO-20111227-702534.html
CHICAGO (Dow Jones)--CME Group Inc. (CME) on Friday fined a trader at Infinium Capital Management $50,000 for unleashing an automated trading strategy that erroneously bought thousands of crude-oil futures over the course of three seconds.

The episode, which occurred in February 2010, wasn't caught by Infinium's order-control system and roiled markets to the point that CME officials deemed the trading a threat to the "good name" of its platform, according to a disciplinary notice issued by CME on Friday.

The trader, Neil Brookes, neither admitted to nor denied violating CME's rules. Brookes at the time was "live-testing" an algorithmic trading strategy, which contained an error, according to the CME notice.

"The malfunction caused Infinium to enter 6,767 individual one-lot limit orders into the CME Globex electronic trading platform to purchase March 2010 Light Sweet Crude Oil futures contracts over the course of approximately three seconds," CME officials wrote in the notice.

Chicago-based Infinium is one of the city's more prominent electronic trading firms. CME in November fined the firm itself $850,000 for the February mishap and two other episodes that occurred in 2009.

Brookes was also suspended from trading on CME's markets until Jan. 31, 2012, according to the notice.
 
So he got fined a pitifully small amount and was banned for one month ?

Also the present tense is used, so he's still working at the firm where he screwed up.

Hardly cruel or unusual punishment is it ?

Also why, exactly did the CME system accept these orders ?
It really really is not difficult to program in that sort of throttling.
 
Back
Top