"We risk becoming the best informed society that has ever died of ignorance"
- Rubén Blades

"You can't make up anything anymore. The world itself is a satire. All you're doing is recording it"
- Art Buchwald

"It's getting exciting now, two and one-half. Think of everything we've accomplished, man. Out these windows, we will view the collapse of financial history. One step closer to economic equilibrium"
- Tyler Durden

"It is your corrupt we claim. It is your evil that will be sought by us. With every breath, we shall hunt them down."
- Boondock Saints

Thursday, November 8, 2012

The Wizards Ask For Your Assistance

The wizards from Nanex need help spreading the word.  Too many people have been talking of HFT with too many different views.  More often than not its' amateurs with a lack of understanding or people who know too little to realize they don't know enough.  Along with short lived, top of the iceberg style coverage on mis-info-tainment channels like CNBC, all too often those involved have no accountability.  They have no AUM on the line, no business on the line, just a mere desire to hear themselves speak.  With Nanex, that is not the case.  Below you will find a proposal that may not be complete in your eyes but it gets the ball rolling.  Think of what you may add or you wish to address regarding a way to control this out-of-control HFT behavior

Our last paper ended with the paragraph: We think we found a possible solution to the HFT/non-HFT divide that lets the market itself decide the value of an equity quote. The solution is incredibly simple and has virtually zero impact on the millions of systems already in place. It also requires no cancellation fees or transaction taxes, and it lets trading go as fast as the speed of light.

Here is that solution

We have thought a lot about how HFT can coexist with human traders and computers that aren't co-located or wired for speed. We believe a strong and stable market requires a diversity of participants, which isn't possible when speed is valued above everything else. If everything is wired for speed, then you can count on software engineers wringing every last line of analytical code out of their systems to gain that one extra cpu cycle that will put them ahead. Same goes for error checking. In fact, any code not involved in transmitting an order will be fair game in the race for speed. In an HFT only environment, reaction to news will be instantaneous: shoot first, ask questions later. We wonder if those who talk about trading at the microsecond level fully realize the infrastructure required to handle that level of trading: just 1 quote per microsecond on 1,000 symbols is 1 billion quotes per second. That rate would saturate a terabit network (a future technology) and completely fill a terabyte drive in about 10 seconds. Is there really any room in that HFT vision of utopia for non-HFT participants with other strategies? And if there is, would they still be required to bulk up on the same CPU's, network gear, and disk storage required to participate? Because that is the case today.
Recently an exchange that will remain nameless, suggested that traders who aren't co-located don't need to see every quote. We couldn't agree more and replied, "Fantastic. Then how about just sending the quotes that matter?"
At the time our reply was sarcasm, as it is impossible to know which quotes have value and which ones do not. But that got us thinking: what if there was a way to distinguish between quotes that matter and those that are just noise? What if there was a way to distinguish between quotes entered by people with full intentions of buying or selling stock, and quotes entered for the purpose of pinging for liquidity or pretending to show interest, or tricking other algorithms to reveal intentions, or any purpose other than, you know, actually buying or selling stock? 
If you could tell which quotes were there for execution and ignore the rest, that would represent significant progress, a leap actually, towards achieving a fair and reasonable market. Likewise, for those who truly want to buy or sell stock, if they could indicate that their quote would stick around long enough that someone could reasonably execute against it, then it would carry more weight in the market than quotes that could be canceled on a whim.
So why not just mark quotes that intend to be executed with a special quote condition? Or even better, mark quotes that could be canceled in less than, say 250 milliseconds, with a special quote condition called immediate. For quotes not marked immediate, simply require that they remain executable for a certain amount of time (say 250 milliseconds) from the time they were created. You just have to make sure each quote is timestamped with the actual time it was created at the exchange.
By making these two simple changes (adding the immediate condition and ensuring timestamps reference the time a quote was created), equity quotes would become infinitely more valuable.  A quote from someone wishing to buy stock would automatically carry more value than a quote marked immediate, because it could be executed by more people. Everyone will be able to compute the exact age or delay in every quote (chalk it up to modern computing, trust us on this), and therefore determine if there is enough time to execute against it. Of course, you still might miss a trade if another trader is faster, but that is completely acceptable. Missing a trade because someone cancels a quote before you even receive it, that  is unacceptable.
The ability to monitor feed delays in real-time would be a strong incentive for making timely system improvements. It will also avoid the dangerous situation where hidden system delays slowly creep towards a tipping point, only to cross that point at the worst possible time, such as when shocking news hits the market. This is a very real danger in complex networked systems which often show no problems all the way up to 99.9% capacity, only to fail catastrophically if it pegs 100% for too long.

Here is a more technical outline of our proposal.

The Proposal 

  1. Create a new quote condition type called immediate (see Appendix H for existing conditions). Quotes entered into the system that could be canceled within a certain amount of time (say 250 milliseconds) will use the new condition immediate. Immediate quotes are not eligible to update the NBBO: they are practically equivalent to flickering quotes as described in Reg NMS, which exchange centers can already ignore when routing orders. Essentially, we propose tagging flickering quotes with the quote condition immediate, making them ineligible to set the NBBO. Only quotes that will remain executable for a certain minimum amount of time (say 250 milliseconds) after the original timestamp, are eligible to set the NBBO and won't require the immediate tag.   
  2. Currently, every quote message has a timestamp field which is filled (replaced) by CQS when the quote is ready for transmission (instead of when the quote was created). That means any delays in the system up to that point in time are forever erased and hidden. This practice needs to stop immediately. The original timestamp created by the exchange when the quote record was first created must be retained throughout the life of the quote. We do not advocate adding another timestamp. The original timestamp created by the exchange at the time a quote is created should be what is transmitted in the quote message timestamp field. The end user, the trader or investor, does not care where the delay occurs. They only want to know the existence and extent of any delay. Adding another timestamp would increase the size of every quote message and require unnecessary software changes on every system processing these messages.