• 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!

KCG $440 million trading loss- Would the axe fall on its Algorithm designer quants?

Joined
8/23/11
Messages
66
Points
18
Does someone have more details as to what triggered the malfunctioning of KCG's trading algorithm, leading to its shares falling by 40% in a single day. Was it a result of an inherent flaw in the design of the algorithm itself? If yes, do you think it is a further step back (and a big one too) from the efforts to pacify the Street's fears for quants?
 
Unbelievable that they would let that big an error make it into production. They have pissed away most of their market cap and are desperately looking for someone to buy them. Put more bluntly, in the space of a day they lost nearly half a billion dollars and essentially destroyed the company.

Obviously a lot of the infrastructure will remain in place, but I don't see how anyone who takes automated trading, systemic risk, or corporate governance seriously can be blithe about an event of this magnitude.
 
To the economic question "Why is software so expensive?" the equally economic answer could be "Because it is tried with cheap labour." Why is it tried that way? Because its intrinsic difficulties are widely and grossly underestimated. So let us concentrate on "Why is software design so difficult?". One of the morals of my answer will be that with inadequately educated personnel it will be impossible, with adequately educated software designers it might be possible, but certainly remain difficult.​
E.W. Dijkstra Why is software so expensive (EWD 648)​

What happened at Knight can only be seen as a massive and inexcusable failure in software engineering. This failure is, in turn, due to management failure. Knight did not realize that they were, in many ways, a software company. They did not hire experienced software engineers and computer scientists, or if they did, they did not give them the freedom to properly control the testing and release process.

No one can design perfect software. But this very realization should have avoided a loss of this magnitude. Trading system must be built so that there is logic to avoid huge losses. An error can always cause a loss, but a loss of this magnitude should not happen. The unexpected can always occur, so the trading software should be back tested against a sample of trading days and anomalous trading periods (market crashes, rises during bubbles and the quant crash).

Software engineering experience seems to be devalued these days. However, years of experience with software errors and failures teaches caution. This caution was clearly missing with Knight. If Knight had taken software engineering as seriously as financial engineering they would not be where they are today.
 
From the NYT
The trading firm Knight Capital recently rushed to develop a computer program so it could take advantage of a new Wall Street venue for trading stocks.

But the firm ran up against its deadline and failed to fully work out the kinks in its system, according to people briefed on the matter. In its debut Wednesday, the software went awry, swamping the stock market with errant trades and putting Knight’s future in jeopardy.
http://dealbook.nytimes.com/2012/08/02/errant-trades-reveal-a-risk-few-expected/?hpw
Some S.E.C. officials are pushing new measures that would force firms to fully test coding changes before their public debut, according to a government official who spoke on the condition of anonymity. While the idea has long been discussed at the agency, it gained traction after the Knight debacle.
In this scenario, how would one find employment without really strong programming skill? I know many MFE programs where they teach little to no programming. Scary.
 
From the NYT

http://dealbook.nytimes.com/2012/08/02/errant-trades-reveal-a-risk-few-expected/?hpw

In this scenario, how would one find employment without really strong programming skill? I know many MFE programs where they teach little to no programming. Scary.

Thanks for your posts, Andy. I am curious as to what you would consider to be 'little' programming.

As I am completing my internship, programming is the one thing where I always wish I knew more / did it better and I think that will remain true as I start the full-time job hunt. However, it is tricky to structure better programming work in an academic program, no? Although I took our ECE coding course at RU, I probably learned lightyears more from coding 8 hrs per day as an intern on a 'real-world' application.

I would agree with you that MFEs should have more programming work because 1) no one can predict what internships the students get or accept and 2) even having worked and coded a bit, I wish I knew more so I can sell myself to employers. However, the question that comes after, then, is what to cut from the MFE program?

From my limited experience, it seems that MFE programs define themselves by teaching stochastic calculus rigorously and applications to exotic derivatives pricing yet this is not a particularly advantageous skill for an MS-level person to have. How much Statistics knowledge is relevant or can be cut? What about the role of traditional finance / accounting (MBA stuff) in an MFE curriculum?

If the goal is to build a better coding experience, what is relevant from the CS area? Algorithm (Complexity) Theory? Graph Theory? Compilers? This type of knowledge itself wouldn't be pure coding, but if the integration of coding into the degree focuses on mechanics, how is it superior to getting a job as a junior developer?

Also, if Stochastic Calculus is reduced as a topic, can an MFE survive as something different than just getting an MS in CS, Statistics or Applied Math?

*Not expecting you to have the answers. Just my own ponderings.
 
This question was directed at Andy, so I hope that you will forgive me if I jump in.

If you are going to do courses in software engineering and computer science, I'd stay away from theory and go for classes with a lot of lab content (of course the problem with these courses is that they are very time consuming). I would not take graph theory or complexity theory. Operating systems would be useful, any class where you covered parallel programming and MPI (message passing for parallel programming). Compilers is good because compilers use lots of data structures. As someone who spent years designing and developing compilers, I'd say that being a compiler expert is not a general purpose skill. A class that covers software engineering principles, like source control, code reviews, bug tracking and software build (preferably using Java and up-to-date tools, like Maven and Hudson) would be good, if such a course exists.

In my view, in finance, it's hard to have too much statistics. Statistics is a huge area and impinges on areas like machine learning (another useful class).

The job market in finance remains historically bad, so I don't know what you need to get a job (other than the obvious masters degree and some background in software and math languages like R or MatLab). The truth is that what we cover in a masters program just scratches the surface. I had one class in portfolio construction. I could easily spend a year studying this. There's all the theory, but then there's practice. We learn about options, but what about dynamic hedging and hedging strategies (I've been reading Chincarini's new book "The Crisis of Crowding" where he covers a whole host of strategies I don't really know that were used by Long Term Capital Management). One thing the masters program that I'm in has taught me is how much I don't know (which is, actually, a great gift).

I think that the truth is that we hope we can get a good job and then spend the rest of our lives learning.
 
Thanks for your response, Ian Kaplan. My questions I guess wasn't for myself, as my studies are nearly finished. Rather I was curious about how the MFE programs should evolve as sort of a curious thought exercise.

Thanks again for your comments.
 
One thing the masters program that I'm in has taught me is how much I don't know (which is, actually, a great gift).

I think that the truth is that we hope we can get a good job and then spend the rest of our lives learning.

This is incredibly true. Even in the Stochastic Calc which was the biggest topic we covered I feel that there is still so much more to learn.
 
Back
Top