Introducing Liquidity Tracker indicator

Custom indicators, trading strategies, data export and recording and more...
Posts: 106
Joined: Mon Jun 11, 2018 12:40 pm
Has thanked: 15 times
Been thanked: 28 times

Introducing Liquidity Tracker indicator

Post by Serg » Wed Jan 16, 2019 1:42 pm

Here is one of the simple, but long requested indicators. Since Bookmap is all about market depth, then why not... But Bookmap is also about real market data, which isn't 1 minute or 1 hour bars, so unlike other trading platforms it allows unlimited time granularity and takes into account the entire full market depth.

What does it show
It shows various portions of Bid and Ask order book according to user selected configurations. Because different configurations may involve different number of price levels (up to the full market depth), it would be difficult to compare the summation of the order book sizes within different settings. Therefore the indicator allows to normalize the result according to the settings. If corresponding checkbox is selected, the output is the average order book size per price level within selected configuration. Think of it as an array of weights which has different length and shape according to the settings, but the sum of all weights is always 1 (100%). To clarify, this averaging is done over the involved price levels and according to weights defined by the computation mode. It has nothing common with averaging over time, so it doesn't cause any lag (if you wish to smooth the lines over time, configure the "Smooth" option). For instance, if you use "Number of price levels uniformly mode" with 10 levels, the indicator will show the sum of 10 levels divided by 10. If you switch to 5 levels, it will show sum of 5 levels divided by 5. This allows to change the settings, switch between computation modes, and compare the values on the same scale even if you switch into computation of all available price levels. Note that if you deselect "average per price level", the indicator will reload each time when you change the settings. This will not be needed soon, after we will allow backward computations with market depth (in development).

How to import Liquidity Tracker into Bookmap
Download its jar file here into, for instance, 'C:\Bookmap\MyAPICustomModules/' folder. In Bookmap click Settings->Strategies->Add... and select the jar file, select the indicator, and click Load. Then enable it with a checkbox on the left side and click on the Liquidity Tracker button to view or adjust its settings. You should see something like this:

01.png (442.05 KiB) Viewed 11330 times
For more detailed instructions on how to import API modules into Bookmap, please review this post. Also, please review API Requirements, limitations, and known bugs.

All the configuration items are supposed to be self explaining. Exponential half-life parameter means that the weights given to price levels are gradually exponentially decaying farther from the market (best bid or ask) while the weight of the size at the first (best) price level is always 1 (i.e. 100%) and then drops by half every <half-life> number of levels. For instance, within half-life parameter of 10, the weights will be the following:
  • level=0 (best price), weight=100%
  • level=10, weight = 50%
  • level=20, weight = 25%
  • level=30, weight = 12.5%, and so on...
  • level=N, weight = exp(-log(2)*N/halflife)
One remark: while the first two options (all available price levels uniformly and exponentially) technically compute the entire order book, due to dynamic implementation, they are least expensive in terms of computation complexity. In other words feel free to set the exponential half-life parameter to 100 price levels or more while setting computation frequency every 50 milliseconds.

Your feedback, bugs report or improvement requests will be much appreciated.
Bookmap team

PS: Here is a challenge: explain this perfect correlation where the settings are:
  • All available price levels uniformly
  • "Display average per price level" deselected
  • Smoothing disabled (zero lag)
01.png (442.05 KiB) Viewed 11330 times
It does not recalculate backwards when added and when settings are changed. Historical market depth is already supported by API, so only the indicator need / will be updated accordingly.
03.png (298.65 KiB) Viewed 11330 times
02.png (265.41 KiB) Viewed 11330 times


Posts: 67
Joined: Thu Nov 01, 2018 1:50 pm
Has thanked: 38 times
Been thanked: 9 times

Re: Introducing Liquidity Tracker indicator

Post by SuperDriveGuy » Mon Jan 21, 2019 9:25 am

Hi Serg,
I get the following error whilst trying to load this indicator.
LiquidityTrackerError.jpg (96.89 KiB) Viewed 11273 times
LiquidityTrackerError_BMVersion.jpg (21.58 KiB) Viewed 11273 times

Posts: 234
Joined: Mon Jul 09, 2018 11:18 am
Has thanked: 12 times
Been thanked: 43 times

Re: Introducing Liquidity Tracker indicator

Post by AndreyR » Mon Jan 21, 2019 11:10 am

Hi SuperDriveGuy,
Build rithmic-mbo-api-89c7b62cfe is a bit outdated for this indicator.
The newer build is being tested at the moment. It will be available for downloading within a couple of days.

Posts: 1
Joined: Sun Nov 18, 2018 3:51 pm

Re: Introducing Liquidity Tracker indicator

Post by flow_test » Tue Feb 05, 2019 3:07 am

Excited to see the updates! Having a sleek and simple visualization tool for the whole order book will be eye-opening for many traders. I'm particularly hopeful that the individual bid & ask lines are shown well in future updates.

Post Reply