[go: up one dir, main page]

CH709742A1 - Börsenhandelssystem. - Google Patents

Börsenhandelssystem. Download PDF

Info

Publication number
CH709742A1
CH709742A1 CH00867/14A CH8672014A CH709742A1 CH 709742 A1 CH709742 A1 CH 709742A1 CH 00867/14 A CH00867/14 A CH 00867/14A CH 8672014 A CH8672014 A CH 8672014A CH 709742 A1 CH709742 A1 CH 709742A1
Authority
CH
Switzerland
Prior art keywords
trading
data processing
order
trading platform
orders
Prior art date
Application number
CH00867/14A
Other languages
English (en)
Inventor
Anton Gunzinger
Edgar Blum
Hans Burkhard
Rico Piantoni
David Müller
Markus Berner
Samuel Zahnd
Original Assignee
Swisstradingbox Ag
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Swisstradingbox Ag filed Critical Swisstradingbox Ag
Priority to CH00867/14A priority Critical patent/CH709742A1/de
Priority to US15/314,513 priority patent/US20170109824A1/en
Priority to SG11201610138WA priority patent/SG11201610138WA/en
Priority to EP15727867.2A priority patent/EP3152732A1/de
Priority to PCT/CH2015/000084 priority patent/WO2015184558A1/de
Publication of CH709742A1 publication Critical patent/CH709742A1/de
Priority to US16/578,491 priority patent/US11966973B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0647Synchronisation among TDM nodes
    • H04J3/065Synchronisation among TDM nodes using timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Technology Law (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

Die Erfindung betrifft ein Börsenhandelssystem, welches aufweist: Eine Handelsplattform; und eine Mehrzahl von Händlerdatenverarbeitungseinrichtungen; wobei jede Händlerdatenverarbeitungseinrichtung befähigt ist, Aufträge in Form von elektronischen Nachrichten an die Handelsplattform abzugeben, und die Handelsplattform befähigt ist, diese Aufträge in einem Auftragsbuch abzuspeichern oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen; wobei jede Händlerdatenverarbeitungseinrichtung einen Zeitgeber aufweist und eingerichtet ist, jeden Auftrag mit einer Zeitangabe zu versehen, welche den Zeitpunkt der Abgabe des Auftrags repräsentiert; und wobei das System so eingerichtet ist, dass die Handelsplattform eingehende Aufträge strikt in einer Reihenfolge verarbeitet, die der Zeitangabe entspricht. Weiterhin betrifft die Erfindung ein Verfahren zum Betrieb eines Handelssystems für den Börsenhandel, ein Verfahren zum Betreiben einer Handelsplattform, ein Verfahren zur Synchronisation, ein Computerprogramm sowie einen Datenträger.

Description

[0001] Die vorliegende Erfindung betrifft ein Börsenhandelssystem sowie ein Verfahren zum Betreiben eines Börsenhandelssystems.
[0002] Seit Jahren wird der Börsenhandel fast nur noch computerisiert ausgeführt. Dabei sitzen die Händler an einem Computerterminal, und dieses ist über ein Computernetzwerk mit einer computerimplementierten Handelsplattform verbunden. Eine solche Handelsplattform weist als Kernstück mindestens einen sogenannten «Matcher» (Handelsplattformdatenverarbeitungseinrichtung d.h. eine Auftragsbuchführungs- und -ausführungseinheit) auf, in welchem Aufträge in einem Auftragsbuch gespeichert oder ausgeführt werden. Der Matcher ist einerseits – im Allgemeinen über mindestens einen Switch – mit den Händlern und andererseits mit einem Auftragsnachbearbeitungssystem (Backoffice), in welchem die Auftragsausführung komplettiert und bspw. die entsprechende finanzielle Transaktion abgewickelt wird.
[0003] Hat ein Händler Interesse an einem Börsengeschäft, setzt er einen Auftrag (Order) an die Handelsplattform ab. Diese enthält den betroffenen Titel, Informationen darüber ob der Titel verkauft oder gekauft werden soll (buy/sell), die gewünschte Anzahl (Quantity) sowie den Preis. Die Handelsplattform führt das Auftragsbuch (order book). Wenn ein Auftrag eintrifft wird geprüft, ob es einen passenden abgespeicherten Auftrag gibt. Wenn nein, wird der Auftrag im Auftragsbuch gespeichert und an den Auftraggeber quittiert. Wenn ja, wird der Handel ausgeführt, im Verkaufsbuch eingetragen und beide Parteien werden informiert. Die Information über den abgewickelten Handel geht dann in anonymisierter Form (d.h. ohne die Information darüber, wer die beiden involvierten Händler waren) auch an alle Händler («broadcast»). Natürlich ist auch möglich, dass ein Auftrag nur teilweise umgesetzt werden kann, dann verbleibt ein nach Ausführung des Handels verbleibender Rest-Auftrag im Auftragsbuch; in diesem Text ist eine solche teilweise Ausführung des Auftrags jeweils mitgemeint, wenn einer Ausführung des Auftrags erwähnt wird. Ebenso werden neben dem genannten Auftragstyp mit den Attributen buy/sell, Anzahl und Preis auch beliebige andere Auftragsvarianten unterstützt (unter anderem: «Market Order», «Accept Order», «Fill-or-Kill Order», «Iceberg Order»).
[0004] Aus diesem Kommunikationsmuster für den elektronischen Börsenhandel ergeben sich primär drei Arten der Kommunikation: <tb>a)<SEP>Händler->Handelsplattform (Punkt->Punkt) <tb>b)<SEP>Handelsplattform->Händler (Punkt->Punkt) <tb>c)<SEP>Handelsplattform->alle Händler (Broadcast)
[0005] Ein Netzwerk für den schnellen elektronischen Handel sollte diese Kommunikationsmuster unterstützen. Insbesondere bei der Übertragung a) (Händler -> Handelssystem) kommt es auf Fairness an. Daher darf es nicht möglich sein, dass einer der Händler diesen Vorgang manipulieren und sich damit Vorteile verschaffen kann. Ausserdem ist in einem solchen System derjenige Händler, der zuerst über die Information einer Kursänderung verfügt, im Vorteil. Auch hier sollte also die Fairness gewährleistet sein. Ohne spezielle aufwändige Massnahmen ist dies beim Einsatz traditioneller Netzwerke – auch aus dem Supercomputerbereich – nicht möglich. Im Weiteren sollte dafür gesorgt werden, dass in solchen Netzwerken das System nicht überlastet werden kann. Auch sollten hochverfügbare Kommunikationssysteme zur Verfügung stehen.
[0006] Zusätzlich kommt hinzu, dass auch die Entscheidungsfindung beim Händler mit grosser Computerunterstützung erfolgt; in einige Fällen ist es sogar ein Computerprogramm, das beim Händler die effektive Entscheidung trifft (natürlich nach Vorgaben des Händlers). Hier wird von Algotrading gesprochen.
[0007] Bei dieser Anwendung sind Netzwerkgeschwindigkeit, Verarbeitungsgeschwindigkeit im Handelssystem und Verarbeitungsgeschwindigkeit im Händlersystem von entscheidender Bedeutung. Es gibt deshalb im Börsenumfeld viele Bestrebungen, diese diversen Geschwindigkeiten zu verbessern.
[0008] Um die Geschwindigkeit von Kommunikationsnetzwerken zu verbessern, wurden für gewisse Anwendungen bereits Standardnetzwerke aus der Supercomputerwelt vorgeschlagen, da diese zu den weltweit schnellsten Netzwerken gehören.
[0009] Solche Supercomputernetzwerke sind einerseits für Punkt-Punkt-Kommunikation und andererseits für Multicast- /Broadcast optimiert. Die Punkt-Punkt -Kommunikation ist für Supercomputer besonders wichtig, weil in vielen Anwendungen viele «gleichberechtigte» Computer an einer einzelnen Aufgabe arbeiten und damit oft eine Kommunikation mit einem «beliebigen» (von der Aufgabe gegeben) Partner notwendig ist. Bei Multicast- oder Broadcast wird an eine zum Voraus definierte Gruppe eine Nachricht abgesetzt. Dabei wird in der Supercomputerwelt davon ausgegangen, dass alle Partner die Nachricht empfangen; kann ein einzelner Computer die Nachricht nicht annehmen, so muss in der Regel die Rechnung gestoppt werden, weil ein Weiterrechnen beim Fehlen einzelner Computer keinen Sinn mehr macht.
[0010] Es ist offensichtlich, dass bei der Anwendung «Börse» die Information «baumförmig» fliesst: von den Händlern zur Handelsplattform und wieder zurück und beim «Broadcast» von der Handelsplattform an alle Händler.
[0011] Daher verfügt ein Netzwerk aus der Anwendung «Supercomputer» über andere Eigenschaften, als in der Anwendung «Börse» benötigt. Beispielsweise wäre es für eine Börsenanwendung störend, wenn wie bei Supercomputernetzwerden vorgesehen durch einen Fehler oder durch eine gewollte Aktion ein anderer Händlercomputer mit Information übersättigt wird, so dass er nicht mehr ordentlich arbeiten kann. Im Broadcastfall kann das ganze System zum Erliegen kommen und stoppen, wenn ein einzelner der Händlercomputer die Broadcastmeldung, sei es durch ein technisches Problem oder gewollt, nicht annimmt.
[0012] Es wäre daher von Vorteil, wenn Nachteile eines Supercomputernetzwerkes eliminiert werden könnten, ohne dabei den Vorteil der hohen Geschwindigkeit zu verlieren.
[0013] Im Weiteren kann vorteilhaft sein, wenn ein Netzwerk für diese Anwendung «Börse» skalierbar ist, und fast beliebig viele Händlercomputer anschliessbar sind. Es kann dabei auch sinnvoll sein, dass aus Leistungsgründen mehrere Handelsplattformdatenverarbeitungseinrichtungen (Matcher) zum Einsatz kommen.
[0014] Noch ein Problem bei der Anwendung «Börse» ist das Wieder-Synchronisieren einer einzelnen Händlerdatenverarbeitungseinrichtung nach einem lokalen Unterbruch, z.B. durch ein technisches Problem. Nach dem Stand der Technik erfolgt diese Synchronisation durch einen unabhängigen zweiten Kanal, indem die Händlerdatenverarbeitungseinrichtung durch diesen Kanal mit Information über die bereits erfolgten Handelstätigkeiten versorgt wird, bis sie auf demselben «Wissensstand» wie die anderen Händlerdatenverarbeitungseinrichtungen ist. Bei den Hochleistungssystemen kann es durch die hohen Informationsmengen passieren, dass die Neu-Synchronisation Stunden benötigt oder gar nicht mehr möglich ist oder dass gar der Handel für eine gewisse Zeit ausgesetzt werden muss, um eine volle Synchronisation zu ermöglichen.
[0015] Ein wichtiger Themenkomplex betrifft die bei der Bearbeitung der Aufträge. Gemäss dem Stand der Technik sind die Händler mit dem Matcher über eine Netzwerkweiche (Switch) verbunden, und es werden gängige Protokolle, insbesondere TCP/IP-Protokolle verwendet. Gängige Switches haben Pufferspeicher (Buffers) für eingehende Nachrichten, und diese werden nach einem vorgegebenen Ablauf verarbeitet und weitergeleitet. Für die Frage, welche von zwei eintreffenden Nachrichten als erste weitergeleitet wird, spielt also einerseits die Ankunftszeit eine Rolle, andererseits auch bei welcher Schnittstelle (Port) die betreffende Nachricht eintrifft und in welchem Zustand der Switch gerade ist. Aufgrund dieses Umstandes kann ein Händler auch unabsichtlich oder gar absichtlich einen Einfluss auf die Bearbeitung der Aufträge eines anderen Händlers ausüben, unter anderem indem sehr viele Nachrichten in kurzer Zeit abgesetzt werden und damit die Hardware des Switches an die Leistungsgrenze gebracht wird.
[0016] Eine weitere Herausforderung ist die intelligente Aufnahme von Information auf der Händlerseite. Bei einem Hochleistungssystem kann es Zeiten geben, bei denen die Händlerdatenverarbeitungseinrichtung nicht mehr in der Lage sein wird, die Informationsflut, die auf sie hereinbricht, zu bearbeiten und zu sortieren.
[0017] Schliesslich sind die meisten dieser Systeme nicht als hochverfügbare Systeme ausgelegt. Diese Eigenschaft kann nachträglich nur mit sehr hohem Aufwand realisiert werden.
[0018] Es ist eine Aufgabe der vorliegenden Erfindung, die vorstehend geschilderten Nachteile mindestens teilweise zu eliminieren und ein System und ein Verfahren zu schaffen, welches den Anforderungen an Geschwindigkeit, Fairness, Funktionstüchtigkeit während und nach Ausfällen von Komponenten genügt.
[0019] Gemäss einem ersten Aspekt der Erfindung wird Börsenhandelssystem zur Verfügung gestellt, welches aufweist: Eine Handelsplattform; und Eine Mehrzahl von Händlerdatenverarbeitungseinrichtungen; Wobei jede Händlerdatenverarbeitungseinrichtung befähigt ist, Aufträge in Form von elektronischen Nachrichten an die Handelsplattform abzugeben und die Handelsplattform befähigt ist, diese Aufträge in einem Auftragsbuch abzuspeichern oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen; wobei jede Händlerdatenverarbeitungseinrichtung einen Zeitgeber aufweist und eingerichtet ist, jeden Auftrag mit einer Zeitangabe zu versehen, welche den Zeitpunkt der Abgabe des Auftrags repräsentiert; und wobei das System so eingerichtet ist, dass die Handelsplattform eingehende Aufträge strikt in einer Reihenfolge verarbeitet, die der Zeitangabe entspricht.
[0020] Eine «Händlerdatenverarbeitungseinrichtung» kann ein integrierter Computer sein. Sie muss jedoch nicht eine Einheit im Sinne eines «Personal Computer» sein. Sie kann auch auf mehrere, unter Umständen räumlich getrennte, Einheiten aufgeteilt sein; dasselbe gilt für andere in dieser Anmeldung beschriebene Datenverarbeitungseinrichtungen.
[0021] Es wird also Abstand genommen vom bisherigen Ansatz, die Aufträge nach ihrem Eingang («first come, first serve») abzuarbeiten und zu einem «Time Stamping»-System gewechselt. Das bedeutet, dass ein später eingehender Auftrag unter Umständen vor einem bereits vorher eingegangenen Auftrag umgesetzt wird. Das bedingt auch, dass nach Eingang eines Auftrags und vor dessen Umsetzung unter Umständen während eines bestimmten Zeitraums zugewartet wird.
[0022] Das Handelssystem kann – das gilt für alle Aspekte der vorliegenden Erfindung – baumartig-hierarchisch mit mehreren Ebenen aufgebaut sein, wobei die Netzwerkknoten der Ebenen jeweils durch Switches mit je mindestens einer «uplink»-Verbindung und mehreren «downlink»-Verbindungen gebildet werden.
[0023] Gemäss einer Ausführungsform weist mindestens eine Händlerdatenverarbeitungseinrichtung ein Netzwerkinterface (insbesondere eine Netzwerkkarte) auf, über das die Händlerdatenverarbeitungseinrichtung mit der Handelsplattform verbunden ist, und der Zeitgeber ist in das Netzwerkinterface integriert.
[0024] Insbesondere kann vorgesehen sein, dass die Zeitgeber aller Händlerdatenverarbeitungseinrichtungen identisch und vom Systembetreiber zur Verfügung gestellt sind. Es kann beispielsweise vorgesehen sein, dass jeder Händler ein vom Systembetreiber zur Verfügung gestelltes, für alle Händler identisches Netzwerkinterface erhält und nur über dieses mit der Handelsplattform kommunizieren kann.
[0025] Die Handelsplattform weist wie an sich bekannt als Kernstück einen Matcher auf, d.h. eine Handelsplattformdatenverarbeitungseinrichtung, welche eingerichtet ist, ein Auftragsbuch zu führen und die Funktion des Matching (Zuordnung) auszuführen, d.h. des Zusammenführens von Angeboten und Nachfragen nach vordefinierten Regeln (Matchingregeln).
[0026] In Ausführungsformen weist das Handelssystem mindestens eine Netzwerkweiche (Switch) auf, und die Händlerdatenverarbeitungseinrichtungen sind über diese mit dem Matcher verbunden. Der Switch kann bei einer sich für die hier beschriebenen Anwendung ergebenden Netzwerkarchitektur als ein «Aggregation Switch» dienen.
[0027] In diesem Text wird mit «Switch» generell ein Netzwerkknoten bezeichnet, der eine selektive Weiterleitung an bestimmte (einzelne oder mehrere, u.U. wahlweise auch an alle) angeschlossene Geräte erlaubt – im vorliegenden Kontext erlaubt der Switch mindestens, dass ein von einer Händlerdatenverarbeitungseinrichtung eingehender Auftrag an einen oder mehrere Handelsplattformdatenverarbeitungseinrichtung(en) weitergeleitet wird und nicht bspw. auch an alle anderen Händlerdatenverarbeitungseinrichtungen. Ein Switch im hier verwendeten Sinn ist eine diese Funktionalität gewährleistende Einrichtung, unabhängig davon, ob alle dazu gehörenden Elemente physisch beieinander (und bspw. in einem gemeinsamen Gehäuse) angeordnet sind oder nicht.
[0028] Der mindestens eine Switch kann dabei als Teil der Handelsplattform aufgefasst werden, was nicht heisst, dass er physisch am Ort des Matchers vorhanden ist. Mindestens wenn der/die Switch(es) Teil als Teil der Handelsplattform aufgefasst wird/werden, ist die Befähigung, dass eingehende Aufträge durch die Handelsplattform strikt der durch die Zeitangabe vorgegebenen Reihenfolge verarbeitet werden, eine Eigenschaft der Handelsplattform selbst, d.h. die Handelsplattform ist befähigt, die eingehenden Aufträge strikt in Reihenfolge der Zeitangabe zu verarbeiten.
[0029] Es kann nun insbesondere vorgesehen sein, dass die Auftragssortierung (d.h. das Bestimmen der Reihenfolge anhand der Zeitangaben) in diesem Switch erfolgt, der dann auch einen entsprechend eingerichteten Pufferspeicher aufweist. Der Switch leitet dann immer denjenigen Auftrag mit der ältesten Zeit zuerst weiter. Im Matcher werden dann die Aufträge entsprechend der durch die Zeitangaben definierten Reihenfolge abgearbeitet.
[0030] Alternativ oder ergänzend kann die Sortierung auch in einem Priorisierer erfolgen und/oder bestätigt werden, welcher Teil der Handelsplattformdatenverarbeitungseinrichtung ist oder dieser (bspw. unmittelbar) vorgeschaltet ist.
[0031] In redundanten Ausführungen gemäss dem nachstehend noch eingehender beschriebenen dritten Aspekt kann ein solcher Priorisierer ausserdem die zweite von zweimal identisch eintreffenden Nachrichten unterdrücken.
[0032] Durch die verblüffend einfache erfindungsgemässe Massnahme (Versehen der Aufträge mit einer Zeitangabe) ist es nunmehr möglich, eine faire und insbesondere unabhängig von Netzwerkzuständen und Zufällen jederzeit reproduzierbare Ausführung der Aufträge sicherzustellen. Dies wiederum ermöglicht, das System so redundant auszugestalten, dass es gemäss dem unterbruchsfrei verfügbar ist, auch dann, wenn ein Matcher oder ein Switch ausfällt.
[0033] Im System gemäss dem ersten Aspekt der Erfindung hat der Zeitgeber der Händlerdatenverarbeitungseinrichtungen eine wichtige Funktion. Es gibt verschiedene Möglichkeiten für Massnahmen, die sicherstellen, dass alle Händlerdatenverarbeitungseinrichtungen dieselbe Zeit führen: Identische, vom Systembetreiber zur Verfügung gestellte Zeitgeberhardware; Der (bspw. für alle identische) Zeitgeber kann einen freien Oszillator aufweisen oder über den Netzwerktakt laufen; In beiden Fällen kann der Zeitgeber über die Handelsplattform oder über eine vertrauenswürdige externe Quelle – bspw. GPS – wiederholt (bspw. periodisch) synchronisiert werden; Wenn der Zeitgeber über den Netzwerktakt läuft, kann der Netzwerktakt vom der Handelsplattform vorgegeben sein.
[0034] Gemäss einem zweiten Aspekt der Erfindung, welcher mit dem ersten Aspekt kombiniert werden kann, wird ein Börsenhandelssystem zur Verfügung gestellt, welches aufweist: Eine Handelsplattform; und Eine Mehrzahl von Händlerdatenverarbeitungseinrichtungen; Wobei jede Händlerdatenverarbeitungseinrichtung befähigt ist, Aufträge in Form von elektronischen Nachrichten an die Handelsplattform abzugeben und die Handelsplattform befähigt ist, diese Aufträge in einem Auftragsbuch abzuspeichern oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen und das Abspeichern bzw. mindestens teilweise Ausführen an die Händlerdatenverarbeitungseinrichtung zu quittieren; wobei jede Händlerdatenverarbeitungseinrichtung eingerichtet ist, die Anzahl der an die Handelsplattform abgegebene, unquittierte Nachrichten zu überwachen und so eingerichtet ist, dass eine vorgegebene Maximalzahl solchen unquittierten elektronischen Nachrichten zu keiner Zeit überschritten wird.
[0035] Unquittierte Nachrichten sind Nachrichten, für welche noch keine Quittierung empfangen wurde.
[0036] Die Maximalanzahl entspricht einem Nachrichten-Kredit, welcher jeder Händlerdatenverarbeitungseinrichtung zur Verfügung steht. Die Anzahl der Nachrichten, die unterwegs (d.h. abgesandt, aber noch nicht quittiert) sind, darf eine Maximalanzahl nicht überschreiten. Dadurch wird verhindert, dass eine Händlerdatenverarbeitungseinrichtung das Handelssystem unabsichtlich oder absichtlich mit Nachrichten überfluten und so elektronische Datenkanäle verstopfen kann, was ungleiche Bedingungen für die verschiedenen Teilnehmer schaffen würde.
[0037] Weiter kann vorgesehen sein, dass die Grösse mindestens eines Nachrichten-Pufferspeichers des Handelssystems auf die Maximalanzahl abgestimmt ist, derart, dass der Pufferspeicher nicht überlaufen kann.
[0038] Ein solcher Pufferspeicher des Handelssystems kann insbesondere ein Pufferspeicher sein, welcher gemäss dem ersten Aspekt der Erfindung für die Auftragssortierung verwendet wird.
[0039] Ein solcher Pufferspeicher des Handelssystems kann bspw. ein Pufferspeicher eines Switches sein. Dabei kann er ein dedizierter (d.h. für den downlink zum Händler hin reservierter) Pufferspeicher sein, dessen Grösse dann mindestens derjenigen von der Maximalanzahl Nachrichten entspricht. Alternativ kann ein solcher Pufferspeicher auch ein zentraler Pufferspeicher für mehrere Händler (d.h. entweder ein zentraler Pufferspeicher eines Switches oder ein Pufferspeicher eines Switches auf einer höheren Netzwerkebene, seinerseits mit mehreren Switches verbunden) sein.
[0040] In Ausführungsformen, in denen eine Sortierung eingegangener Nachrichten, insbesondere gemäss dem ersten Aspekt, in einem Switch stattfindet, trifft das bevorzugt Kriterium «Grösse des Pufferspeichers ist auf die Maximalanzahl abgestimmt ist, derart, dass der Pufferspeicher nicht überlaufen kann» mindestens für den/die Pufferspeicher des Switches zu, in welchem die/eine Sortierung stattfindet.
[0041] Es kann bspw. vorgesehen sein, dass in einer baumartigen Netzwerkstruktur in jedem Netzwerkknoten genügend Pufferspeicher vorhanden ist, um alle unbeantworteten Nachrichten der dem Netzwerkknoten zugeordneten Händlerdatenverarbeitungseinrichtungen zwischenzuspeichern – im Switch der untersten Ebene entsprechend der mit dem Switch verbundenen Händlerdatenverarbeitungseinrichtungen, bei einem Switch der zweiten Ebene entsprechend über einen Switch der untersten Ebene (oder u.U. direkt) mit dem Switch der zweiten Ebene verbundenen Händlerdatenverarbeitungseinrichtungen, etc.
[0042] Gemäss dem dritten Aspekt der Erfindung, der insbesondere mit dem ersten und/oder zweiten Aspekt kombinierbar ist, ist die Handelsplattform redundant ausgelegt, d.h. alle Komponenten sind doppelt vorhanden, so dass sich im Prinzip (mindestens) zwei Handelsplattformen ergeben.
[0043] Redundanz an sich ist auch bei Börsensystemen an sich bekannt. Gemäss dem Stand der Technik wird für den Ausfall einer systemrelevanten Komponente – bspw. des Matchers – eine entsprechende gleichwertige Komponente bereitgestellt. Im Bedarfsfall wird diese anstelle der ausgefallenen Komponente verwendet, wobei dafür Einschalt- und Synchronisierungsvorgänge notwendig sind. Dasselbe gilt für den Übergang zurück zur Standardkomponente, wenn diese wieder funktionstüchtig ist. In beiden Fällen resultiert eine Zeit, während der das System nicht funktioniert; auch ist die faire Behandlung von Aufträgen im Fall eines solchen Ausfalles an einer im Vornherein unbekannten Stelle des Systems eine Herausforderung.
[0044] Gemäss dem dritten Aspekt der Erfindung sind nun die beiden Handelsplattformen identisch aufgebaut und im Normalbetrieb beide gleichberechtigt im Einsatz. Alle Transaktionen werden also auf beiden Handelsplattformen durchgeführt. Die Handelsplattformen sind so eingerichtet, dass beim gleichzeitigen Betrieb jederzeit gewährleistet ist, dass beide Matcher (oder bei einer Mehrzahl von Matchern pro Handelsplattform die einander entsprechenden Matcher) jederzeit identische Auftragsbücher aufweisen. Dies kann bspw. insbesondere gewährleistet sein, indem gemäss dem ersten Aspekt der Erfindung die Aufträge anhand der Zeitangabe sortiert werden und/oder ggf. nach dem zweiten Aspekt ein Kreditsystem verwendet wird. Sofern Zufallskomponenten eine Rolle spielen (bspw. bei exakt identischen Zeitangaben in zwei Aufträgen) sind die Pseudozufallszahlengeneratoren der beiden Handelsplattformen identisch ausgestaltet und arbeiten mit den gleichen Startwerten.
[0045] Auch der zur Verbindung mit den Händlerdatenverarbeitungseinrichtungen verwendete Switch das System von Switches ist bevorzugt redundant und also mindestens doppelt vorhanden. Dasselbe gilt selbstverständlich für die Verbindungen zwischen den Switches und von diesen zur Handelsplattform- bzw. Händlerdatenverarbeitungseinrichtung. Im Falle eines Systems von Switches mit mehreren Ebenen kann vorgesehen sein, dass die Switches der beiden parallelen Systeme nicht miteinander verbunden sind, sondern nur die Switches der untersten Ebene mit den Händlerdatenverarbeitungseinrichtungen und eventuell der Switch der obersten Ebene mit beiden Handelsplattformdatenverarbeitungseinrichtungen. Jeder Switch einer unteren Hierarchieebene ist dann jeweils nur mit einem Switch der darüberliegenden Hierarchieebene verbunden und nicht bspw. auch mit dem entsprechenden Switch des zweiten, parallelen Systems – solches ist jedoch auch nicht ganz ausgeschlossen.
[0046] Die Switches der obersten Ebene (die zentralen Switches; im allgemeinen pro System je einer) sind mit beiden Handelsplattformdaten Verarbeitungseinrichtungen (oder wenn die Aufgaben des Matchers segmentartig auf mehrere Matcher verteilt sind je mit beiden Handelsplattformdatenverarbeitungseinrichtungen jedes Segments) verbunden. Alternativ kann vorgesehen sein, dass jeder Matcher beim Eingang eines Auftrags seinem Pendent (d.h. dem anderen Matcher) diesen Auftrag weitergibt. In beiden Fällen trifft im Normalbetrieb des Handelssystems ohne ausgefallene Netzwerkkomponenten daher jeder Auftrag zweimal bei jedem zuständigen Matcher ein. Es kann optional noch je eine Verzögerungseinheit vorgesehen sein, welche die über dasjenige System von Switches hereinkommenden Nachricht leicht verzögert, von welchem eine schnellere – weil direktere – Nachrichtenübertragung erwartet wird.
[0047] Ausserdem kann ein Priorisierer – beispielsweise der vorstehend beschriebenen Art, oder auch ohne Funktion der Sortierung nach Zeitangabe – vorhanden sein, welche bei Ausführungsformen, die auch dem ersten Aspekt entsprechen, eine Sortierung nach Zeitangabe vornimmt (sofern das nicht bereits in einem Switch geschehen ist) und der insbesondere identische Nachrichten unterdrückt.
[0048] Bei Ausführungen dritten Aspekts kann (auch) seitens jeder Händlerdatenverarbeitungseinrichtung eine Einheit vorhanden sein, welche die erste gültige Nachricht weiterverarbeitet (bspw. weiterleitet) und identische Kopien unterdrückt.
[0049] Weiter kann optional vorgesehen sein, dass die Handelsplattformdatenverarbeitungseinrichtungen bzw. bei Segmentierung in mehrere Handelsplattformdatenverarbeitungseinrichtungen mit unterschiedlichen Zuständigkeiten, die beiden einander entsprechenden Handelsplattformdatenverarbeitungseinrichtungen über eine direkte, «private» Verbindung verfügen, über die sie auch miteinander synchronisierbar sind.
[0050] Die Erfindung betrifft auch Verfahren zum Betreiben eines elektronischen Handelssystems gemäss dem ersten, zweiten und/oder dritten Aspekt der Erfindung.
[0051] Gemäss allen Aspekten der Erfindung kann vorgesehen sein, dass die Händlerdatenverarbeitungseinrichtungen Kopien der den jeweiligen Händlern interessierenden Teile des Auftragsbuch führen. In diesem Kontext ist auch der nachfolgend beschriebene vierte Aspekt der Erfindung von besonderem Interesse.
[0052] Gemäss einem vierten Aspekt wird ein Verfahren vorgeschlagen, um eine Einheit (beispielsweise einen Händler oder Matcher) mit den anderen Einheiten des Systems zu synchronisieren, beispielsweise für den Fall, dass diese Einheit aufgrund einer Störung ausgefallen ist oder temporär vom System getrennt wurde. Für einen fairen Börsenbetrieb ist notwendig, dass gewisse Zustandsdaten – beispielsweise das Auftragsbuch, wenn dieses offen ist – allen Teilnehmern zur Verfügung stehen; müder entsprechend informierte Teilnehmer kann am Marktgeschehen teilhaben.
[0053] Gemäss diesem vierten Aspekt werden während des Betriebs laufend paketweise Zustandsdaten an alle Teilnehmer (Broadcast-Mode) verschickt, wobei jedes Paket einen Teil der Zustandsdaten enthält. Dies wird, intermittierend mit dem Versand von aktuellen Nachrichten (Aufträgen, Bestätigungen, Informationen über Aufträge/Transaktionen an die Marktteilnehmer) durchgeführt bis alle Datenelemente verteilt wurden, worauf Zustandsdaten von neuem versandt werden.
[0054] «Intermittierend» muss im Kontext des vierten Aspekts der Erfindung nicht notwendigerweise heissen, dass immer abwechslungsweise Zustandsdaten und aktuelle Nachrichten versandt werden. Vielmehr können beispielweise wenn das System nicht ausgelastet ist mehrere Zustandsdaten-Pakete hintereinander versandt werden bevor wieder eine aktuelle Nachricht versandt wird, oder eventuell auch umgekehrt.
[0055] Zum Zeitpunkt des Versandes sind die Zustandsdaten definitionsgemäss aktuell und korrekt. Ein Datenelement kann bspw. den die Anzahl der angebotenen Papiere eines gewissen Titels zu einem bestimmten Preis umfassen. Wenn nun eine Nachricht zu einem Datenelement eintrifft, wird diese verarbeitet und das Datenelement entsprechend aktualisiert, wenn das betreffende Datenelement bereits synchronisiert worden ist, d.h. wenn zu diesem Datenelement bereits ein Zustandsdatenpaket versandt worden ist. Wenn jedoch seit dem letzten Ausfall der betreffenden Einheit noch keine Synchronisation erfolgt ist und das entsprechende Datenelement noch keine Daten enthält, dann wird die Nachricht ignoriert.
[0056] Das Verfahren gemäss dem vierten Aspekt kann verwendet werden, um Händlerdatenverarbeitungseinrichtungen und/oder Matcher (in einem redundanten System) zu synchronisieren. Insbesondere die Verwendung nur für Händlerdatenverarbeitungseinrichtungen in Kombination mit einem anderen Verfahren für die Matcher ist – nebst der, günstigen, Verwendung für beide – eine Option.
[0057] In Ausführungsformen des ersten, zweiten, dritten und/oder vierten Aspekts kann der Matcher als dedizierte Logikschaltung eingerichtet sein. Eine dedizierte Logikschaltung ist ein Hardwarebaustein oder eine Gruppe von Hardwarebausteinen, in welcher die Logikfunktionen, durch welche Signale oder Daten verarbeitet werden, durch in der Hardware selbst vorhandene und vorgegebene Schaltungen vorgegeben implementiert sind. Dies steht im Gegensatz zu Hauptprozessoren von konventionellen Computern (inklusiver Servercomputern) die als «generische», universell einsetzbare Mikroprozessoren ausgebildet sind, welche in einem Speicher (als Software) vorgelegte Sequenz von Befehlen abarbeitet, wobei dann nur diese Software und nicht die Schaltung selbst zweckgebunden ist.
[0058] Beispiele für dedizierte Logikschaltungen sind Field Programmable Gate Arrays (FPGAs) (durch die Konfiguration dediziert, d.h. anwendungsspezifisch ausgebildet) und ASICs, deren Schaltlogik bei der Herstellung vorgegeben wird und nicht mehr veränderbar ist.
[0059] Ebenfalls in Ausführungsformen des ersten, zweiten, dritten und/oder vierten Aspekts kann vorgesehen sein, dass sämtliche Berechtigungen des Händlers für jeden Auftrag in Echtzeit vor der Ausführung des Auftrags überprüft werden. Ergänzend oder alternativ kann vorgesehen sein, dass die relevanten Limiten für jeden Handelsteilnehmer (z.B. der Gesamtwert sämtlicher im Buch stehender Aufträge etc.) in Echtzeit vor der Ausführung des Auftrags nachgeführt und überprüft werden. Diese beiden je einzeln oder in Kombination realisierbaren Massnahmen dienen der möglichen Selbstregulierung im Handel.
[0060] Nachfolgend werden Ausführungsbeispiele und Prinzipien der Erfindung anhand von Figuren erläutert. Es zeigen: <tb>Fig. 1<SEP>eine schematische Übersicht über ein Handelssystem; <tb>Fig. 2<SEP>ein Handelssystem mit mehreren Matchern; <tb>Fig. 3<SEP>schematisiert die Innenschaltung eines Switches S sowie Elemente von Händlern und einer Handelsplattform; <tb>Fig. 4<SEP>ein redundantes Handelssystem; <tb>Fig. 5<SEP>ein redundantes Handelssystem mit mehreren Matchern; und <tb>Fig. 6<SEP>die Synchronisierung nach dem Ausfall eines Teilnehmers (bspw. eines Händlers) nach einem Ausfall.
[0061] Eine für die schnelle Kommunikation für Börsensysteme günstige Netzwerkarchitektur ist in Fig. 1 dargestellt. Es handelt sich dabei um ein hierarchisches Netzwerk, das optimal an die Kommunikationsbedürfnisse in Börsenanwendungen angepasst ist. M bezeichnet den Matcher. S0,0ist der zentrale Switch, über den die Händler (hier als Clients C0, ... Cnbezeichnet) mit dem Matcher kommunizieren. Im dargestellten Ausführungsbeispiel ist ausserdem eine optionale weitere Switch-Ebene mit dezentralen Switches S1,0, …S1,mgezeichnet, wobei an jedem dieser dezentralen Switches mindestens ein Client (im allgemeinen mehrere Clients) angehängt sind. Es ist auch eine Ausweitung auf noch weitere Ebenen und entsprechend eine noch weiter baumartig verzweigte Architektur möglich. Der Ansatz mit den dezentralen Switches ermöglicht eine gute Skalierbarkeit und kann dann angezeigt sein, wenn der zentrale Switch physisch nicht genug Interfaces zu allen Händlern aufweist. Es kann vorteilhaft sein, wenn jeder Händler über die gleiche Anzahl Ebenen mit dem zentralen Switch verbunden ist, da dann die Weiterleitungszeiten ungefähr identisch sind und beim vorstehend diskutierten Ansatz mit einer Sortierung entsprechend einer Zeitangabe die Wartezeit bevor eine Nachricht (bspw. Auftrag) nach oben weitergeleitet wird kürzer gehalten werden kann.
[0062] Die Schaltlogik des mindestens einen Switches kann optional so sein, dass sie nur Nachrichten von einer Händlerdatenverarbeitungseinrichtung an die Handelsplattformdatenverarbeitungseinrichtung, von der Handelsplattformdatenverarbeitungseinrichtung an eine bestimmte Händlerdatenverarbeitungseinrichtung und von der Handelsplattformdatenverarbeitungseinrichtung an alle Händlerdatenverarbeitungseinrichtungen zulässt – das heisst dass das sich im elektronischen Börsenhandel ergebende Kommunikationsmuster gleich in der Schaltlogik des Netzwerks implementiert ist.
[0063] Auch eine Aufteilung der Funktion des Matchers auf in mehrere Matcher ist möglich, was in Fig. 2 symbolisch dargestellt ist. Jeder Matcher ist dann für einen oder mehrere Titel verantwortlich. Die Weiterleitung an den korrekten Matcher kann durch den obersten Switch beispielsweise anhand der Zieladresse erfolgen.
[0064] Der oberste Switch (d.h. der oberste Netzwerkknoten) kann ausserdem optional über einen weiteren Ausgang verfügen, der alle relevanten Nachrichten, die durch diesen Switch weitergeleitet werden, in einem Archiv A abspeichert und so diese Informationen bspw. dem Auftragsnachbearbeitungssystem (Backoffice) für die weitere Verarbeitung zur Verfügung stellen. Diese Option existiert unabhängig davon, ob nur ein Matcher oder wie in Fig. 2 mehrere Matcher verwendet werden. Bei der Verwendung von mehreren Matchern ist sie jedoch besonders günstig, weil sie eine zentrale Archivierung ermöglicht. Alternativ kann auch jeder Matcher über ein eigenes Archiv verfügen.
[0065] Die Innenschaltung eines Switches S ist in Fig. 3 symbolisch gezeichnet. Der in Fig. 3 gezeichnete Aufbau wird bspw. insbesondere im Switch der obersten Ebene, d.h. dem obersten Netzwerkknoten verwendet. Optional können auch Switches der darunterliegenden Ebenen – sofern vorhanden – entsprechend ausgestaltet sein, wobei mindestens die Broadcast-Funktion auch auf den eventuellen darunterliegenden Ebenen implementiert sein sollte.
[0066] In Fig. 3 enthalten generell zu sogenannten «Uplinks» (in Richtung Matcher) gehöhrende Bausteine ein.,U» in der Bezeichnung, und zu «Downlinks» (in Richtung Händler) gehörende Bausteine ein «D».
[0067] Eine Nachricht (Datenpaket; insbesondere mit einem Auftrag) wird vom Händler Co...Cn über einen Transmitter Tx (einem Senderbaustein) übertragen. Dabei findet beispielsweise eine Umwandlung in ein serielles Datenformat statt. Dieses wird im Switch S empfangen und wieder parallel gewandelt (KDRx0...KDRxn) und in den Pufferspeicher (UB0...UBn) hineingeschrieben. Im gezeichneten Ausführungsbeispiel ist dabei jedem ersten Empfänger (KDRx0...KDRxn; d.h. jedem Downlink) ein dedizierter Pufferspeicher zugeordnet. In alternativen Ausführungsformen wäre es auch möglich, eine zentrale Pufferung vorzusehen.
[0068] Der erste Arbiter UA entscheidet, welches Paket weitergeleitet wird und steuert dementsprechend den Multiplexer UM. Die Daten werden nun durch den ersten Switch-Transmitter KUTx wieder in ein serielles Protokoll umgewandelt, übertragen und von einem Matcher-Empfänger MRx wieder in ein paralleles Format gewandelt. Über einen optionalen Matcher-Pufferspeicher MB gelangt die Nachricht an den Matcher M.
[0069] Sendet nun der Matcher M eine Nachricht (bspw. die Quittierung eines Auftrags) an einen spezifischen Händler Co...Cn, so wird sie über einen Matcher-Transmitter MTx wieder in ein serielles Format umgewandelt, übertragen und vom zweiten Switch-Empfänger KURx empfangen und wieder in paralleles Format gewandelt. Der zweite Arbiter DA entscheidet nun, anhand der Adresse, welcher Händler C0...Cn die Nachricht erhalten soll und schliesst den entsprechenden Schalter DDo, DD1, ... oder DDn. Anschliessend wird die Nachricht über einen zweiten Switch-Transmitter KDTxo...KDTxn an den entsprechenden Händler-Empfänger Rx0...Rxn übertragen und steht nun dem Händler Cn zur weiteren Verarbeitung zur Verfügung.
[0070] Neben der oben beschriebenen spezifischen Kommunikation zwischen dem Matcher und zu einem spezifischen Händler Co...Cn gibt es noch den Broadcast Fall: Matcher zu allen Händlern Co...Cn. Dieser Fall unterscheidet sich zum spezifischen Fall dadurch, dass der zweite Arbeiter DA erkennt, dass es sich um eine Broadcast-Nachricht handelt und jetzt alle Schalter DDo...DDN schliesst, so dass schliesslich die Datenpakete an alle Händler Co...Cn übertragen werden.
[0071] Gemäss dem ersten Aspekt ist jeder Händler mit einem Zeitgeber, hier in Form einer genau synchronisierten Uhr CLKo...CLKn ausgestattet. Die Zeitreferenz für diese Uhr kann dabei durch den Matcher oder den obersten Netzwerkknoten (den obersten Switch) vorgegeben werden, indem dieser periodisch Referenzzeitnachrichten aussendet, die dann die lokalen Uhren CLKo...CLKn nachstellen. Der eigentliche Zeittakt kann dabei sowohl von einem lokalen Oszillator als auch vom globalen Netzwerktakt, der wiederum vom Matcher M vorgegeben wird, erzeugt werden. Gemäss dem ersten Aspekt wird nun jede Nachricht vom Client Co...Cn mit einem Zeitstempel versehen, und das Netzwerksystem sorgt dafür, dass ältere Nachrichten immer zuerst beim Matcher eintreffen; das Netzwerk «sortiert» also die Nachrichten anhand der Zeit. Diese Funktion erfolgt hier dadurch, dass der erste Arbiter UA die ältere Nachricht zuerst weiterleitet. Damit diese Auswahl fair abläuft, muss er mindestens die Zeit (Wartezeit) abwarten, die durch ungleiche Bauweisen (z.B. Kabellängen, Bausteintoleranzen) entstehen. Erst dann darf er seine Entscheidung treffen. Auf jedem Uplink oder mindestens auf dem Uplink des obersten Netzwerkknotens sind die Nachrichten also streng nach der Zeit geordnet und treffen damit in der zeitlich richtigen Reihenfolge (auch über mehrere Switch-Ebenen) beim Handelssystem M ein.
[0072] Auch in einer solchen Architektur könnte es immer noch vorkommen, dass einzelne Händler Co...Cn sehr viele Nachrichten absetzen und so ein Switch S überlastet wird. Dies würde sich durch einen Pufferspeicher-Überlauf in einem der Pufferspeicher UBo...UBn äussern. Um dies zu verhindern kann gemäss dem zweiten Aspekt ein Kreditsystem eingeführt werden: Das Handelssystem vergibt für alle Händler Co...Cn Kredite. Ein Kredit erlaubt es dem Händler einen Auftrag (oder allgemeiner: eine Nachricht) zu senden. Die Anzahl der Kredite ist so gross, dass bei unbelastetem System ein einzelner Händler immer noch mit voller Geschwindigkeit arbeiten kann, und auch bei hoch belastetem System die einzelnen Pufferspeicher nicht überlaufen. Pro Nachricht wird ein Kredit abgebucht und erst wieder gutgeschrieben, wenn die Nachricht vom Matcher an den Händler quittiert wurde.
[0073] Ein gemäss dem dritten Aspekt der Erfindung redundantes System zeigt Fig. 4 . Das Prinzip der Verdoppelung ist hier anhand eines Ausführungsbeispiels aufgezeigt, bei welchem der Matcher für alle Titel zuständig ist.
[0074] In Fig. 4 ist sowohl der Matcher M auf M* verdoppelt, als auch das Netzwerk mit den Switches Si,j mit Si,j*. Einer der beiden Matcher M oder M* kann dabei die Zeit vorgeben (Zeitmaster, d.h. sowohl den Netzwerktakt wie auch die Referenzzeit); der andere Matcher übernimmt dann diese. Beim Ausfall eines Matchers wird er andere Matcher zum Zeitmaster, wenn er nicht bereits vorher schon der Zeitmaster war. In der eigentlichen Auftragsverarbeitung sind beide Matcher vollkommen identisch aufgebaut, und in beiden findet unabhängig vom anderen die Auftragsbuchführung und Auftragsausführung statt.
[0075] Um zu gewährleisten, dass beide Handelssysteme auch bei einem Teilausfall des Netzwerkes über alle Information verfügen, werden die empfangenen. Nachrichtenströme an das jeweils andere Handelssystem weitergeleitet (PS(t) und PS*(t)). Damit durch die Übertragung die eigenen Nachrichtenströme nicht bevorzugt werden, werden sie um eine Verzögerungszeit TD bzw. TD* verzögert. Die Priorisierer P und P* sorgen nun dafür, dass Nachrichten mit früheren Zeitangaben zuerst genommen werden. Zudem werden im Priorisierer P identische Nachrichten (die über die 2 unabhängigen Netzwerke kommen) unterdrückt. So kann garantiert werden, dass zu den eigentlichen Handelssystemen M und M* identisch, zeitlich geordnete Nachrichtenströme übertragen werden.
[0076] Aus Redundanzgründen können auf Seiten der Händlerdatenverarbeitungseinrichtungen C0...Cnauch je zwei Uhren CLK; CLK* vorhanden sein. Beispielsweise können beide Matcher laufend über die Zeit informieren, und die Information des einen Matchers M dient zur Synchronisation der einen Uhr CLK, während der andere Matcher M* die andere Uhr CLK* synchronisiert. Für die Zeitangabe der zweimal versandten Nachricht wird jedoch nur die eine Zeitbasis verwendet, so dass die Zeitangabe auf beiden Kanälen vollkommen identisch ist. Es kann bspw. vorgesehen sein, dass eine bestimmte der beiden Uhren für die Zeitangaben zuständig ist, solange sie funktioniert, oder es kann über geeignete Algorithmen festgestellt werden, welche zuverlässiger ist, etc.
[0077] Die Übertragung auf ein System wie in Fig. 2 dargestellt mit Matchern M1, ...Mmmit unterschiedlichen Zuständigkeiten ist ohne weiteres möglich und in Fig. 5 dargestellt. Mindestens ein Matcher, vorzugsweise alle Matcher ist/sind doppelt vorhanden und je mit beiden obersten Netzwerkknoten S0,0, S0,0* verbunden. Sofern ein Archiv A am obersten Netzwerkknoten angeschlossen ist, kann auch dieses redundant, d.h. doppelt ausgeführt sein, was in Fig. 5 durch das Archiv A ́ repräsentiert wird.
[0078] In der Ausführungsform gemäss Fig. 5 sind wie in Fig. 4 und wie es einem oft vorteilhaften Vorgehen entspricht die Switches S0, S bzw. S0 ́, S ́ der beiden Systeme von Switches nicht miteinander verbunden. Die Signale laufen in den beiden Systemen unabhängig voneinander (und wie vorstehend beschrieben doppelt), kommen aber in den jeweiligen Matchern zusammen.
[0079] Die Verbindungen C1... Cm in Fig. 5 bezeichnen optionale, «private» Verbindungen zwischen den einander entsprechenden Matchern, welche einen direkten Datenaustausch am Netzwerk vorbei ermöglichen. Sie können ergänzend oder alternativ zum nachfolgend noch eingehender beschriebenen Verfahren gemäss dem vierten Aspekt bspw. zur Synchronisation der einander entsprechenden Matcher verwendet werden.
[0080] Eine weitere Herausforderung ist die Neusynchronisierung eines Händlers Co...Cn bzw. eines Matchers im Fall, dass eine solche Einheit nach einem Unterbruch wieder am aktuellen Handelsgeschehen teilnehmen soll. Im Normalbetrieb werden durch das ganze Handelssystem sehr viele Daten produziert, die auf den bereits gelaufenen Transaktionen beruhen. Dies stellt beim Neustart sehr hohe Anforderungen an alle Teilnehmer, da sie sich wieder aufsynchronisieren müssen. In der Vergangenheit geschah das in der Regel durch ein «Referenzbild» des aktuellen Status und ein Nachführen aller Transaktionen seit dem Referenzbild. Wenn das System an der Leistungsgrenze betrieben wird und keine Kapazität mehr für das Nachführen vorhanden ist, kann es jedoch auf diese Weise sehr lange dauern, bis die Einheit wieder synchronisiert ist.
[0081] Gemäss dem vierten Aspekt der Erfindung erfolgt diese Synchronisation stufenweise. Die Funktionsweise wird in Fig. 6 anhand eines einfachen linearen Arrays erklärt; komplexere Datenstrukturen lassen sich meistens durch mehrere solcher Arrays zusammensetzen.
[0082] Das Array wie in Fig. 6 dargestellt kann bspw. das Auftragsbuch für einen bestimmten Titel darstellen. Enthalten sind die jeweiligen Aufträge mit den Detailangaben zur Beauftragung, bspw. entsprechend ihrer zeitlichen Reihenfolge sortiert. Auftragsbuch besteht in diesen Ausführungsformen aus verschiedenen zentralen Datenstrukturen fester Grösse mit jeweils klar definierten Datenelementen für die jeweilige Datenstruktur.
[0083] In Fig. 6 zeigen die grau hinterlegten Felder Einträge des Arrays, die nach einem Ausfall bereits neu synchronisiert wurde, weiss hinterlegte Felder sind noch nicht synchronisiert. Gemäss dem vierten Aspekt werden während des Normalbetriebs laufend Einträge – des Auftragsbuchs und/oder anderer relevanter Elemente – synchronisiert, und zwar unabhängig davon, ob überhaupt eine Einheit eine Neusynchronisation benötigt oder nicht. Die Synchronisation erfolgt insbesondere durch den Matcher oder bei einem redundanten System, solange nicht der Ausfall eines der beiden Matcher vorausgeht, durch beide Matcher. Die Synchronisation folgt wie abgebildet linear oder logisch linear entlang der Datenstruktur.
[0084] Beispielsweise kann nach jeder Transaktion im Handelssystem mindestens ein einzelner Eintrag synchronisiert werden (Zeitpunkt t). Wenn das Handelssystem nicht ausgelastet ist, so können auch mehrere Einträge erfolgen. Erfolgt nun eine neue Transaktion (bspw. eine Änderung eines bestehenden Auftrags, da ein Teil durch einen Kauf oder Verkauf umgesetzt wurde) auf einem Eintrag, der bereits erneuert wurde (Zeitpunkt t + 1 in Fig. 6 ), so wird der entsprechende Eintrag direkt ersetzt. Erfolgt ein Eintrag auf einem Teil, der noch nicht erneuert wurde (Zeitpunkt t + 2), so wird dieser einfach ignoriert. Auf diese Weise schreitet das Aufsynchronisieren der neu oder wieder ins Handelssystem aufgenommenen Einheit sukzessive voran, während die nicht betroffenen Einheiten in keiner Weise beeinträchtigt werden. Wenn alle Datenelemente des Handelssystems verteilt wurden, beginnt die Datenverteilung wieder von neuem.
[0085] Dank diesem Mechanismus muss sich das Handelssystem überhaupt nie darum «kümmern», ob eine der Händlerdatenverarbeitungseinrichtungen Co...Cn oder Partnerhandelssysteme gerade am wieder synchronisieren sind; das Handelssystem macht einfach seine Aufgabe und beliebige Subsysteme können sich autonom wieder aufsynchronisieren. Dank dieser Vorgehensweise kann auch eine grosse Anzahl von Händlern gleichzeitig autonom aufsynchronisieren.

