Hi,
I'am new to bookmap and I saw at marketplace the MBO-Bundle-Addon with Stop & Iceberg Tracker. I think to detect iceberg-orders is easy. But, how can they detect stoporders. As I understand, stoporders for us just visible as marketorders. Am I wrong? Where's the difference in the data we received?
Anybody knows how it works?
Thanks
How to detect StopOrders
Re: How to detect StopOrders
its because mbo data provides order id's and that is how they determine a stop is my understanding
Re: How to detect StopOrders
@bronko, you are correct: Stop orders are hidden until triggered by a trade that occurs at their Stop price (trigger price). Once triggered, we observe most of them as regular Market orders. "Most of them" refers to the fact that there are also Stop Limit orders which may be executed only partially or not at all. Stop & Iceberg Tracker detects all of them, but because its output is only the CVD, only those that were executed are counted.
The most interesting phenomena is a situation when the size of Stop at certain price (as their trigger price) is larger than the total size of resting Limit orders (with opposite side) at the same price. Once triggered, the Stop orders execute the entire price level and continue to the next price level. This triggers Stop orders on that next level, and so on... thus crating an avalanche (aka stop runs).
Bookmap does not disclose its detection algorithm, but since it works only with Rithmic data, you can guess that it requires original (not damaged) exchange's data, including id's of orders. All orders have a unique order id, but exchange doesn't mark orders as stop or iceberg (the entire purpose of these types of orders is to hide trader's intentions). The SIT addon knows how look at the data in order to identify stops and icebergs.
To further clarify:
S
Edit: I've found contradiction in the text above. Correction: Stop Limit that are not executed at all are also detected. But only after they are triggered. Still, they have no impact on the output in the form of CVD.
The most interesting phenomena is a situation when the size of Stop at certain price (as their trigger price) is larger than the total size of resting Limit orders (with opposite side) at the same price. Once triggered, the Stop orders execute the entire price level and continue to the next price level. This triggers Stop orders on that next level, and so on... thus crating an avalanche (aka stop runs).
Bookmap does not disclose its detection algorithm, but since it works only with Rithmic data, you can guess that it requires original (not damaged) exchange's data, including id's of orders. All orders have a unique order id, but exchange doesn't mark orders as stop or iceberg (the entire purpose of these types of orders is to hide trader's intentions). The SIT addon knows how look at the data in order to identify stops and icebergs.
To further clarify:
- It's not a magic: initially these orders are indeed hidden. In both cases the detection requires their execution, at least partial.
- It's neither an approximation nor a probabilistic model. The data is generated by exchange's matching engine, therefore it's consistent. And so is the output of the detection logic
S
Edit: I've found contradiction in the text above. Correction: Stop Limit that are not executed at all are also detected. But only after they are triggered. Still, they have no impact on the output in the form of CVD.