Each Acme party takes one provider, and a simulated source serves it

Table of Contents

1. Summary

The Acme demonstration gives each of its four legal entities its own market data provider, and one simulated source serves each provider. The group and Hong Kong read bloomberg through bloomberg-a, London reads demo through demo-a, and New York reads lseg through lseg-a. London and New York also read bloomberg, for the rates and USD spots of their funding curves. Every source the parties take is of kind simulated, so the demonstration runs with no vendor connection and no licence. The provider is the row a subscription names. The source is the row a route names. The two are never the same row, which is what lets the demonstration move a party to a live feed by changing one route.

2. Detail

2.1. The seven providers

The catalogue names seven providers. Five are data vendors the platform could connect to, and two are the platform's own.

Provider Kind What it stands for
bloomberg data vendor Bloomberg L.P., which identifies an instrument by a ticker and a yellow key
lseg data vendor LSEG, known before as Reuters and Refinitiv, which identifies an instrument by a RIC
ice data vendor ICE Data Services, which publishes under its own symbology
tradeweb data vendor Tradeweb, which publishes fixed income and other OTC pricing
ore reference The Open Source Risk Engine; the values of its example market data files are imported under it
demo reference A fictional provider for exercises and demonstrations, whose notation is a slash pair such as EUR/USD
composite reference The internal provider of the items the service derives from the quote series of other providers

The demonstration uses three of the seven. ice and tradeweb exist for the adapter contract and carry no party in the demonstration. ore is what the reference vintage is imported under, and composite is what a derived item is attributed to. Every source belongs to a provider in the catalogue says why the provider, and not the source, owns the id namespace and the mapping.

2.2. The six sources

A source is an adapter instance, and its name says which provider and which instance and never the kind.

Source Provider Kind Default What it serves
bloomberg-a bloomberg simulated yes the values the simulator generates for the ids of Bloomberg
lseg-a lseg simulated yes the values the simulator generates for the ids of LSEG
demo-a demo simulated yes the values the simulator generates for the exercises and demonstrations
ore-import ore replay yes the values of an ORE market data file, as the import and the DQ publish write them
ore-derived ore derived no the values the service computes from other series, such as a bootstrapped curve
composite-derived composite derived yes the values the service computes from the inputs of a composite

The three simulated sources are the ones the demonstration routes to. A source of kind derived is written by the service and never subscribed to by a party. The source kind says what each kind obliges, and No code path may behave differently because a source is simulated says what a simulated source must not change.

2.3. Which party takes which

Party Provider Source Entity of the group
Acme Corporation Plc bloomberg bloomberg-a the holding company
ACME Corporation UK plc demo demo-a London
ACME Corporation UK plc bloomberg bloomberg-a London
ACME Corporation US Inc lseg lseg-a New York
ACME Corporation US Inc bloomberg bloomberg-a New York
ACME Corporation HK Ltd bloomberg bloomberg-a Hong Kong

The split is not decoration. A synthetic feeds collection quotes the markets its own feeds serve, and one series has one running publisher: Bloomberg's feeds quote the USD spots and the curves every ACME book needs, LSEG's quote the fourteen cross pairs Bloomberg leaves to the cross-rates matrix, and the demo provider's quote eight majors and three emerging pairs on one exaggerated volatility. Giving each office a different provider therefore exercises three feed collections at once. Only Bloomberg quotes the IR ladders and USD spots of all 20 funding currencies: the demo provider quotes a short ladder in 20 currencies, four of them outside the funding set, and LSEG quotes no IR at all. Each party bootstraps its own funding curves, so London and New York take Bloomberg as a second provider and keep their own. A party routes to exactly one source for each provider is the rule that makes the choice a route and not a filter.

The system party takes bloomberg through bloomberg-a as well, because a system collection runs once in the system tenant and a tenant sees it without owning it. That row is the one subscription in the tenant the demonstration does not create for a party of its own.

2.4. Why no live source appears

A live adapter needs a vendor connection, credentials and a licence, and the demonstration must install and run on a laptop. The catalogue still carries the live providers, because the provider list is what a real installation's subscription screen offers, and a party on a live feed differs from this one only inside the adapter. A source switch changes one route and nothing else is the change a person makes to move a party from a simulated source to a live one.

3. What this note does not cover

The rows and their reasons are here. The catalogue the rows belong to is the catalogue the bundle installs and the feeds generate, the rows a party holds are the party's subscription and its route, and the step that writes them is the acme_demo seed profile.

4. See also

Emacs 29.3 (Org mode 9.6.15)