Claims (28)

1. Computerisiertes Börsenhandelssystem, aufweisend – Eine Handelsplattform; und – Eine Mehrzahl von Händlerdatenverarbeitungseinrichtungen; – Wobei jede Händlerdatenverarbeitungseinrichtung befähigt ist, Aufträge in Form von elektronischen Nachrichten an die Handelsplattform abzugeben und die Handelsplattform befähigt ist, diese Aufträge zu verarbeiten, indem sie in einem Auftragsbuch abgespeichert oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise ausgeführt werden; – wobei jede Händlerdatenverarbeitungseinrichtung einen Zeitgeber aufweist und eingerichtet ist, jeden Auftrag mit einer Zeitangabe zu versehen, welche den Zeitpunkt der Abgabe des Auftrags repräsentiert; – und wobei das Handelssystem so eingerichtet ist, dass eingehende Aufträge durch die Handelsplattform strikt in einer Reihenfolge verarbeitet werden, welche der Zeitangabe entspricht.
2. Handelssystem nach Anspruch 1, wobei mindestens eine Händlerdatenverarbeitungseinrichtung eine Netzwerkkarte aufweist, über die die Händlerdatenverarbeitungseinrichtung mit der Handelsplattform verbunden ist, und wobei der Zeitgeber in die Netzwerkkarte integriert ist.
3. Handelssystem nach Anspruch 1 oder 2, wobei die Zeitgeber aller Händlerdatenverarbeitungseinrichtungen identisch sind.
4. Handelssystem nach einem der vorangehenden Ansprüche, wobei die Zeitgeber der Händlerdatenverarbeitungseinrichtungen über einen von der Handelsplattform vorgegebenen Netzwerktakt laufen.
5. Handelssystem nach einem der vorangehenden Ansprüche, wobei die Zeitgeber während des Betriebs laufend wiederholt über durch die Handelsplattform oder eine vertrauenswürdige externe Quelle synchronisierbar sind.
6. Handelssystem nach einem der vorangehenden Ansprüche, aufweisend mindestens einen Switch, wobei der Switch mit mehreren der Händlerdatenverarbeitungseinrichtungen verbunden ist, einen Pufferspeicher aufweist, und eingerichtet ist, von den Händlerdatenverarbeitungseinrichtungen erzeugte Aufträge im Pufferspeicher abzuspeichern und nach der Zeitangabe sortiert so weiterzugeben, dass der Auftrag mit der ältesten Zeit zuerst weitergegeben wird.
7. Handelssystem nach Anspruch 6, wobei der Switch vor der Weitergabe eines Auftrags während einer gewissen Zeit zuwartet, um eventuelle Laufzeitunterschiede verschiedener Aufträge abzugleichen.
8. Handelssystem nach Anspruch 6 oder 7, aufweisend mehrere Ebenen von Switches, die baumartig miteinander verknüpft sind, wobei jeder Switch einen Pufferspeicher aufweist und eingerichtet ist, Aufträge im Pufferspeicher abzuspeichern und nach der Zeitangabe sortiert weiterzugeben.
9. Handelssystem nach einem der vorangehenden Ansprüche, aufweisend eine zweite Handelsplattform, die befähigt ist, die Aufträge zu verarbeiten, indem sie in einem zweiten Auftragsbuch abgespeichert oder bei einem passenden bereits im zweiten Auftragsbuch abgespeicherten Auftrag mindestens teilweise ausgeführt werden, wobei das Handelssystem so eingerichtet ist, dass alle Aufträge in der Handelsplattform und der zweiten Handelsplattform unabhängig voneinander verarbeitet werden.
10. Handelssystem einem der vorangehenden Ansprüche, wobei die bzw. jede Handelsplattform einen Priorisierer aufweist, der eine Sortierung nach der Zeitangabe vornimmt und/oder der mehrfach eintreffende identische Nachrichten unterdrückt.
11. Handelssystem nach einem der vorangehenden Ansprüche, wobei jede Händlerdatenverarbeitungseinrichtung eingerichtet ist, die Anzahl der an die Handelsplattform abgegebene, unquittierte Nachrichten zu überwachen und so eingerichtet ist, dass eine vorgegebene Maximalzahl solchen unquittierten elektronischen Nachrichten zu keiner Zeit überschritten wird.
12. Handelssystem nach Anspruch 11, wobei eine Sortierung nach der Reihenfolge, welche der Zeitangabe entspricht, in einer Einheit mit einem Pufferspeicher vorgenommen wird, und wobei die Grösse des Pufferspeichers so gewählt ist, dass er die Maximalzahl an Aufträgen aufnehmen kann.
13. Handelssystem nach Anspruch 11 oder 12, wobei die Handelsplattform baumartig mit Netzwerkknoten strukturiert ist, und wobei in jedem Netzwerkknoten genügend Pufferspeicher vorhanden ist, um alle unbeantworteten Nachrichten der dem Netzwerkknoten zugeordneten Händlerdatenverarbeitungseinrichtungen zwischenzuspeichern.
14. Handelssystem nach einem der vorangehenden Ansprüche, aufweisend zusätzlich eine zweite Handelsplattform, wobei jede Händlerdatenverarbeitungseinrichtung sowohl mit der ersten als auch mit der zweiten Handelsplattform so verbunden ist, dass jeder Auftrag sowohl an die erste als auch an die zweite Handelsplattform gelangt, wobei die erste Handelsplattform befähigt ist, diese Aufträge in einem ersten Auftragsbuch abzuspeichern oder bei einem passenden bereits im ersten Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen, wobei die zweite Handelsplattform befähigt ist, diese Aufträge in einem zweiten Auftragsbuch abzuspeichern oder bei einem passenden bereits im zweiten Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen, und wobei das System so eingerichtet ist, dass die sowohl die erste Handelsplattform als auch die zweite Handelsplattform eingehende Aufträge strikt in einer Reihenfolge verarbeitet werden, welche der Zeitangabe entspricht, so dass das erste Auftragsbuch und das zweite Auftragsbuch jederzeit inhaltsgleich sind.
15. Verfahren zum Betreiben eines Handelssystems für den Börsenhandel, insbesondere nach einem der vorangehenden Ansprüche, wobei durch eine Händlerdatenverarbeitungseinrichtung ein Auftrag generiert, an eine Handelsplattform abgesandt und durch diese verarbeitet wird, indem er in einem Auftragsbuch abgespeichert oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise ausgeführt wird, dadurch gekennzeichnet, dass der Auftrag von der Händlerdatenverarbeitungseinrichtung mit einer eine Echtzeitinformation beinhaltenden Zeitangabe versehen wird, und dass die Handelsplattform eingehende Aufträge nach der Zeitangabe sortiert abarbeitet.
16. Computerisiertes Börsenhandelssystem, aufweisend – Eine Handelsplattform; und – Eine Mehrzahl von Händlerdatenverarbeitungseinrichtungen; – Wobei jede Händlerdatenverarbeitungseinrichtung befähigt ist, Aufträge in Form von elektronischen Nachrichten an die Handelsplattform abzugeben und die Handelsplattform befähigt ist, diese Aufträge zu verarbeiten, indem sie in einem Auftragsbuch abgespeichert oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise ausgeführt werden; – wobei jede Händlerdatenverarbeitungseinrichtung eingerichtet ist, die Anzahl der an die Handelsplattform abgegebene, unquittierte Nachrichten zu überwachen und so eingerichtet ist, dass eine vorgegebene Maximalzahl solchen unquittierten elektronischen Nachrichten zu keiner Zeit überschritten wird.
17. Handelssystem nach Anspruch 16, wobei die Handelsplattform einen Switch mit mindestens einem Pufferspeicher aufweist, und wobei die Grösse des bzw. der Pufferspeichers so gewählt ist, dass der Switch mindestens die Maximalzahl an Aufträgen speichern kann.
18. Verfahren zum Betreiben einer Handelsplattform, insbesondere nach Anspruch 16 oder 17, wobei durch eine Händlerdatenverarbeitungseinrichtung eine Mehrzahl Auftrag generiert, an eine Handelsplattform abgesandt und durch diese verarbeitet wird, indem er in einem Auftragsbuch abgespeichert oder bei einem passenden bereits im Auftragsbuch abgespeicherten Auftrag mindestens teilweise ausgeführt wird, dadurch gekennzeichnet, der Händlerdatenverarbeitungseinrichtung eine vorgegebenes Guthaben an Krediten zur Verfügung gestellt wird, dass beim Versenden jedes Auftrags ein Kredit abgebucht und beim Empfang einer Quittung des Auftrags wieder gutgeschrieben wird, und dass die Händlerdatenverarbeitungseinrichtung keine Aufträge versenden kann, solange das Guthaben aufgebraucht ist.
19. Handelssystem, beispielsweise nach einem der Ansprüche 1 bis 14, 16 oder 17, aufweisend – Eine erste Handelsplattform, eine zweite Handelsplattform; und – Eine Mehrzahl von Händlerdatenverarbeitungseinrichtungen; – Wobei jede Händlerdatenverarbeitungseinrichtung befähigt ist, Aufträge in Form von elektronischen Nachrichten zu generieren und abzusenden, – Wobei jede Händlerdatenverarbeitungseinrichtung sowohl mit der ersten als auch mit der zweiten Handelsplattform so verbunden ist, dass jeder Auftrag sowohl an die erste als auch an die zweite Handelsplattform gelangt, – wobei die erste Handelsplattform befähigt ist, diese Aufträge in einem ersten Auftragsbuch abzuspeichern oder bei einem passenden, bereits im ersten Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen; – wobei die zweite Handelsplattform befähigt ist, diese Aufträge in einem zweiten Auftragsbuch abzuspeichern oder bei einem passenden, bereits im zweiten Auftragsbuch abgespeicherten Auftrag mindestens teilweise auszuführen; – und wobei das System so eingerichtet ist, dass die sowohl die erste Handelsplattform als auch die zweite Handelsplattform eingehende Aufträge nach vorgegebenen Regeln verarbeitet, welche für die erste und die zweite Handelsplattform identisch sind, so dass das erste Auftragsbuch und das zweite Auftragsbuch jederzeit inhaltsgleich sind.
20. Handelssystem nach Anspruch 19, wobei die erste und die zweite Handelsplattform je einen Priorisierer aufweist, der die mit einer bereits eingegangenen Nachricht identische Nachrichten unterdrückt.
21. Handelssystem nach einem der Ansprüche 1–14 oder 17–20, wobei ein Zustand des Systems durch eine Anzahl Datenelemente darstellbar ist, und wobei das Handelssystem eingerichtet ist, während des Betriebs laufend und intermittierend mit dem Versand der Nachrichten paketweise je den aktuellen Zustand eines Datenelements repräsentierende Zustandsdaten an mindestens alle Händlerdatenverarbeitungseinrichtungen zu versenden, so lange, bis für jedes Datenelement ein Datenpaket versandt wurde.
22. Handelssystem nach Anspruch 21, wobei der Versand der Zustandsdaten ständig laufend fortgesetzt wird, indem jeweils nach dem Versand eines Datenpakets für jedes Datenelement der Versand von Zustandsdaten für jedes Datenelement von neuem beginnt.
23. Handelssystem nach Anspruch 21 oder 22, wobei jede Händlerdatenverarbeitungseinrichtung eingerichtet ist, eine ein Datenelement betreffende Nachricht zu verarbeiten, wenn zu diesem Datenelement Zustandsdaten vorhanden sind und diese Nachricht zu verwerfen, wenn zu diesem Datenelement keine Zustandsdaten vorhanden sind.
24. Handelssystem nach einem der Ansprüche 1–14, 16, 17, oder 19–22, aufweisend mehrere Ebenen von Switches, wobei jede Händlerdatenverarbeitungseinrichtung über eine identische Anzahl von Switches mit der Handelsplattformdatenverarbeitungseinrichtung verbunden ist.
25. Verfahren, um eine Einheit eines Börsenhandelssystems, insbesondere nach einem der Ansprüche 1–14, 16, 17, oder 19–23, mit anderen Einheiten des Systems zu synchronisieren, wobei während eines Betriebs des Börsenhandelssystems laufend paketweise Zustandsdaten an alle Einheiten verschickt werden, wobei jedes Paket einen Teil der Zustandsdaten enthält, wobei das Versenden der Zustandsdaten intermittierend mit dem Versand von aktuellen Nachrichten durchgeführt wird, bis alle Datenelemente verteilt sind, worauf Zustandsdaten von neuem versandt werden.
26. Verfahren nach Anspruch 25, wobei eine zu synchronisierende Einheit eine aktuelle Nachricht verarbeitet, wenn sie ein Datenelement betrifft, zu welchem sie bereits Zustandsdaten erhalten hat, und diese Nachricht ignoriert, wenn sie ein Datenelement betrifft, zu welchem sie noch keine Zustandsdaten erhalten hat.
27. Computerprogramm, welches auf eine Datenverarbeitungseinrichtung oder ein System von Datenverarbeitungseinrichtungen ladbar ist und welches bei Ausführung die Datenverarbeitungseinrichtung bzw. das System von Datenverarbeitungseinrichtungen ein Verfahren nach einem der Ansprüche 15, 18, 25 oder 26 ausführen lässt.
28. Datenträger, enthaltend ein Computerprogramm nach Anspruch 27.
CH00867/14A 2014-06-05 2014-06-05 Börsenhandelssystem. CH709742A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CH00867/14A CH709742A1 (de) 2014-06-05 2014-06-05 Börsenhandelssystem.
US15/314,513 US20170109824A1 (en) 2014-06-05 2015-06-03 Stock trading system
SG11201610138WA SG11201610138WA (en) 2014-06-05 2015-06-03 Stock exchange trading system
EP15727867.2A EP3152732A1 (de) 2014-06-05 2015-06-03 Börsenhandelssystem
PCT/CH2015/000084 WO2015184558A1 (de) 2014-06-05 2015-06-03 Börsenhandelssystem
US16/578,491 US11966973B2 (en) 2014-06-05 2019-09-23 Electronic communication network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CH00867/14A CH709742A1 (de) 2014-06-05 2014-06-05 Börsenhandelssystem.

