Case study / Reinterpretation

Streamlining the complexity of fixed income

A lightweight, logic-driven workstation for MarketAxess.

Role
Senior UX Designer
Team
MarketAxess
Year
2021–25

This project is a retrospective interpretation of institutional trade execution and high-density data systems influenced by my time at MarketAxess. It's designed to address the unique complexities of bond trading, and simplify a trader's workflow.

My reinterpretation of the MarketAxess Activity Console

Introduction

As Senior UX Designer, I collaborated with a specialist team of developers and product specialists to deconstruct years of legacy feature-bloat. Our mission was to develop a new, React-based execution platform from the ground up.

By distilling fragmented workflows into a cohesive visual language and a centralised component library, the team transformed a dense, ‘bolted-on’ ecosystem into a lightweight, logic-driven interface that streamlines established trading patterns.

Flow breakdown: the stages of a trade

Flow diagram of a Request for Quote: the trader sends a request, dealers respond with offers, and the trader can pass, counter, or accept the best quote.
  1. Overview

    In institutional finance, bonds are traded "over-the-counter," requiring a negotiation process known as a Request for Quote (RFQ). A trader's workflow is fast-paced: they stage multiple bonds, seek competitive pricing from a global network of dealers, and analyse incoming quotes against real-time benchmarks.

  2. Request for quote

    When the trader selects an order, the details panel slides into view. Here they can configure their trade before submitting their request. Importantly, this is the stage where the trader is able to decide which dealers / counterparties they'd like to send their request to.

    Once the trader is ready, they can hit the Send RFQ button which takes the order to the next stage.

  3. Dealers receive the RFQ

    Once the trader submits an RFQ, it's sent to all the relevant dealers. During this stage the order's status is 'Pending', meaning the order is with the dealers but no responses have been received yet.

    The dealer selection pills transition to represent a tile on the heatmap, however until a response is received, each tile displays a pulsing empty state.

  4. Trader receives quotes from dealers

    Now the order is 'Live'. The trader's UI shows a surge of activity in the heatmap and a market depth grid. Some early offers appear bright red telling the trader these offers are well over the benchmark prices for this bond, but as the end of the live window closes in, the field is looking a lot more competitive.

  5. Ready to trade

    The live window has now closed and the order moves to a ready to trade status. The entire row is highlighted in gold to reinforce urgency. The best quote is at the top of the stack and highlighted with a bold green border.

    At this stage, the trader has a number of options:

    • Trade with the best dealer
    • Select any other dealer in the grid and trade with them instead
    • Counter the dealer's quote. This initiates a back and forth with the dealer to negotiate a better price.
    • Pass on the trade. This reverts the order back to its default staging status.
  6. Trade done

    Once the trader reaches a satisfactory price, they review the details of the trade and confirm. A trade executed card is then displayed, showing a final summary of the trade.

The workspace

At the heart of the UI is the main grid. Think of it as today’s to-do list, with a few more bells and whistles. Each row represents a bond, and bonds are neatly organised into groups, and each group is ordered so bonds that require attention always sit at the top of a stack.

This is a dynamic and always shifting workspace, but the UI helps to keep a tab on the important details at the right moments; orders are colour-coded by status, a persistent pattern across the application; performance and trends are monitored on a heads-up display; and counterparty activity is displayed with impact so an opportunity is never missed.

The full workspace with a heads-up display of weighted averages and execution totals above the live order grid.

The main tab displays a simple overview of activity, so the trader can remain informed while taking on tasks in other workspaces.

Colour-coded pillars signal the exact stage of an order. By using a ‘possession-based’ logic, the UI tells the trader at a glance if they are waiting on a dealer or if it’s their turn to act.

The collapsible group header contains a summary of its contents, the status and sides of its orders. By default, the orders are grouped by sector, but there’s flexibility to group orders by status, currency, liquidity score etc.

Clicking the date/time brings up the summary view. Here the trader can see a summary of orders executed so far on that day. The chart displays the time of execution, the side, and the size of the bubble represents the value of the trade.

Weighted averages and execution totals update instantly. This gives the user a view of their progress against daily goals at a glance.

When dealer responses start arriving, the response panel floods with activity - the red blocks indicate a response below benchmark and the green blocks indicate a response above benchmark.

The main tabs