Introducing Liquidity Tracker indicator

Custom indicators, trading strategies, data export and recording and more...
Serg
Posts: 106
Joined: Mon Jun 11, 2018 12:40 pm
Has thanked: 17 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
01.png (442.05 KiB) Viewed 2087 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.


Configurations
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.
Best,
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
01.png (442.05 KiB) Viewed 2087 times
Limitations
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.
Attachments
03.png
03.png (298.65 KiB) Viewed 2087 times
02.png
02.png (265.41 KiB) Viewed 2087 times

Tags:

SuperDriveGuy
Posts: 66
Joined: Thu Nov 01, 2018 1:50 pm
Has thanked: 37 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
LiquidityTrackerError.jpg (96.89 KiB) Viewed 2030 times
Attachments
LiquidityTrackerError_BMVersion.jpg
LiquidityTrackerError_BMVersion.jpg (21.58 KiB) Viewed 2030 times

AndreyR
Posts: 131
Joined: Mon Jul 09, 2018 11:18 am
Has thanked: 9 times
Been thanked: 37 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.

flow_test
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