Publications (1)

Publication Number Publication Date
CH709742A1 true CH709742A1 (de) 2015-12-15

Family

ID=51260534

Family Applications (1)

Application Number Title Priority Date Filing Date
CH00867/14A CH709742A1 (de) 2014-06-05 2014-06-05 Börsenhandelssystem.

Country Status (5)

Country Link
US (2) US20170109824A1 (de)
EP (1) EP3152732A1 (de)
CH (1) CH709742A1 (de)
SG (1) SG11201610138WA (de)
WO (1) WO2015184558A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110137785A1 (en) * 2009-12-04 2011-06-09 Lutnick Howard W Multicomputer distributed processing of trading information
WO2016054721A1 (en) * 2014-10-08 2016-04-14 Tsx Inc. Selective delayed and undelayed database updating
US10883669B2 (en) 2018-05-01 2021-01-05 Keystone Technologies, LLC LED light tubes, light boxes including LED light tubes and methods for installation of LED light tubes in light boxes
EP3576023A1 (de) 2018-05-25 2019-12-04 Royal Bank Of Canada Handelsplattform mit verstärkungslernnetzwerk und abgleichungsmotor
CA3044781A1 (en) * 2018-05-30 2019-11-30 Hasham Burhani Trade platform with reinforcement learning
US11627098B1 (en) * 2022-01-10 2023-04-11 Bank Of America Corporation Real-time distributed communication channel and multiple data processing channel selection system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0411748A2 (de) * 1989-06-02 1991-02-06 Reuters Limited System zur Verbindung von Käufer und Verkäufer mit Risikominimierung
US20100138334A1 (en) * 2004-04-01 2010-06-03 Jeff Warsaw Exchange order priority retention for electronic trading using automatic book updates
WO2014043420A1 (en) * 2012-09-12 2014-03-20 Trudeau, Matthew Transmission latency leveling apparatuses, methods and systems

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020026321A1 (en) 1999-02-26 2002-02-28 Sadeg M. Faris Internet-based system and method for fairly and securely enabling timed-constrained competition using globally time-sychronized client subsystems and information servers having microsecond client-event resolution
US7752115B2 (en) 2002-10-02 2010-07-06 Trading Technologies International, Inc. Method and apparatus for a fair exchange
US7804852B1 (en) * 2003-01-24 2010-09-28 Douglas Durham Systems and methods for definition and use of a common time base in multi-protocol environments
US8799121B2 (en) * 2003-05-15 2014-08-05 Cantor Index, Llc System and method for managing trading order requests
US7739182B2 (en) * 2003-07-03 2010-06-15 Makor Issues And Rights Ltd. Machine learning automatic order transmission system for sending self-optimized trading signals
WO2005033897A2 (en) * 2003-10-03 2005-04-14 Chauveau Claude J Method and apparatus for measuring network timing and latency
US7606158B2 (en) * 2004-09-24 2009-10-20 Cisco Technology, Inc. Hierarchical flow control for router ATM interfaces
US7461236B1 (en) * 2005-03-25 2008-12-02 Tilera Corporation Transferring data in a parallel processing environment
US7921046B2 (en) * 2006-06-19 2011-04-05 Exegy Incorporated High speed processing of financial information using FPGA devices
GB0619519D0 (en) * 2006-10-04 2006-11-15 Siemens Ag Packet scheduling
US7619545B2 (en) * 2007-03-12 2009-11-17 Citrix Systems, Inc. Systems and methods of using application and protocol specific parsing for compression
US8555373B2 (en) * 2008-02-14 2013-10-08 Rockwell Automation Technologies, Inc. Network security module for Ethernet-receiving industrial control devices
CA3059606C (en) * 2008-12-15 2023-01-17 Ip Reservoir, Llc Method and apparatus for high-speed processing of financial market depth data
JP4771266B1 (ja) * 2010-07-09 2011-09-14 株式会社イースティル サーバ、金融情報配信方法およびプログラム
US9003084B2 (en) * 2011-02-18 2015-04-07 Ab Initio Technology Llc Sorting
CN104025051B (zh) * 2011-10-31 2017-05-03 德国弗劳恩霍夫应用研究促进协会 用于转移事件检测器进程的设备和方法
WO2013070797A1 (en) * 2011-11-07 2013-05-16 Vitesse Semiconductor Corporation Physical layer processing of timestamps and mac security
US9119079B2 (en) * 2012-01-27 2015-08-25 Airties Kablosuz Iletisim San. Ve Dis Tic. A.S. System and method to avoid interference with radar systems
US20130258851A1 (en) * 2012-03-30 2013-10-03 Cisco Technology, Inc. Mitigation of congestion due to stuck ports in network systems
US9871747B2 (en) * 2012-09-03 2018-01-16 Siemens Aktiengesellschaft Interference-immune transmission of data messages in a communications network
US11989779B2 (en) * 2012-10-04 2024-05-21 Trading Technologies International, Inc. Configurable order entry, matching, coordination, and market data intervals
US8964622B2 (en) * 2013-03-11 2015-02-24 Airties Kablosuz Iletisim Sanayi Ve Dis Ticaret As Cocktail party: side conversations and talking over in wireless mesh networks
US9112631B2 (en) * 2013-09-11 2015-08-18 Khalifa University of Science, Technology, and Research Method and devices for frequency distribution
EP3117393A4 (de) * 2014-03-11 2017-08-16 Chicago Mercantile Exchange, Inc. Verbesserter marktbetrieb durch regelung der zuordnung eingehender bestellungen und/oder dynamischen zuweisungsprioritäten ruhender bestellungen

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0411748A2 (de) * 1989-06-02 1991-02-06 Reuters Limited System zur Verbindung von Käufer und Verkäufer mit Risikominimierung
US20100138334A1 (en) * 2004-04-01 2010-06-03 Jeff Warsaw Exchange order priority retention for electronic trading using automatic book updates
WO2014043420A1 (en) * 2012-09-12 2014-03-20 Trudeau, Matthew Transmission latency leveling apparatuses, methods and systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KEN INOUE ET AL: "Low-latency and high bandwidth TCP/IP protocol processing through an integrated HW/SW approach", INFOCOM, 2013 PROCEEDINGS IEEE, IEEE, 14 April 2013 (2013-04-14), pages 2967 - 2975, XP032441067, ISBN: 978-1-4673-5944-3, DOI: 10.1109/INFCOM.2013.6567108 *

