Some people I work with (at a HFT firm), joke that it's someone warming up their JVM by placing clearly unfillable IOCs ;-).
My personal pet theory (for some of the graphs) is that someone is just loading up the book at many price levels with unlikely-to-be-filled limit orders to gain priority (for the rare occasions the market makes big swings). It's a perfectly legit tactic, that would help the market by providing liquidity and support against other players' big orders.
Some other graphs have perfectly innocuous explanations - for example someone probing the depth of the book or filling a big order piece-by-piece.
FWIW, you can't really pull a serious DoS against most exchanges. Most decent ones have pretty strict rolling-window rate limits. And no other firm is going to have much trouble processing the maximum number of orders one firm is allowed to place within their limit.
Even if you could get away with a DoS once (and I suspect you could), who's going to risk it? The exchange knows who you are and will punish you when you do.
> My personal pet theory (for some of the graphs) is that someone is just loading up the book at many price levels with unlikely-to-be-filled limit orders to gain priority (for the rare occasions the market makes big swings).
Only works if big swings deviate from intrinsic value of the stock. Let's say a biotech stock fails its FDA panel and drops like a rock, its fair-value suddenly drops from $8 to $2; your 100 limit buy orders at $6 suddenly gets hit and you'll have to sell them at $2/share.
> Some other graphs have perfectly innocuous explanations - for example someone probing the depth of the book or filling a big order piece-by-piece.
You probe the depth of the book by building the book not by submitting out of the money orders. You sell block order periodically over a day or days via VWAP by not revealing your true order size. Submitting a bunch of limit buy orders at once even if they are out of money, especially under the same MPID will reveal your hand and the size of the buy/sell interest.
> FWIW, you can't really pull a serious DoS against most exchanges. Most decent ones have pretty strict rolling-window rate limits.
The point is not DoS against exchange but to make your competitors process messages slower than you do. They can still process messages 15ms at a time, but you could do it at 10ms. In this game where everyone's colo'd to the exchange and have the same arbitrage algo, having a 5ft. cable to the exchange trading server vs. a 7ft. cable is a competitive advantage. The same case is with slowing your opponents' message processing rate down by 5ms.
Yes, but if every other firm besides you is doing a DoS at their maximum rate, then you have the distinct disadvantage of having one more source of quotes to deal with than every other firm.
It's basically DoS attacks for other market participants.
Basically all algo trading systems need to cancel/modify their limit orders to keep things relative to the last traded price and the whole quote book. The way they maintain their own quote book is through some data feed's API. e.g.,
Processing messages via onBidChange(double price, int bidSize); suppose you send a million buy orders at $2.00 when the stock price is trading at $6.00; your orders won't get executed, but your competitor who's processing these messages will be busy processing these message. You ignore the bottom of the book because you know your own garbage orders while you focus on processing messages at the top of the book in case of a inter-market/equity-options-futures arbitrage opportunity arises for 200ms. Your competitor was busy processing your garbage orders for 200ms; he/she either can't arb the trade as fast as you can, or they are the mutual fund algo and they can't cancel/modify their VWAP limit orders fast enough, while you trade in and out 2000 shares for $0.01/share profit plus liquidity rebates in that 200ms.
For most of the graphs shown in this article, the message bursts are occurring at the top of the book (for that particular route). Those orders have a fairly good chance of being filled if the price moves unfavorably.
If you want to suggest they are hacking someone, I'd propose an alternative target: the exchange. Say the current NBBO is on INET, but the pattern is on BATS. Once the price on INET drops below the pattern level on BATS, INET needs to devote effort to communicating with BATS to determine whether to fill orders or route them. That adds latency.
I could image those seemingly-pointless patterns to be some sort of anonymous (since noone knows who the receiver is) steganographically-protected messaging. Well, I'm not serious.
Perhaps someone has a system that evolves bots by mutation, and these patterns are just the effects of 'bad' mutations. I'm not serious either, though.
I know nothing of trading networks. Is there any benefit in analyzing latency by pushing data out at known intervals and observing when you get it back in your data feed?
Is there a cost to the HFTs to make bids which will never see the light of day?
I see a lot of weird graphs but no actual data. I can imagine this kind of stuff going on but I'd like to see some actual evidence attached before people start railing against HFT again. It reads more like an advert for Nanex than anything else.
This reminds me of Stross's Accelerando and its Strange Children, the ultra-fast AIs trading stocks and powering Economics 2.0. Humans were completely outclassed and excluded from stock exchanges.
Why don't they just change the rules by lowering the granularity? An actual trade could only happen every minute or so. What is the biggest argument against that?
From what I understand, the biggest argument is that higher granularity gets more information to the market faster, so it will move in the right direction faster. However, this seems to me to be a fairly low-granularity model itself; there must be much more subtlety in practice.
If HN would do a dup check on the canonical url instead of just the submitted one it would avoid these duplicates. Isn't that just what the canonical meta tag is there for?
[+] [-] smanek|15 years ago|reply
My personal pet theory (for some of the graphs) is that someone is just loading up the book at many price levels with unlikely-to-be-filled limit orders to gain priority (for the rare occasions the market makes big swings). It's a perfectly legit tactic, that would help the market by providing liquidity and support against other players' big orders.
Some other graphs have perfectly innocuous explanations - for example someone probing the depth of the book or filling a big order piece-by-piece.
FWIW, you can't really pull a serious DoS against most exchanges. Most decent ones have pretty strict rolling-window rate limits. And no other firm is going to have much trouble processing the maximum number of orders one firm is allowed to place within their limit.
Even if you could get away with a DoS once (and I suspect you could), who's going to risk it? The exchange knows who you are and will punish you when you do.
[+] [-] noname123|15 years ago|reply
Only works if big swings deviate from intrinsic value of the stock. Let's say a biotech stock fails its FDA panel and drops like a rock, its fair-value suddenly drops from $8 to $2; your 100 limit buy orders at $6 suddenly gets hit and you'll have to sell them at $2/share.
> Some other graphs have perfectly innocuous explanations - for example someone probing the depth of the book or filling a big order piece-by-piece.
You probe the depth of the book by building the book not by submitting out of the money orders. You sell block order periodically over a day or days via VWAP by not revealing your true order size. Submitting a bunch of limit buy orders at once even if they are out of money, especially under the same MPID will reveal your hand and the size of the buy/sell interest.
> FWIW, you can't really pull a serious DoS against most exchanges. Most decent ones have pretty strict rolling-window rate limits.
The point is not DoS against exchange but to make your competitors process messages slower than you do. They can still process messages 15ms at a time, but you could do it at 10ms. In this game where everyone's colo'd to the exchange and have the same arbitrage algo, having a 5ft. cable to the exchange trading server vs. a 7ft. cable is a competitive advantage. The same case is with slowing your opponents' message processing rate down by 5ms.
[+] [-] thesnark|15 years ago|reply
http://www.businessinsider.com/huge-first-high-frequency-tra...
[+] [-] CGamesPlay|15 years ago|reply
[+] [-] noname123|15 years ago|reply
Basically all algo trading systems need to cancel/modify their limit orders to keep things relative to the last traded price and the whole quote book. The way they maintain their own quote book is through some data feed's API. e.g.,
Processing messages via onBidChange(double price, int bidSize); suppose you send a million buy orders at $2.00 when the stock price is trading at $6.00; your orders won't get executed, but your competitor who's processing these messages will be busy processing these message. You ignore the bottom of the book because you know your own garbage orders while you focus on processing messages at the top of the book in case of a inter-market/equity-options-futures arbitrage opportunity arises for 200ms. Your competitor was busy processing your garbage orders for 200ms; he/she either can't arb the trade as fast as you can, or they are the mutual fund algo and they can't cancel/modify their VWAP limit orders fast enough, while you trade in and out 2000 shares for $0.01/share profit plus liquidity rebates in that 200ms.
[+] [-] yummyfajitas|15 years ago|reply
If you want to suggest they are hacking someone, I'd propose an alternative target: the exchange. Say the current NBBO is on INET, but the pattern is on BATS. Once the price on INET drops below the pattern level on BATS, INET needs to devote effort to communicating with BATS to determine whether to fill orders or route them. That adds latency.
[+] [-] d_c|15 years ago|reply
- http://www.zerohedge.com/article/algorithmic-crop-circles-re...
- http://www.zerohedge.com/article/its-not-market-its-hft-crop...
- http://www.zerohedge.com/article/todays-dose-crop-circle-quo...
[+] [-] drdaeman|15 years ago|reply
[+] [-] sudonim|15 years ago|reply
I love a good conspiracy theory :)
[+] [-] teamonkey|15 years ago|reply
http://en.wikipedia.org/wiki/Numbers_station
[+] [-] travisa|15 years ago|reply
[+] [-] narrator|15 years ago|reply
[+] [-] charlief|15 years ago|reply
Original Nanex report: http://www.nanex.net/20100506/FlashCrashAnalysis_Intro.html
[+] [-] ShabbyDoo|15 years ago|reply
Is there a cost to the HFTs to make bids which will never see the light of day?
[+] [-] smanek|15 years ago|reply
B. There's the off chance that something could get filled that I don't want filled, and I'll burn some of my rate quota/cpu/bw.
[+] [-] jamii|15 years ago|reply
[+] [-] alanh|15 years ago|reply
[+] [-] Simucal|15 years ago|reply
I think putting a little money in an account and then working on writing a small trading bot would be a fun project.
[+] [-] yummyfajitas|15 years ago|reply
http://www.limebrokerage.com/
I think smarkets is also a possibility if you are located in the EU.
[+] [-] iends|15 years ago|reply
[+] [-] Volscio|15 years ago|reply
http://www.amazon.com/Daemon-Daniel-Suarez/dp/0451228731/
[+] [-] arnorhs|15 years ago|reply
[+] [-] dhs|15 years ago|reply
[+] [-] RiderOfGiraffes|15 years ago|reply
[+] [-] MichaelApproved|15 years ago|reply
[+] [-] unknown|15 years ago|reply
[deleted]
[+] [-] ThomPete|15 years ago|reply
[+] [-] akshayubhat|15 years ago|reply
do they use physics based techniques, like black scholes?
or do they use statical learning based techniques?