Market Monkey Logo
Updated

MMT Heatmap v2.0 - Now LIVE

Full bleed, full book, full speed. There is a new Heatmap king, and it is MMT. Blazing rendering performance, increased data throughput, aggregated across exchanges.

Full bleed, full book, full speed. There is a new Heatmap king, and it is MMT.

Blazing rendering performance, increased data throughput, aggregated across exchanges.

🚀 This is a major update to MMT so we decided to give it the respect it deserves, with this longer post. Whilst others may claim to be the 'best', we let our new heatmap's performance speak for itself.

Heatmap v1

MMT's first heatmap iteration was great, albeit with some limitations. To maintain performance, the total number of heatmap blocks rendered on your chart, would scale with your zoom level. This would result in some heatmap blocks being removed upon zooming out, with more blocks added upon zooming-in on a particular portion of the chart.

The reason this approach was taken, was prevent your browser's graphics engine from being overloaded. Whilst we achieved the mechanics necessary to maintain the balance between heatmap granularity and ensuring the terminal's performance as a whole, we were all well aware an entirely redesigned approach would be required going forward.

Heatmap v2

The goal in v2 was clear; render full depth of the Order Book on your chart, zero compromise on performance. No small task on it's own. Add into the mix aggregation between exchanges, and the complexity ramps again. Nonetheless, MMT had full faith in the intern to make it happen.

Reengineered Graphical Processing

Of all aspects of the terminal, the MMT heatmap is by far the most graphically intensive. When used in combination with other layers that are requires rendering their rendering to graded or scaled (eg Footprint, Volume Bubbles), further additional load is placed upon the browser and the GPU of your device.

The biggest bottleneck of the previous version was that performance was being constrained due to the absence of a dedicated shader. The intern, along with help from others, built a working shader and continued to iterate and tweak upon each new subsequent build

By focusing on squeezing every last drop of performance out of the heatmap shader - the most graphically intensive processes on the terminal - will free up precious resources that can be utilized elsewhere on the terminal. This major update pay dividends for a long time into the future as the terminals range of features expand. Enough talk, here is the heatmap in all its buttery 13.7m block glory.

Order Book Streams

Nailing the heatmap rendering is one thing, but ensuring that the data that is being fed can take full advantage of this new unlocked graphical performance, was another huge task within itself. Although new shader was performing well using the MMT's previously built Order Book data feeds, we felt this could be improved to fully exploit the new heatmap's full potential.

Similar to the heatmap's intensive rendering requirements on the client, processing of all raw changes within the Order Book is just as resource intensive our end on the server . Processing thousands of order book updates a second, at every price level, across multiple pairs, all whilst ensuring near zero latency, is just as complex of a task as the shader itself, particularly as MMT begins adds new markets and exchanges over time.

To ensure maximum throughput from the time of launch, we restructured how order book data was collected, processed, stored and subsequently served to the client. This was ultimately achieved by building an entirely new and proprietary database. The change in the structure of this new database unlocked huge gains in both the processing throughput, and the subsequent speed of data streaming to the new heatmap shader. Importantly this will also scale well as our pair coverage expands into the future.

Base/Quote/USD Denomination Selector - Coming Soon

Another milestone that has been unlocked is the ability to configure the denomination of the values in the heatmap. Although it didn't quite make today's release, this configuration option will be coming very soon.

USD-Denomination.png

Future Proofing

Thanks to these new implementations on both the front and back end, we are now theoretically unconstrained on what can be rendered on your screen. The new approaches will be applied where applicable to other elements within the chart and the broader terminal itself. Of particular note, is that these new performance unlocks will be instrumental when custom scripting capabilities are added to MMT.

blue.png

As a final note we'd also like to say a yuuuge thanks to HTS for their contributions to this update. God's work ser <3

🚀 New Heatmap v2 Features:

🔍 HD/SD Toggle

View the heatmap in up to 5x greater detail than before with the new 'HD' toggle. This new toggle allows you to switch the heatmap bin sizes to suit the style or particular type of analysis you are performing. Here is a quick comparison of two on BTC:

AfterBefore
SD
HD

← SD vs HD →

🎨 Newly configured Heatmap Themes

The heatmap's themes have had a complete overhaul to ensure that the new shader and the increased granularity of 'HD' mode are best complemented. There are now over 25 options to choose from! Our personal favourite is 'MMT Deep Ocean' - seems appropriate given we are assessing liquidity…

🚀 New Additions

It wasn't just the heatmap that got some love this week:

⭐️ Order Book - Size Scaled Rows

Rather than the cumulative view that was displayed behind size column, we have instead scaled each visible row within the Order Book to allow easier comparison of size.

Each row within the Order Book will have their width scaled according their respective 'Size' within the visible Order Book.

⭐️ DOM - Profile View

After listening to user feedback, we've taken a similar approach to the DOM widget.

Each of the 'Size' columns within the DOM now has their own individual profile. This is an experimental change.

DOM Theme and Custom Grouping

Also within the DOM we have added themes in addition a custom input with which to group price.

Custom-grouping-DOM.png

To enable click on the new 'cog' icon and select your preferences. If this proves popular we will apply to the Order Book widget in a future release.

🛠️ Improvements

⭐️ Footprint Base Color - Added base color FP. This prevents heatmap bleeding into the Footprint itself.

⭐️ UI: Re-designed slider input for heatmap - This will now scale based on the pair's 'max' ceiling.

⭐️Tweaked 'Remove Price Line' to still show price label on Y-axis

🐛 Bug Fixes

  • Removed alpha grading that was previously applied.
  • Fixed issue when main price chart may loose visual anchor, when maximising and minimising an underlay indicator.

⏰ 25% Discount for Life - OFFER ENDS SOON

Less than 10 days left to lock in a perpetual 25% discount off the MMT Pro yearly subscription price! Once this offer ends it will not be returning. This is your final opportunity to secure your discount for life.

👉 Grab this offer while you still can!

Final Thanks

This update was complex, but these foundational changes to rendering has unlocked lots of new possibilities. We thank you all of your continued support;

Love, MMT ❤️