Also Published As

Publication number Publication date
US20170109824A1 (en) 2017-04-20
SG11201610138WA (en) 2017-01-27
WO2015184558A1 (de) 2015-12-10
EP3152732A1 (de) 2017-04-12
US11966973B2 (en) 2024-04-23
US20200020033A1 (en) 2020-01-16

Similar Documents

Publication Publication Date Title
WO2015184558A1 (de) Börsenhandelssystem
DE69909791T2 (de) Verteilte rechnerumgebung mit echt-zeit ablauffolgenlogik und zeit-deterministischer architektur
DE3586634T2 (de) Lokales netzwerk fuer numerisches datenverarbeitungssystem.
DE3486116T2 (de) Taktsynchronisation in einem verteilten Rechnernetz.
DE69410671T2 (de) Datensicherung in einer Datenverarbeitungsanlage
EP3446466B1 (de) Verfahren zum schnellen rekonfiguration von gm clocks im tsn network mittels einer expliziten teardown nachricht
DE10211281B4 (de) Verfahren und Vorrichtung zur Synchronisation der Zykluszeit von mehreren Bussen sowie entsprechendes Bussystem
DE19607531A1 (de) Multicluster-Computersystem
DE2844058A1 (de) Dezentrale datenuebertragung
DE102005018837A1 (de) Verfahren und Vorrichtung zur Synchronisation zweier Bussysteme sowie Anordnung aus zwei Bussystemen
EP2556633A1 (de) Verfahren und apparat zur fehlertoleranten zeitgesteuerten echtzeitkommunikation
DE2443579B2 (de) Asynchroner Arbiter
DE112004002043B4 (de) Verfahren, System und Programm zum Aufbau eines Pakets
DE112015006192T5 (de) Kommunikationsvorrichtung, Kommunikationsverfahren und Programm
DE2731200A1 (de) Anordnung zum steuern von datenfluessen
CH709741A1 (de) Börsenhandelsplattform.
EP0720337B1 (de) Verfahren zur hochzuverlässigen und konsistenten Nachrichtenübertragung
WO2003025686A2 (de) Verfahren und vorrichtung zur erzeugung von programmunterbrechungen bei teilnehmern eines bussystems und bussystem
EP1440544B1 (de) Verfahren zur kommunikation eines realzeit-datenverkehrs in einem kollisionserkennungs-basierten kommunikationsnetz, entsprechendes speichermedium und kommunikationsnetz
DE102023129947A1 (de) Gestapeltes netzwerkgerät als präzisionszeitprotokoll-grenzuhr
DE112022003383T5 (de) Hierarchisches verbindungsnetzwerk auf ringgrundlage für symmetrische mehrprozessoren
DE60115998T2 (de) Verbesserungen in oder zu Vermittlungsvorrichtungen
DE19536518C2 (de) Verfahren zur Aufrechterhaltung des mikrosynchronen Betriebs von gedoppelten informationsverarbeitenden Einheiten
DE10246732A1 (de) Verfahren und Vorrichtung zum Synchronisieren von Aktionen, die über ein lokales, mehrere Mikrokontroller aufweisendes Datennetz gesteuert werden, sowie Verfahren und Vorrichtung zum Senden von Nachrichten über ein solches Datennetzwerk
EP2706474B1 (de) Verfahren zur Synchronisation von Daten in einem Computernetzwerk

Legal Events

Date Code Title Description
PCAR Change of the address of the representative

Free format text: NEW ADDRESS: POSTFACH, 8032 ZUERICH (CH)