Pre-marshalling Messages in Electronic Trading Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current electronic trading systems face challenges in maintaining high performance and providing up-to-date market information due to the overwhelming volume of messages exchanged between client devices and electronic exchanges, leading to delayed processing capabilities.

Innovation Solution

The implementation of pre-marshalling messages in an electronic trading environment allows client and network devices to anticipate and create messages in response to defined conditions, such as trader actions or message requests, thereby reducing the processing load when messages are actually needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If the volume of messages exchanged between client devices and electronic exchanges increases to provide more up-to-date market information, then the information freshness is improved, but the processing capabilities become overwhelmed and delays increase

Engineering Contradiction:
Improveinformation freshnessVSAvoidprocessing speed
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-marshalling messages in advance before they are actually needed. When a condition is satisfied (such as a trader action or message request), the system creates and queues the appropriate response message beforehand, so that when the message is needed, it is already prepared and ready for immediate transmission, eliminating processing delays

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The message processing is segmented into distinct phases: message pre-marshalling phase where messages are created and queued in advance, and message transmission phase where pre-prepared messages are sent. This segmentation allows the system to perform heavy processing work in advance during low-load periods and only perform light retrieval operations when messages are needed

Inventive Principle:
Principle #1Segmentation

2Reliability

If more messages are processed to maintain high performance and up-to-date information, then the market information quality is improved, but the CPU capabilities and network connections become overburdened

Engineering Contradiction:
Improvemarket information qualityVSAvoidsystem load
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary message preparation work in advance, creating and validating message structures before they are needed for transmission. This preliminary action reduces the real-time processing burden on CPUs and network connections, allowing the system to maintain high message processing volumes without overwhelming system resources

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The message pre-marshalling system operates autonomously based on defined conditions and rules. Once configured with the set of conditions and corresponding messages, the system automatically determines when to pre-marshal which messages without requiring continuous human intervention or complex real-time decision-making, reducing the operational complexity

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12271947B2System and method for pre-marshalling messages in an electronic trading environment
Publication Date: 2025.04.08 TRADING TECHNOLOGIES INTERNATIONAL INC
  • US12271947B2 patent drawing
  • US12271947B2 patent drawing
  • US12271947B2 patent drawing

AI summary

System and methods for pre-marshalling messages in an electronic trading environment are provided. Specifically, pre-marshalling messages allows for client and network devices to create messages in response to a defined first condition. Pre-marshalling messages allows a trading system to do more processing up front before the message is needed and when a second condition is satisfied. Thus, when the message is needed no further or very little processing must be performed to generate and send the message. The client and/or network device may allocate a separate, unused, or under-utilized processing thread to the task of creating pre-marshalled messages. Pre-marshalled messages may be stored in memory at the network device until it is determined that the second condition has been satisfied. Once a pre-marshalled message is sent, the unused pre-marshalled messages that were stored in memory may be deleted or may be overwritten with newly pre-marshalled messages.