DE102022000391A1 - Zuordnungsgerät für Handelsaufträge - Google Patents
Zuordnungsgerät für Handelsaufträge Download PDFInfo
- Publication number
- DE102022000391A1 DE102022000391A1 DE102022000391.0A DE102022000391A DE102022000391A1 DE 102022000391 A1 DE102022000391 A1 DE 102022000391A1 DE 102022000391 A DE102022000391 A DE 102022000391A DE 102022000391 A1 DE102022000391 A1 DE 102022000391A1
- Authority
- DE
- Germany
- Prior art keywords
- order
- orders
- data
- trading
- received
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 description 4
- 238000000034 method Methods 0.000 description 3
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Aufgabe von Handelsplattformen wie Börsen ist es, sich auf bestimmte Waren beziehende An- und Verkaufsaufträge einander zuzuordnen und sie dann gegeneinander auszuführen. Die Aufträge können dabei in großer Zahl eintreffen und hohe Bearbeitungsgeschwindigkeiten erfordern, so wie es beispielsweise im Hochfrequenzhandel der Fall ist. Suchen und Sortieren sind bei der Auftragszuordnung die aufwändigsten Arbeitsschritte.Um die für Suchen und Sortieren erforderliche Verarbeitungszeit einzusparen, werden die Daten zur Ausführung anstehender Aufträge unsortiert in den Zeilen eines abschnittsweise inhaltsadressierbaren Datenspeichers abgelegt. Dessen Logik vergleicht nach Eingang eines neuen Auftragsdatensatzes die Kennzeichnung der darin genannten Ware parallel mit den Werten der entsprechenden Kennzeichenfelder in allen den belegten Zeilen, deren Auftragstyp invers zu dem des eingegangenen Auftrags ist, und markiert als Ergebnis die Zeilen, deren Aufträge für eine Handelstransaktion in Frage kommen. Der eingegangene Auftragsdatensatz wird in eine nicht belegte Zeile geschrieben, sofern keine Übereinstimmung gefunden wird. Datenverarbeitung, elektronischer Handel, Hochfrequenzhandel.
Description
- Aufgabe von Handelsplattformen wie Börsen ist es, sich auf bestimmte Waren oder Güter beziehende An- und Verkaufsaufträge einander zuzuordnen, um sie dann ausführen zu können. Wie beispielsweise im Hochfrequenzhandel können die Aufträge dabei in großer Zahl und sehr schneller Folge eintreffen.
- Diese Aufgabe erfüllen herkömmliche elektronische Handelsplattformen durch Einsatz entsprechender Anwendungsprogramme, zu denen auch öffentlich verfügbare [7] gehören. Gemäß der Ansprüche von
US5727165A ,US5924082A ,US20030225673A1 ,EP2355015A1 bzw.US20210209690A1 ,CA3012108A1 bzw.US20180330440A1 oderWO2021025606A1 werden solche Programme auf handelsüblichen Digitalrechnern ausgeführt.WO2001042950A2 bzw.WO2001042950A8 beschreibt eine Datenverarbeitungsanwendung zur Auftrags- und Transaktionsverwaltung im elektronischen Handel und erwähnt darin die Zuordnung von An- zu Verkaufsaufträgen zwar nur ohne Angabe der Ausführungsweise, jedoch spezifizieren die Ansprüche explizit, dass für jegliche Verarbeitung sequentielle Programme ausgeführt werden. Und [6] lässt völlig offen, wie zugeordnet wird. - Zuordnungsprogramme suchen Auftragspaare, die gegeneinander ausgeführt werden können. Dabei stehen sich jeweils An- und Verkaufsaufträge einander gegenüber. Nach Eingang werden die Aufträge nach ihrem Typ (An- oder Verkauf), Preis und Eingangszeit in eine zentrale Auftragsdatei einsortiert [3]. Dort verbleibt ein Auftrag solange, bis seine gesamte gewünschte bzw. angebotene Menge nach in [4] genannten Verfahren von entsprechenden Verkaufsaufträgen abgegeben bzw. Ankaufsaufträgen aufgenommen worden ist. Suchen und Sortieren sind die aufwändigsten Arbeitsschritte der Programmausführung; die dafür erforderlichen Zeiten hängen vom jeweiligen Umfang der Auftragsdatei ab, weshalb die Zeiten weder vorhersehbar noch nach oben abschrankbar sind. Der programmgestützten Auftragszuordnung und -ausführung mangelt es mithin an Echtzeitfähigkeit.
- Obere Zeitschranken für die Auftragszuordnung werden auch durch die Ansätze [8] und [1] zu beschleunigter Verarbeitung nicht garantiert. Ersterer setzt für die Abarbeitung von Programmsegmenten zur Auftragszuordnung Graphikprozessoren ein, während letzterer Mehrkernprozessoren verwendet und zur Datenspeicherung Festplatten durch Halbleiterspeicher ersetzt.
- Digitalrechner bei Handelshäusern senden die Auftragsdaten zu Börsenrechnern über handelsübliche Datenfernübertragungsverbindungen. Weil die Dauern solcher Übertragungen durch die Entfernungen zwischen Sendern und Empfängern sowie die Lichtgeschwindigkeit in den Ubertragungsmedien bestimmt sind, lassen sie sich nur durch Verkürzung der Entfernungen verringern. Deshalb bieten Wertpapierbörsen für den Hochfrequenzhandel die Unterbringung ihrer Rechner und der von Handelshäusern in gemeinsam genutzten Räumen an. Nur für dort vertretene Handelshäuser ist die Ubertragungszeit zu Börsenrechnern so gering, dass sie Hochfrequenzhandel sinnvoll betreiben können. Die Deutsche Börse garantiert diese Latenzzeit [2] und dass sie für alle Händler gleich ist. Es werden allerdings keine technischen Schutzmaßnahmen eingesetzt, um Informations- und Kommunikationssicherheit zu gewährleisten. Verluste von Datenpaketen nehmen Hochfrequenzhändler ohne Reaktion hin.
- Beschleunigt werden kann die Auftragsbearbeitung nach [5] durch Dekomprimieren und Dekodieren eingehender An- und Verkaufsauftragsdatensätze in einem mittels feldprogrammierbarer Logik oder anwendungsspezifischen Schaltkreisen realisierten und ohne Betriebssystem betriebenen Spezialprozessor, parallelen Einsatz mehrerer solcher Prozessoren sowie durch Hochgeschwindigkeitsschnittstellen, z.B. direkten Zugriff dieser Prozessoren auf die Speicher der Börsenrechner. Die Auftragszuordnung bleibt davon jedoch unberührt.
- Die mangelnde Echtzeitfähigkeit mittels auf handelsüblichen Digitalrechnern laufenden Anwendungsprogrammen implementierter Auftragszuordnung wird erfindungsgemäß durch vollständige Eliminierung der Notwendigkeit zu sortieren und durch von der jeweiligen Größe der Auftragsdatei unabhängiger, in einem einzigen Schritt mit konstantem Zeitbedarf ausführbarer Suche beseitigt.
- Dazu werde die Auftragsdatei in Form eines zweidimensionalen Feldes von Speicherzellen für einzelne Bits realisiert. Das erste Bit „Belegt“ jeder Zeile des Feldes gebe an, ob die Zeile mit Daten eines noch auszuführenden Auftrags belegt ist. Gegebenenfalls gebe dann das zweite Bit „Auftragstyp“ an, ob es sich um einen Ankaufs- (0) oder einen Verkaufsauftrag (1) handelt. Die in der Zeile nachfolgenden Bits enthalten die Kennzeichnung der zu handelnden Ware und weitere Daten des Auftrags. Weiterhin gebe es ein Vergleichsregister, dessen erstes Bit dem Auftragstypbit der Feldzeilen entspreche und dessen weitere Bits ein Warenkennzeichen aufnehmen können. Feld und Vergleichsregister bilden zusammen mit einer Vergleichslogik und einem Ergebnisvektor, der für jede Feldzeile ein Bit enthalte, einen teilweise inhaltsadressierbaren Speicher.
- Nach Eingang eines Auftrags werden dessen Typ und Warenkennzeichen in das Vergleichsregister geladen und von der Vergleichslogik parallel mit den entsprechenden Bitgruppen in allen belegten Feldzeilen verglichen, deren Auftragstyp invers zu dem des eingegangenen Auftrags ist. Nach Beendigung der Vergleichsoperation enthält jedes Bit des Ergebnisvektors den durch Konjunktion des Bits „Belegt" der entsprechenden Zeile, des Ergebnisses der Antivalenz des Bits „Auftragstyp“ der Zeile und des Auftragstypbits des Vergleichsregisters sowie der Identitäten der einander in der Zeile und im Vergleichsregister entsprechenden Bits der Warenkennzeichen gebildeten Wert. Der Ergebnisvektor markiert somit die Zeilen, deren Aufträge für eine Handelstransaktion mit dem eingegangenen Auftrag in Frage kommen. Dessen Datensatz wird in eine nicht belegte Feldzeile geschrieben, sofern keine Übereinstimmung gefunden wurde. Andernfalls werden diese Auftragsdaten und der Inhalt des Ergebnisvektors zur weiteren Bearbeitung und Auftragsausführung an ein dafür zuständiges Anwendungsprogramm übergeben.
- Beispiele für Kennzeichnungen gehandelter Waren und Güter sind die Europäische Artikelnummer (EAN), die Internationale Standardbuchnummer (ISBN) oder die Internationale Wertpapierkennnummer (ISIN).
- Über die Warenkennzeichen hinaus lässt sich die Vergleichsfunktionalität des inhaltsadressierbaren Speichers auf andere Bestandteile der Auftragsdatensätze wie Menge oder Preis erweitern. Dabei kann die Vergleichslogik so ausgelegt werden, dass sie nicht nur auf Gleichheit, sondern auch auf Einhaltung gewisser Relationen wie „kleiner“ oder „größer“ oder bestimmter Wertebereiche prüft.
- Da Auftragsdaten in der Regel bitseriell übertragen werden, ist es nicht erforderlich, vor Ausführung der Vergleichsoperation den Eingang vollständiger Datensätze abzuwarten. Stattdessen kann eine deutlich einfachere Vergleichslogik unmittelbar bei seinem Eintreffen jedes einzelne Bit des Warenkennzeichens eines eingehenden An- bzw. Verkaufsauftrages mit jeweils allen entsprechenden Bits der Warenkennzeichen der auf Ausführung wartenden Ver- bzw. Ankaufsaufträge vergleichen. Dazu wird für jede Feldzeile das entsprechende Bit des Ergebnisvektors mit dem Wert der Konjunktion des Bits „Belegt“ der Zeile mit dem Ergebnis der Antivalenz des Bits „Auftragstyp“ der Zeile und des Auftragstypbits des eingehenden Auftragsdatensatzes initialisiert. Danach wird jedes Warenkennzeichenbit des einlaufenden Auftragsdatensatzes mit seinen Gegenstücken in den Feldzeilen verglichen und werden die Werte der Konjunktionen der Vergleichsergebnisse mit den Inhalten der entsprechenden Ergebnisvektorbits in letzteren abgelegt. Sobald der Auftragsdatensatz in voller Länge eingegangen ist, kann deshalb unmittelbar zur weiteren Bearbeitung übergegangen werden.
- Durch Einsatz eines inhaltsadressierbaren Datenspeichers entfällt vollständig die Notwendigkeit, im Zuge der gegenseitigen Zuordnung von Handelsaufträgen deren Datensätze zu sortieren, und wird die Zeit zur Suche nach passenden Aufträgen nicht nur um Größenordnungen reduziert, sondern diese Suchzeit wird auch zu einer von der Anzahl zu betrachtender Datensätze unabhängigen Konstanten. Die algorithmische Komplexität der mittels inhaltsadressierbarem Speicher realisierten Suchfunktionalität beträgt also O(1). Laufen die Auftragsdatensätze bitseriell ein und werden sie von der Variante des inhaltsadressierbaren Speichers nach Anspruch 2 bearbeitet, so sind die Suchvorgänge bereits vollzogen, wenn der Eingang der Datensätze endet, d.h. auch die Suchzeit entfällt völlig. Ein weiterer Vorteil dieser Variante ist, dass der inhaltsadressierbare Speicher nur Vergleichslogik für eine Bitspalte erfordert. Erfindungsgemäß wird die insbesondere beim Hochfrequenzhandel entscheidende Latenzzeit der Auftragsbearbeitung deutlich verringert und die Einhaltung gegebener Zeitschranken, d.h. Echtzeitfähigkeit, gewährleistet. Bei der Menge und Häufigkeit eingehender Handelsaufträge angemessener Dimensionierung können mithin keine Auftragsdaten verloren gehen und die Handelsrechner nicht überlastet werden.
- ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Patentliteratur
-
- US 5727165 A [0002]
- US 5924082 A [0002]
- US 20030225673 A1 [0002]
- EP 2355015 A1 [0002]
- US 20210209690 A1 [0002]
- CA 3012108 A1 [0002]
- US 20180330440 A1 [0002]
- WO 2021025606 A1 [0002]
- WO 2001042950 A2 [0002]
- WO 2001042950 A8 [0002]
Claims (2)
- Zuordnungsgerät für Handelsaufträge, wobei die Datensätze zur Ausführung anstehender Aufträge unsortiert in den Zeilen eines abschnittsweise inhaltsadressierbaren Datenspeichers abgelegt sind, dessen Logik nach Eingang eines neuen Auftragsdatensatzes die Kennzeichnung der darin genannten Ware parallel mit den Inhalten der entsprechenden Kennzeichenfelder in allen den belegten Zeilen vergleicht, deren Auftragstyp invers zu dem des eingegangenen Auftrags ist, und als Ergebnis die Zeilen markiert, deren Aufträge für eine Handelstransaktion in Frage kommen, sowie den eingegangenen Auftragsdatensatz in eine nicht belegte Zeile schreibt, sofern keine Übereinstimmung gefunden wird.
- Auftragszuordnung gemäß
Anspruch 1 , wobei unmittelbar nach seinem Eintreffen jedes Bit des Warenkennzeichens in dem bitseriell übertragenen Datensatz eines eingehenden An- bzw. Verkaufsauftrages mit allen jeweils entsprechenden Bits der Warenkennzeichenfelder der auf Ausführung wartenden Ver- bzw. Ankaufsaufträge verglichen wird.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022000391.0A DE102022000391A1 (de) | 2022-02-02 | 2022-02-02 | Zuordnungsgerät für Handelsaufträge |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022000391.0A DE102022000391A1 (de) | 2022-02-02 | 2022-02-02 | Zuordnungsgerät für Handelsaufträge |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022000391A1 true DE102022000391A1 (de) | 2023-08-03 |
Family
ID=87160614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022000391.0A Pending DE102022000391A1 (de) | 2022-02-02 | 2022-02-02 | Zuordnungsgerät für Handelsaufträge |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022000391A1 (de) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5727165A (en) | 1990-12-17 | 1998-03-10 | Reuters Limited | Offer matching system having timed match acknowledgment |
US5924082A (en) | 1994-08-17 | 1999-07-13 | Geneva Branch Of Reuters Transaction Services Limited | Negotiated matching system |
WO2001042950A2 (en) | 1999-12-08 | 2001-06-14 | Broker-To-Broker Networks, Inc | Order management system |
US20030225673A1 (en) | 2002-06-05 | 2003-12-04 | Hughes John T. | Order matching process and method |
EP2355015A1 (de) | 2010-01-04 | 2011-08-10 | Cinnober Financial Technology AB | Bestellabgleich |
US20180330440A1 (en) | 2013-11-05 | 2018-11-15 | Thomson Reuters Global Resources Unlimited Company | Delay-free matching for deemphasizing effects of speed differentials among price-makers |
CA3012108A1 (en) | 2018-03-27 | 2019-09-27 | Thomson Reuters Global Resources Unlimited Company | Delay-free matching for deemphasizing effects of speed differentials among price-makers |
WO2021025606A1 (en) | 2019-08-06 | 2021-02-11 | Nasdaq Technology Ab | Order management system for improved latency |
US20210209690A1 (en) | 2010-01-04 | 2021-07-08 | Cinnober Financial Technology Ab | Order matching |
-
2022
- 2022-02-02 DE DE102022000391.0A patent/DE102022000391A1/de active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5727165A (en) | 1990-12-17 | 1998-03-10 | Reuters Limited | Offer matching system having timed match acknowledgment |
US5924082A (en) | 1994-08-17 | 1999-07-13 | Geneva Branch Of Reuters Transaction Services Limited | Negotiated matching system |
WO2001042950A2 (en) | 1999-12-08 | 2001-06-14 | Broker-To-Broker Networks, Inc | Order management system |
US20030225673A1 (en) | 2002-06-05 | 2003-12-04 | Hughes John T. | Order matching process and method |
EP2355015A1 (de) | 2010-01-04 | 2011-08-10 | Cinnober Financial Technology AB | Bestellabgleich |
US20210209690A1 (en) | 2010-01-04 | 2021-07-08 | Cinnober Financial Technology Ab | Order matching |
US20180330440A1 (en) | 2013-11-05 | 2018-11-15 | Thomson Reuters Global Resources Unlimited Company | Delay-free matching for deemphasizing effects of speed differentials among price-makers |
CA3012108A1 (en) | 2018-03-27 | 2019-09-27 | Thomson Reuters Global Resources Unlimited Company | Delay-free matching for deemphasizing effects of speed differentials among price-makers |
WO2021025606A1 (en) | 2019-08-06 | 2021-02-11 | Nasdaq Technology Ab | Order management system for improved latency |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60037174T2 (de) | Puffersystem für externen speicherzugriff | |
Plerou et al. | Scaling of the distribution of price fluctuations of individual companies | |
DE60019148T2 (de) | Dma-deskriptor-architektur mit verknüpfter liste | |
US7539689B2 (en) | Bundling database | |
DE102017120787A1 (de) | Verfahren und Vorrichtung zum Entladen von Datenverarbeitung in Hybrid-Speichervorrichtungen | |
DE102009012766A1 (de) | Ein Zugriffssperrenvorgang, um atomare Aktualisierungen zu einem geteilten Speicher zu ermöglichen | |
CN101739281A (zh) | 用于机器集群的并行编程的架构 | |
DE2934344C2 (de) | ||
DE112006001345T5 (de) | Aufgabenzuweisung für Geräte mit derselben Konnektionsadresse | |
CN107729423A (zh) | 一种大数据处理方法及装置 | |
CN109858849A (zh) | 仓库管理系统出库方法、装置及存储介质 | |
DE112017002460T5 (de) | Verwenden eines b-baums zum speichern von grapheninformation in einer datenbank | |
DE102015203202B4 (de) | Speicher-Subsystem mit auf ein Wrapped-Lesen folgendem kontinuierlichen Lesen | |
DE2149200B2 (de) | Einrichtung zur Auswahl von im Verlauf einer Programmbearbeitung am häufigsten benotigten Daten | |
DE102022000391A1 (de) | Zuordnungsgerät für Handelsaufträge | |
DE10103070A1 (de) | System und Verfahren zum Finden und Prüfen der Gültigkeit des neulichsten Vorabladevorgangs für einen gegebenen Prüfladevorgang | |
US8229946B1 (en) | Business rules application parallel processing system | |
US7076492B2 (en) | General business report generation | |
DE112014003212T5 (de) | Verfahren und System zum Implementieren einer Bitmatrix in einer Cachespeicherzeile | |
DE102005036605B4 (de) | Schnelle Universalrechnerarchitektur mit automatischer Programmvariantenauswahl | |
US7712097B2 (en) | Data processing system to initialize or modify the system to perform transactions using mask comprises on/off flags | |
US7437355B2 (en) | Method and system for parallel update of database | |
US20230325382A1 (en) | Horizontal processing of sequential data (hpsd), and detached field batch process (dfbp) | |
US11599530B2 (en) | Method of processing data in a database by simultaneously processing row data of key pairs which include a key of a first table in the database, and a matching key and a unique row of a second table in the database | |
Bertoletti et al. | Optimization of Investment—A Solution by Linear Programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R086 | Non-binding declaration of licensing interest | ||
R012 | Request for examination validly filed | ||
R084 | Declaration of willingness to licence |