Order Matching via Dynamic Subset Sum Algorithm

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing trading systems face challenges in efficiently matching bid and ask orders, especially with minimum volume conditions, due to the complexity of finding optimal solutions, which often results in suboptimal outcomes or exclusion of minimum volume conditions from equilibrium price calculations.

Innovation Solution

An automated trading system utilizing a dynamic programming algorithm to solve the subset sum problem by constructing a matrix that represents the subset sums of bid and ask orders, allowing for the identification of the highest common sum and optimal order combinations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a dynamic programming algorithm is used to solve the subset sum problem for finding optimal order combinations, then the accuracy of turnover maximization is improved, but the computational time and complexity increase significantly

Engineering Contradiction:
Improveaccuracy of turnover maximizationVSAvoidcomputational time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The algorithm segments the order matching problem into smaller subproblems by processing orders in groups and building up solutions incrementally. The dynamic programming table is constructed by considering orders one at a time, where each cell represents a subproblem of finding subset sums for a specific subset of orders, allowing the complex problem to be solved through combination of simpler solutions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary calculations by pre-computing subset sums for combinations of orders and storing them in a dynamic programming table. This allows the equilibrium price calculation to use pre-computed data rather than recalculating from scratch, reducing the time required for the actual price determination while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If minimum volume condition orders are included in equilibrium price calculations, then the representation of true market situation is improved, but the complexity of order matching increases

Engineering Contradiction:
Improverepresentation of true market situationVSAvoidcomplexity of order matching
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The dynamic programming algorithm serves multiple functions simultaneously: it calculates subset sums for orders, determines possible trade volumes respecting minimum volume conditions, and identifies optimal combinations that maximize turnover. This multi-functional approach allows minimum volume condition orders to be integrated into equilibrium price calculations without requiring separate complex processing steps.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The algorithm handles minimum volume conditions by modifying the parameters used in subset sum calculations. Instead of treating all orders uniformly, the system adjusts the volume parameters to account for minimum volume requirements, allowing orders to be matched only if they satisfy their minimum volume conditions while still participating in the equilibrium price calculation.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If the subset sum problem is solved exactly to maximize turnover, then the optimality of order matching is improved, but the scalability of the system deteriorates

Engineering Contradiction:
Improveoptimality of order matchingVSAvoidscalability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The dynamic programming approach adapts its computational requirements based on the number and complexity of orders. The algorithm's time and space complexity grow polynomially with the number of orders rather than exponentially, allowing the system to scale to larger order books while maintaining exact solutions. The algorithm dynamically adjusts which subset sums it computes based on the actual order data provided.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12236484B2Order matching
Publication Date: 2025.02.25 NASDAQ TECHNOLOGY AB
  • US12236484B2 patent drawing
  • US12236484B2 patent drawing
  • US12236484B2 patent drawing

AI summary

An automated trading system, comprising an interface for receiving a plurality of orders comprising bid orders and ask orders; and a trading module for matching the bid orders and the ask orders, the trading module comprising a memory for storing the plurality of orders; a subset sum module configured to find the subset sums of the bid orders and the subset sums of the ask orders of the plurality of orders; and an order matching module for matching a combination of bid orders to a combination of ask orders based on the subset sums for the bid orders and the subset sums of the ask orders, wherein the subset sum module is configured to find the subset sums of a set of orders by considering a first set of orders, determining the subset sums of the first set of orders, considering a second set of orders wherein the second set of orders comprises at least one more order than the first set of orders and determining the subset sums of the second set of orders by using the determined subset suns of the first set of orders.