---
title: "The North American Map"
book: "Networks, Hardware and Trading Infrastructure"
subject: quant
language: en
chapter: 10
exercises: 8
source: https://one-course.com/books/quant/14/en/chapter/10-the-north-american-map
---

# Chapter 10 — The North American Map

Three data centres in New Jersey, a few tens of kilometres apart, hold the matching engines of the NYSE group, of Nasdaq and of Cboe’s U.S. equities and options exchanges; a fourth, in Aurora, west of Chicago, holds CME’s Globex. Light in a vacuum needs $3.94\,\mathrm{m}\mathrm{s}$ to cross from Aurora to Nasdaq’s building in Carteret, light in glass $5.76\,\mathrm{m}\mathrm{s}$. In 2010 the fastest fibre between Chicago and Carteret was quoted at $6.65\,\mathrm{m}\mathrm{s}$; in 2016 a microwave network delivered Aurora’s data to Carteret in $3.982\,\mathrm{m}\mathrm{s}$, 1.1% above the time light needs in air along the shortest path on the Earth’s surface. The history of North American trading networks is the story of closing that gap, and this chapter measures it.

Chapter 9 described what a venue’s building sells. This chapter puts the buildings on a map: which venue matches where, how far apart the buildings are, how long light needs between them in vacuum, in air and in glass, and how close to those floors the published routes come. Every coordinate is a ledger row with its source, every distance is computed on the WGS-84 ellipsoid, and every map is drawn from computed coordinates. Chapters 11 and 12 do the same for Europe and Asia, and chapters 13 and 14 look inside the routes.

## 10.1 The New Jersey triangle

**Definition 10.1 (Geodesic distance).**

The *geodesic distance* between two points on the Earth is the length of the shortest path between them along the surface of a reference ellipsoid (for maps and satellite positioning, WGS-84), computed from their latitudes and longitudes.

The geodesic is the path a cable or a line of towers would follow if nothing were in the way: no rivers, no private land, no hills, no permits. It is the natural yardstick for a trading route, and it is not the shortest path through space: the straight chord through the Earth between Aurora and Carteret is $1.68\,\mathrm{k}\mathrm{m}$ shorter, $5.6\,\text{µ}\mathrm{s}$ of light, and nobody is going to dig it.

**As of September 2026 — Who matches where in North America.**

- **Mahwah, New Jersey** (1700 McArthur Boulevard): ICE’s U.S. Liquidity Center, which hosts the NYSE group’s markets and the consolidated feeds of the CTA and OPRA plans.
- **Carteret, New Jersey** (NY11, 1400 Federal Boulevard, an Equinix building): Nasdaq’s data centre, in expansion (NY11-4) for power and cabinets.
- **Secaucus, New Jersey** (Equinix NY5, 800 Secaucus Road): Cboe’s U.S. equities and options exchanges; Equinix NY4, at 755 Secaucus Road, a few hundred metres away, is one of the points to which ICE delivers Toronto’s market data.
- **Aurora, Illinois** (2905 Diehl Road): CME Group’s largest data centre, leased from CyrusOne until 2031; CME and Google Cloud are building a private cloud region and a co-location facility in Aurora.
- **Chicago** (350 Cermak): Cboe’s secondary data centre for all its U.S. platforms.
- **Markham, Ontario** : TMX’s main data centre (TSX, TSX Venture, TSX Alpha, Montreal Exchange), run by TMX; its street address could not be confirmed from a primary source and is flagged approximate.

[Figure 10.1](#fig-nw-the-north-american-map-nj) is the triangle, drawn from the coordinates of the site table. Mahwah is the northern corner, 55.6 kilometres from Carteret and 34.5 from Secaucus; Secaucus and Carteret are 25.9 kilometres apart. NY4 and NY5 stand 320 metres from each other, one dot at this scale. In vacuum the triangle’s sides take 185, 115 and $86\,\text{µ}\mathrm{s}$; in straight fibre, half as much again.

![The New Jersey triangle from computed coordinates: each site from its sourced street address and a cited geocoder (), each side labelled with its WGS-84 geodesic distance and light-time in vacuum. The projection is a local equirectangular one centred on 40.8° N, 74.15° W. Data: fig_map.py on firm.geomap.](https://one-course.com/images/onecourse/chapters/quant-14/nw-the-north-american-map/fig-269c381134f2.svg)

***Figure 10.1.** The New Jersey triangle from computed coordinates: each site from its sourced street address and a cited geocoder ([Box 10.1](#dat-nw-the-north-american-map-sites)), each side labelled with its WGS-84 [geodesic distance](#def-nw-the-north-american-map-geodesic) and light-time in vacuum. The projection is a local equirectangular one centred on 40.8° N, 74.15° W. Data: `fig_map.py` on `firm.geomap`.*

The triangle sets the arithmetic of U.S. equity and options trading. The consolidated feed of the CTA plan is produced in Mahwah, so a quote change at Nasdaq in one of that plan’s stocks must travel from Carteret to Mahwah, be processed, and travel back before a firm in Carteret sees it in the consolidated feed: at least twice $185.4\,\text{µ}\mathrm{s}$, $371\,\text{µ}\mathrm{s}$, of light in vacuum, before any processing. The same firm reads Nasdaq’s direct feed in its own building. The gap between the direct feeds and the securities information processor, which One Quant Book 1 describes, is partly geography, and no amount of engineering at the SIP removes the geographic part.

The triangle also sets the timing of an order split across venues. A router in Carteret that sends one piece to Cboe in Secaucus and one to the NYSE in Mahwah reaches Secaucus first: $126.6\,\text{µ}\mathrm{s}$ of straight fibre against $271\,\text{µ}\mathrm{s}$. Synchronised routing delays the Secaucus piece by the difference, here about $144\,\text{µ}\mathrm{s}$ along geodesics, in practice by the difference in measured latencies of the firm’s real routes, which are longer. Every latency race among the three buildings (latency arbitrage, in One Quant Book 11’s terms) is fought on these distances.

| From | To | Geodesic | Vacuum | Air | Fibre |
| --- | --- | --- | --- | --- | --- |
|  |  | (km) | ($\text{µ}\mathrm{s}$) | ($\text{µ}\mathrm{s}$) | ($\text{µ}\mathrm{s}$) |
| Mahwah | Carteret | 55.6 | 185.4 | 185.4 | 271.0 |
| Mahwah | Secaucus NY4 | 34.5 | 114.9 | 115.0 | 168.0 |
| Secaucus NY4 | Carteret | 25.9 | 86.3 | 86.3 | 126.2 |
| Aurora | Carteret | 1 180.9 | 3 939.0 | 3 940.1 | 5 758.8 |
| Aurora | Mahwah | 1 179.0 | 3 932.6 | 3 933.8 | 5 749.4 |
| Aurora | Secaucus NY5 | 1 191.1 | 3 973.1 | 3 974.3 | 5 808.7 |
| Aurora | 350 Cermak | 52.3 | 174.5 | 174.5 | 255.1 |
| 350 Cermak | Carteret | 1 129.2 | 3 766.7 | 3 767.8 | 5 506.9 |
| Markham | Mahwah | 523.7 | 1 747.0 | 1 747.6 | 2 554.2 |
| Markham | Secaucus NY4 | 550.2 | 1 835.3 | 1 835.9 | 2 683.3 |
| Markham | Carteret | 553.1 | 1 844.9 | 1 845.4 | 2 697.2 |

***Table 10.1.** Distances and one-way [latency floors](#def-nw-the-north-american-map-floor) between the sites of [Box 10.1](#dat-nw-the-north-american-map-sites): WGS-84 geodesics (Vincenty’s inverse method) and the time light needs along them in vacuum, in air ($n = 1.0003$) and in standard single-mode fibre ($n_g = 1.4620$). Data: `nw_map.pair_rows()`.*

## 10.2 The Chicago-area futures site

CME Group’s 10-K calls the Aurora building its largest data centre, leased from CyrusOne under a lease that expires in 2031, and describes a private Google Cloud region and co-location facility that CME and Google are building in Aurora to host its markets; chapter 16 returns to what a matching engine in a cloud region changes. Aurora has not always been the site. Laughlin, Aguirre and Grundfest, reading the exchanges’ own timestamps, place CME’s move of its matching engine from 350 Cermak, in the city, to Aurora in 2010, and the move of CME’s [colocation](https://one-course.com/books/quant/14/en/chapter/9-colocation-products-and-how-they-are-sold#def-nw-colocation-products-and-how-they-are-sold-colo) to Aurora on 29 January 2012; until then a firm colocated at Cermak with a microwave link that started in Aurora paid a metro round trip between the two. The distance between them is $52.3\,\mathrm{k}\mathrm{m}$, $255\,\text{µ}\mathrm{s}$ of straight fibre each way, so the round trip in fibre was at least half a millisecond, the figure their paper puts on it.

The Chicago side is thus one building for futures and a second site in the city, which remains Cboe’s secondary data centre for all its U.S. platforms and a point of presence for networks. The continent’s most-watched race runs from that single building to three: equity index futures prices formed in Chicago lead the cash prices formed in New Jersey, as the same paper recalls, and every firm that trades on the lead needs the fastest path from Aurora to each corner of the triangle.

![Chicago, Toronto and New Jersey from computed coordinates, each link labelled with its geodesic distance and light-time in vacuum. At this scale the New Jersey triangle of is two dots (Mahwah above, Carteret below). A local equirectangular projection centred on 41.8° N, 81° W; over 1 500 km it stretches shapes by a few per cent, which a schematic tolerates and a distance computation does not (distances are computed on the ellipsoid). Data: fig_map.py on firm.geomap.](https://one-course.com/images/onecourse/chapters/quant-14/nw-the-north-american-map/fig-e60f42dcdb3e.svg)

***Figure 10.2.** Chicago, Toronto and New Jersey from computed coordinates, each link labelled with its [geodesic distance](#def-nw-the-north-american-map-geodesic) and light-time in vacuum. At this scale the New Jersey triangle of [Figure 10.1](#fig-nw-the-north-american-map-nj) is two dots (Mahwah above, Carteret below). A local equirectangular projection centred on 41.8° N, 81° W; over 1 500 km it stretches shapes by a few per cent, which a schematic tolerates and a distance computation does not (distances are computed on the ellipsoid). Data: `fig_map.py` on `firm.geomap`.*

## 10.3 Toronto and the rest of the continent

TMX runs its own data centre in Markham, north of Toronto: its pages describe a suburban building operated for capital-markets clients, carrier- and vendor-neutral, with metro millimetre-wave and cross-border microwave services on site. ICE’s page speaks of the inter-listed equities and exchange-traded funds that trade in both Toronto and New York, and sells a wireless service between them: TSX data delivered to Mahwah, to Secaucus NY4 and to Carteret, U.S. data delivered to Markham, with private bandwidth of 1 to 10 megabits a second, and publishes three latencies per route: radio to radio, rack to rack, and the figure its service-level agreement guarantees. From Markham to Mahwah they are 1.88, 1.89 and $1.90\,\mathrm{m}\mathrm{s}$.

The page does not say whether these are one-way or round-trip times, and it need not: the geodesic answers. From Markham to Mahwah light in vacuum needs $1.747\,\mathrm{m}\mathrm{s}$ one way, so a round trip cannot take less than $3.49\,\mathrm{m}\mathrm{s}$, and $1.89\,\mathrm{m}\mathrm{s}$ can only be one way, 8% above the floor in air. The rack-to-rack figure adds $10\,\text{µ}\mathrm{s}$ to Mahwah and $20\,\text{µ}\mathrm{s}$ to Carteret over radio to radio: the short connections at each end, from the building’s roof or tower to the customer’s rack.

**Remark 10.2 (The rest of the continent).**

The method of this chapter extends to any site whose building can be sourced: the options exchanges, the other futures venues, the markets of Mexico. `firm.venuesites` (chapter 11) holds the registry from venue to site; chapters 22 to 26 fill it for the venues each asset class needs. What does not extend is the certainty: for some buildings a filing or an operator’s page names the street address, for others only a directory does, and the site table must say which.

## 10.4 Distances, light-times and route factors

**Definition 10.3 (Latency floor, group index).**

The *latency floor* between two sites is the one-way time light needs along the geodesic between them, $d/c_0$ in vacuum, with $c_0 = 299\,792\,458\,\mathrm{m}/\mathrm{s}$; in a medium it is $n_g d / c_0$. The *group index* $n_g$ of a medium is the ratio of $c_0$ to the speed at which a pulse, and so information, travels through it: about 1.462 in standard single-mode fibre at $1550\,\mathrm{n}\mathrm{m}$, about 1.0003 in air near the ground.

**Definition 10.4 (Route factor).**

The *route factor* of a route is its published or measured one-way latency divided by the [latency floor](#def-nw-the-north-american-map-floor), in the route’s own medium, between its end points. A route factor of 1 is a route along the geodesic with no equipment; everything else is above 1.

**Proposition 10.5 (What the floors are worth).**

Per $1000\,\mathrm{k}\mathrm{m}$ of geodesic the [latency floor](#def-nw-the-north-american-map-floor) is $3.336\,\mathrm{m}\mathrm{s}$ in vacuum and in air to within $1\,\text{µ}\mathrm{s}$, and $4.877\,\mathrm{m}\mathrm{s}$ in fibre: along the same path, glass is 46% slower than air. A route of factor $\rho$ in a medium of [group index](#def-nw-the-north-american-map-floor) $n_g$ spends $(\rho - 1)$ times its floor on everything but the geodesic, the equivalent of $(\rho - 1)\,d$ kilometres of extra path in that medium.

**Proof.** $10^3/c_0$ is $3.3356\,\text{µ}\mathrm{s}$ per kilometre; times $1.0003$ it grows by $1.0\,\text{µ}\mathrm{s}$ per $1000\,\mathrm{k}\mathrm{m}$; times 1.4620 it is $4.877\,\text{µ}\mathrm{s}/\mathrm{k}\mathrm{m}$, 46.2% more. A time $\rho\, n_g d / c_0$ exceeds the floor by $(\rho-1)\,n_g d/c_0$, which is the time the same medium needs for $(\rho-1)\,d$ more kilometres. ∎

The air’s own index barely matters: the Ciddor equation, as NIST tabulates it, gives 1.00027 for dry air at $20\,{}^{\circ}\mathrm{C}$ and sea-level pressure and 1.00030 for warm, humid, compressed air, a spread that moves the Aurora–Carteret floor by $0.1\,\text{µ}\mathrm{s}$. What matters is glass against air, $1.82\,\mathrm{m}\mathrm{s}$ on that route, and how far the route strays from the geodesic.

```python
def floor_us(d_m, medium="vacuum", n_g=None):
    n = {"vacuum": 1.0, "air": N_AIR, "fibre": N_FIBRE}[medium] if n_g is None else n_g
    return d_m * n / C0 * 1e6


def route_factor(published_us, d_m, medium="fibre"):
    return published_us / floor_us(d_m, medium)
```

***Listing 10.1.** Latency floors and route factors: the medium’s index times the geodesic over the speed of light, and a published latency over the floor. code/firm/geomap/firm_geomap.py*

[Table 10.2](#tab-nw-the-north-american-map-routes) applies the definitions to the published routes in the ledger. Laughlin, Aguirre and Grundfest’s 2010 fibre, between 350 Cermak and Carteret, ran at a quoted $6.65\,\mathrm{m}\mathrm{s}$, later $6.55\,\mathrm{m}\mathrm{s}$: a [route factor](#def-nw-the-north-american-map-factor) of 1.21, then 1.19, over its fibre floor, or $1.1\,\mathrm{m}\mathrm{s}$ of extra time, the equivalent of 234 kilometres of glass. Some of it is path (a cable follows roads and rights of way), some is equipment (amplifiers, regenerators, the switches at each end). The same authors estimated the microwave networks licensed in 2011 and 2012 at 4.2 to $5.2\,\mathrm{m}\mathrm{s}$; the network that reached Carteret in $3.982\,\mathrm{m}\mathrm{s}$ in 2016 had a [route factor](#def-nw-the-north-american-map-factor) of 1.011, $42\,\text{µ}\mathrm{s}$ above the floor in air, or about 12.5 kilometres of detour and equipment over 1 181. Chapter 13 takes the fibre routes apart and chapter 14 the towers.

| Route | From | To | Published | Floor | Route | Excess |
| --- | --- | --- | --- | --- | --- | --- |
|  |  |  | (ms) | (ms) | factor | ($\text{µ}\mathrm{s}$) |
| Microwave, 2016 | Aurora | Carteret | 3.982 | 3.940 | 1.011 | 42 |
| Microwave, 2016 | Aurora | Mahwah | 3.986 | 3.934 | 1.013 | 52 |
| Wireless, rack to rack | Markham | Mahwah | 1.890 | 1.748 | 1.082 | 142 |
| Wireless, rack to rack | Markham | NY4 | 1.990 | 1.836 | 1.084 | 154 |
| Wireless, rack to rack | Markham | Carteret | 2.050 | 1.845 | 1.111 | 205 |
| Fibre, 2010 | 350 Cermak | Carteret | 6.650 | 5.507 | 1.208 | 1 143 |
| Fibre, later | 350 Cermak | Carteret | 6.550 | 5.507 | 1.189 | 1 043 |

***Table 10.2.** Published one-way latencies against the floor in each route’s medium (air for microwave and wireless, fibre for fibre). Sources: Quincy Data’s 2016 release for the microwave routes, ICE’s Toronto wireless page for the Markham routes, Laughlin, Aguirre and Grundfest (2014) for the fibre. Data: `nw_map.route_rows()`.*

```python
def route_rows():
    t = sites()
    rows = []
    for label, a, b, medium, pub, row in ROUTES:
        d = distance(a, b, t)
        floor = gm.floor_us(d, medium)
        n = {"air": gm.N_AIR, "fibre": gm.N_FIBRE}[medium]
        excess = pub - floor
        rows.append({"label": label, "a": a, "b": b, "medium": medium, "km": d / 1e3,
                     "published_us": pub, "floor_us": floor, "vacuum_us": gm.floor_us(d, "vacuum"),
                     "factor": gm.route_factor(pub, d, medium), "excess_us": excess,
                     "excess_km": excess * 1e-6 * gm.C0 / n / 1e3, "row": row})
    return rows
```

***Listing 10.2.** Each published route against its floor: the route factor, the excess time and the extra path in the route’s own medium that the excess is worth. code/networks/10-the-north-american-map/python/nw_map.py*

![Published one-way route latencies against the geodesic distance between their end points, with the floors in vacuum (the floor in air is indistinguishable at this scale) and in fibre. The wireless routes sit just above the vacuum line; the 2010 fibre sits above even the fibre floor. Data: fig_map.py, routes of .](https://one-course.com/images/onecourse/chapters/quant-14/nw-the-north-american-map/fig-49d0eea909d9.svg)

***Figure 10.3.** Published one-way route latencies against the [geodesic distance](#def-nw-the-north-american-map-geodesic) between their end points, with the floors in vacuum (the floor in air is indistinguishable at this scale) and in fibre. The wireless routes sit just above the vacuum line; the 2010 fibre sits above even the fibre floor. Data: `fig_map.py`, routes of [Table 10.2](#tab-nw-the-north-american-map-routes).*

**Remark 10.6 (Why the ellipsoid).**

The spherical (haversine) formula with the Earth’s mean radius puts Aurora and Carteret $2.97\,\mathrm{k}\mathrm{m}$ closer than the ellipsoid does, an error of 0.25% and $9.9\,\text{µ}\mathrm{s}$ of light in air: more than a quarter of the gap between the 2016 microwave route and its floor. Between Mahwah and Carteret the sphere errs by 0.12% the other way. [Route factors](#def-nw-the-north-american-map-factor) of 1.01 cannot be measured with a yardstick that is wrong by 0.25%, which is why `firm.geomap` computes Vincenty’s geodesic on WGS-84 and tests it against Karney’s published set of geodesics.

![What a route factor contains, schematically: the detour of the path from the geodesic, the equipment along it (towers, amplifiers, regenerators) and the tails at each end, from the building’s roof or meet-me room to the customer’s rack. A published figure that is “radio to radio” leaves the tails out; “rack to rack” includes them.](https://one-course.com/images/onecourse/chapters/quant-14/nw-the-north-american-map/fig-58c0ad43d230.svg)

***Figure 10.4.** What a [route factor](#def-nw-the-north-american-map-factor) contains, schematically: the detour of the path from the geodesic, the equipment along it (towers, amplifiers, regenerators) and the tails at each end, from the building’s roof or [meet-me room](https://one-course.com/books/quant/14/en/chapter/9-colocation-products-and-how-they-are-sold#def-nw-colocation-products-and-how-they-are-sold-mmr) to the customer’s rack. A published figure that is “radio to radio” leaves the tails out; “rack to rack” includes them.*

## 10.5 Method: a site table you can defend

**Method 10.7 (Building the site table).**

1. **Source the building, not the city.** Take the site from the venue’s own documents (a connectivity manual, a filing, an annual report) and the street address from the venue or the data-centre operator. A directory is a lead, not a source; if it is all there is, flag the site.
2. **Geocode with a cited geocoder.** Record the geocoder, the query and the date; store latitude and longitude with seven decimals (about a centimetre), which is more than the address justifies but keeps the computation reproducible.
3. **Cross-check independently.** Compare with an independent published position of the same building; a disagreement of more than a few hundred metres means one of them is wrong.
4. **Compute, never type.** Distances, floors and map coordinates come from the table through code; the table’s rows carry their ledger ids so that every number on a map can be traced to a source.
5. **Date it.** Venues move (CME in 2010 and 2012, as above; Euronext in 2022, in chapter 11); re-verify the table before every use of it that matters.

How much does a site error cost? A kilometre is $3.3\,\text{µ}\mathrm{s}$ of light in vacuum, which is the size of the gaps that the fastest routes compete over. The site table of this chapter meets the method’s third step: Laughlin, Aguirre and Grundfest give Aurora at about 41.80° N, 88.24° W and Carteret at 40.58° N, 74.25° W, which agree with the geocoded coordinates to within a hundredth of a degree (under a kilometre). Their distance, $1179\,\mathrm{k}\mathrm{m}$, lies between the spherical ($1177.2\,\mathrm{k}\mathrm{m}$) and the ellipsoidal ($1180.1\,\mathrm{k}\mathrm{m}$) distances between their rounded positions, and within $2\,\mathrm{k}\mathrm{m}$ of ours; the paper does not say which Earth it used, and its light-time of $3.93\,\mathrm{m}\mathrm{s}$ agrees with ours to $6\,\text{µ}\mathrm{s}$. Markham is the weak row: its building is sourced to TMX and ICE, its street address only to a directory, and a Markham error of a few kilometres would move its floors by some $10\,\text{µ}\mathrm{s}$, which the [route factors](#def-nw-the-north-american-map-factor) of [Table 10.2](#tab-nw-the-north-american-map-routes) would absorb without anyone noticing.

```python
def geodesic_m(lat1, lon1, lat2, lon2, tol=1e-12, max_iter=200):
    if lat1 == lat2 and lon1 == lon2:
        return 0.0
    a, b, f = A_WGS84, B_WGS84, F_WGS84
    L = math.radians(lon2 - lon1)
    U1 = math.atan((1 - f) * math.tan(math.radians(lat1)))
    U2 = math.atan((1 - f) * math.tan(math.radians(lat2)))
    sinU1, cosU1, sinU2, cosU2 = math.sin(U1), math.cos(U1), math.sin(U2), math.cos(U2)
    lam = L
    for _ in range(max_iter):
        sl, cl = math.sin(lam), math.cos(lam)
        sin_s = math.hypot(cosU2 * sl, cosU1 * sinU2 - sinU1 * cosU2 * cl)
        cos_s = sinU1 * sinU2 + cosU1 * cosU2 * cl
        sigma = math.atan2(sin_s, cos_s)
        sin_a = cosU1 * cosU2 * sl / sin_s
        cos2a = 1 - sin_a * sin_a
        cos2sm = cos_s - 2 * sinU1 * sinU2 / cos2a if cos2a else 0.0
        C = f / 16 * cos2a * (4 + f * (4 - 3 * cos2a))
        prev = lam
        inner = cos2sm + C * cos_s * (-1 + 2 * cos2sm ** 2)
        lam = L + (1 - C) * f * sin_a * (sigma + C * sin_s * inner)
        if abs(lam - prev) < tol:
            break
    else:
        raise ArithmeticError("Vincenty inverse did not converge (nearly antipodal points)")
    u2 = cos2a * (a * a - b * b) / (b * b)
    A = 1 + u2 / 16384 * (4096 + u2 * (-768 + u2 * (320 - 175 * u2)))
    B = u2 / 1024 * (256 + u2 * (-128 + u2 * (74 - 47 * u2)))
    t4 = B / 6 * cos2sm * (-3 + 4 * sin_s ** 2) * (-3 + 4 * cos2sm ** 2)
    ds = B * sin_s * (cos2sm + B / 4 * (cos_s * (-1 + 2 * cos2sm ** 2) - t4))
    return b * A * (sigma - ds)
```

***Listing 10.3.** Vincenty’s inverse method on the WGS-84 ellipsoid, with a convergence guard: the iteration on the longitude difference on the auxiliary sphere, then the series for the distance. code/firm/geomap/firm_geomap.py*

## 10.6 Tutorial: the map from computed coordinates

**Goal.** Load the site table, compute every distance and floor, compare published routes with their floors, and draw the maps. **End state:** Figures [10.1](#fig-nw-the-north-american-map-nj), [10.2](#fig-nw-the-north-american-map-na) and [10.3](#fig-nw-the-north-american-map-routes) and Tables [10.1](#tab-nw-the-north-american-map-pairs) and [10.2](#tab-nw-the-north-american-map-routes).

1. **The table.** `data/networks/sites.csv` holds seven sites, each with the ledger rows that source its building, address and coordinates; `firm_geomap.load_sites` reads it.
2. **The yardstick.** Run `firm.geomap` ’s tests: Vincenty’s distance ( [Listing 10.3](#lst-nw-the-north-american-map-vincenty) ) against 249 geodesics of Karney’s test set, in Python and in C++20, to better than a tenth of a millimetre.
3. **The floors.** `nw_map.pair_rows()` computes [Table 10.1](#tab-nw-the-north-american-map-pairs) ; `route_rows()` ( [Listing 10.2](#lst-nw-the-north-american-map-routes) ) computes [Table 10.2](#tab-nw-the-north-american-map-routes) .
4. **The maps.** `python fig_map.py` projects each region’s sites and writes the site, link and label files that the TikZ maps read; no coordinate is typed in the figure.

**What to change next.** Add Cboe’s secondary site’s points of presence, or another venue from its own manual, with its ledger row, and recompute; replace the fibre index by that of a hollow-core fibre (chapter 13) and see what happens to the Chicago floor.

## 10.7 Build: the geodesic map

**Purpose.** Sites as sourced data, distances on the ellipsoid, [latency floors](#def-nw-the-north-american-map-floor) and [route factors](#def-nw-the-north-american-map-factor), and coordinates for maps: the base of every map and route of Part III, and of chapter 29’s plan.

**Interface.** `firm_geomap`: `Site(id, name, operator, lat, lon, source, venues)`, `geodesic_m`, `haversine_m`, `floor_us(d_m, medium, n_g)`, `route_factor(published_us, d_m, medium)`, `matrix`, `project(sites, lat0, lon0)`, `load_sites`, `write_sites`; a C++20 twin of the geodesic in `cpp/firm_geomap.hpp`.

**Rules.** Every site names its source rows; the geodesic raises rather than returning a wrong distance when the iteration fails (nearly antipodal points); floors are one-way; a projection is for drawing only, never for a distance.

**Acceptance tests.** `code/firm/geomap/tests/`: 249 geodesics of Karney’s CC0 test set to $0.1\,\mathrm{m}\mathrm{m}$ in Python and C++20, the floors by hand, the sphere against the ellipsoid, and the site table’s sources present.

**Stretch.** Karney’s algorithm, which converges everywhere; a great-circle path as a list of points, for drawing a route on a map.

Sources and further reading

- G. Laughlin, A. Aguirre and J. Grundfest, “Information transmission between financial markets in Chicago and New York”, *Financial Review* 49(2) (2014).
- T. Vincenty, “Direct and inverse solutions of geodesics on the ellipsoid with application of nested equations”, *Survey Review* 23(176) (1975); C. F. F. Karney, “Algorithms for geodesics”, *Journal of Geodesy* 87 (2013), and the test set for geodesics (Zenodo, CC0).
- ICE, *Colocation Technical Specifications* (Mahwah) and the Toronto wireless page; Cboe, *Titanium U.S. Equities/Options Connectivity Manual* ; CME Group, Form 10-K 2024; SEC Release 34-101267 (Nasdaq); Quincy Data, release of 13 May 2016.
- BIPM, the SI definition of the metre; NIST, refractive index of air (Ciddor equation); site coordinates from OpenStreetMap Nominatim.

## 10.8 Exercises

**Exercise 10.1 ★.**

How long does light need to cover $1000\,\mathrm{k}\mathrm{m}$ in vacuum and in standard fibre? What is the difference over Aurora–Carteret?

**Solution of Exercise 10.1.**

$10^6/c_0 = 3.336\,\mathrm{m}\mathrm{s}$ in vacuum and $1.4620$ times that, $4.877\,\mathrm{m}\mathrm{s}$, in fibre. Over the $1180.9\,\mathrm{k}\mathrm{m}$ between Aurora and Carteret the floors are $3939.0\,\text{µ}\mathrm{s}$ and $5758.8\,\text{µ}\mathrm{s}$, a difference of $1.82\,\mathrm{m}\mathrm{s}$: the prize that sent the fastest routes into the air.

**Exercise 10.2 ★.**

A vendor publishes a latency of $2.05\,\mathrm{m}\mathrm{s}$ between Markham and Carteret without saying whether it is one-way. Show which it is.

**Solution of Exercise 10.2.**

Markham and Carteret are $553.1\,\mathrm{k}\mathrm{m}$ apart: the one-way floor in vacuum is $1.845\,\mathrm{m}\mathrm{s}$, so a round trip cannot take less than $3.69\,\mathrm{m}\mathrm{s}$. The $2.05\,\mathrm{m}\mathrm{s}$ is therefore one-way, with a [route factor](#def-nw-the-north-american-map-factor) of 1.111 in air.

**Exercise 10.3 ★.**

The spherical formula puts Aurora and Carteret $2.97\,\mathrm{k}\mathrm{m}$ too close. How many microseconds in air is that, and why does it matter?

**Solution of Exercise 10.3.**

$2\,974.6 \times 1.0003 / c_0 = 9.9\,\text{µ}\mathrm{s}$. The fastest published route between the two buildings is $42\,\text{µ}\mathrm{s}$ above its floor in air: a yardstick wrong by 10 of those 42 microseconds cannot rank routes that differ by a few.

**Exercise 10.4 ★★.**

The 2016 microwave route from Aurora to Mahwah was published at $3.986\,\mathrm{m}\mathrm{s}$. Compute its [route factor](#def-nw-the-north-american-map-factor) and the extra path it is worth in air.

**Solution of Exercise 10.4.**

The floor in air over $1179.0\,\mathrm{k}\mathrm{m}$ is $3933.8\,\text{µ}\mathrm{s}$; $3\,986 / 3\,933.8 = 1.013$. The excess of $52.2\,\text{µ}\mathrm{s}$ is worth $52.2 \times 10^{-6} \times c_0 / 1.0003 = 15.7\,\mathrm{k}\mathrm{m}$ of extra path in air (or the equivalent in equipment).

**Exercise 10.5 ★★.**

A router in Carteret sends one piece of an order to Secaucus NY5 and one to Mahwah over straight fibre. By how much should synchronised routing delay the NY5 piece, and why is the real figure different?

**Solution of Exercise 10.5.**

Carteret–NY5 is $25.96\,\mathrm{k}\mathrm{m}$, $126.6\,\text{µ}\mathrm{s}$ of straight fibre; Carteret–Mahwah $55.6\,\mathrm{k}\mathrm{m}$, $271.0\,\text{µ}\mathrm{s}$. The NY5 piece waits $271.0 - 126.6 = 144.4\,\text{µ}\mathrm{s}$. The real figure is the difference between the measured latencies of the firm’s actual routes (longer than the geodesic, with switches, and different for each carrier), plus each venue’s own gateway time, so it is measured, not computed.

**Exercise 10.6 ★★.**

Which row of the site table do you trust least, and what would a 3-kilometre error in it do to the floors that use it?

**Solution of Exercise 10.6.**

Markham: its building is sourced to TMX and ICE but its street address only to a directory. Three kilometres move its floors by up to $3 \times 3.336 = 10.0\,\text{µ}\mathrm{s}$ in vacuum and $14.6\,\text{µ}\mathrm{s}$ in fibre, if the error lies along the route; an error across it changes almost nothing.

**Exercise 10.7 ★★★.**

*Coding.* Round Aurora’s and Carteret’s coordinates to two decimals, as Laughlin, Aguirre and Grundfest print them, and compute the geodesic with `firm.geomap`. How far is it from theirs and from the unrounded one?

**Solution of Exercise 10.7.**

`geodesic_m(41.80, -88.24, 40.58, -74.25)` gives $1180.13\,\mathrm{k}\mathrm{m}$: $1.13\,\mathrm{k}\mathrm{m}$ more than the paper’s $1179\,\mathrm{k}\mathrm{m}$ and $0.74\,\mathrm{k}\mathrm{m}$ less than the geodesic between the unrounded coordinates. Rounding to two decimals moves each point by up to about $0.6\,\mathrm{k}\mathrm{m}$, which is $2\,\text{µ}\mathrm{s}$ of light: fine for a paper, not for ranking routes.

**Exercise 10.8 ★★★.**

*Find the flaw.* “Our fibre route between Chicago and New Jersey has a [route factor](#def-nw-the-north-american-map-factor) of 1.19, so a microwave network on the same path would be 19% faster.”

**Solution of Exercise 10.8.**

The [route factor](#def-nw-the-north-american-map-factor) measures the fibre route against the floor *in fibre*. Moving the same path into the air divides the glass part by $1.4620/1.0003$, a saving of 31.6% of the time spent in the medium, whatever the [route factor](#def-nw-the-north-american-map-factor); the equipment (amplifiers against radios) and the path (a cable’s right of way against a tower line’s) also change, so the new [route factor](#def-nw-the-north-american-map-factor) must be estimated separately. The statement confuses the route’s detour with the medium’s speed.

## 10.9 Problem: Carteret to Aurora

**Problem 10.1.**

Weekend problem — the floors between the Nasdaq and CME data centres, and a fibre route against them

A firm trades index futures in Aurora against stocks in Carteret and wants to know how fast the link between them could ever be, and how far from that limit the published routes have been.

**Part I — The distance.**

1. From the site table, what is the [geodesic distance](#def-nw-the-north-american-map-geodesic) between Aurora and Carteret?
2. What does the spherical formula give, and what is its error in kilometres and per cent?
3. How much shorter is the straight chord through the Earth?
4. Why is the geodesic, not the chord, the right yardstick for a trading route?

**Part II — The floors.**

5. What is the one-way [latency floor](#def-nw-the-north-american-map-floor) in vacuum?
6. In air, taking $n = 1.0003$ , and how much does the choice between 1.00027 and 1.0003 matter?
7. In standard fibre along the geodesic?
8. What is the round-trip floor in fibre, and in vacuum?

**Part III — A fibre route against its floor.**

9. The 2010 fibre from 350 Cermak to Carteret was quoted at $6.65\,\mathrm{m}\mathrm{s}$ one way. What is its floor, and its [route factor](#def-nw-the-north-american-map-factor) ?
10. How much excess time is that, and how many kilometres of glass is it worth?
11. From Aurora, a firm reached that fibre over the Cermak–Aurora metro. If the metro leg had the same [route factor](#def-nw-the-north-american-map-factor) , what would the time be from Aurora to Carteret, and its [route factor](#def-nw-the-north-american-map-factor) against the Aurora–Carteret floor in fibre?
12. The route was later quoted at $6.55\,\mathrm{m}\mathrm{s}$ . What changed in the [route factor](#def-nw-the-north-american-map-factor) ?

**Part IV — The verdict.**

13. State the *named result* : the three floors between Carteret and Aurora and the [route factor](#def-nw-the-north-american-map-factor) of the 2010 fibre.
14. The 2016 microwave route reached Carteret in $3.982\,\mathrm{m}\mathrm{s}$ . By how much did it beat the fibre floor?
15. What is left between it and the floor in air?
16. Could any fibre route ever beat it? What kind of fibre would it take (chapter 13)?
17. Which site error would move the named result by more than $1\,\text{µ}\mathrm{s}$ ?
18. What does the move of CME’s matching engine from Cermak to Aurora do to the Cermak-based fibre’s value?
19. Why do firms publish, and buy, rack-to-rack latencies rather than floors?
20. In one sentence: what does the geodesic tell a firm that a vendor’s latency does not?

**Solution of Problem 10.1.**

**Part I.**

1. $1180.87\,\mathrm{k}\mathrm{m}$ on WGS-84.
2. $1177.90\,\mathrm{k}\mathrm{m}$ : $2.97\,\mathrm{k}\mathrm{m}$ short, an error of $-0.25\%$ .
3. $1.68\,\mathrm{k}\mathrm{m}$ , $5.6\,\text{µ}\mathrm{s}$ of light.
4. Every real route runs on or above the surface: cables in the ground, radios on towers. The chord is a physical bound nobody can use.

**Part II.**

1. $3939.0\,\text{µ}\mathrm{s}$ .
2. $3940.1\,\text{µ}\mathrm{s}$ ; between $n = 1.00027$ and $n = 1.0003$ the floor moves by $0.12\,\text{µ}\mathrm{s}$ , nothing.
3. $5758.8\,\text{µ}\mathrm{s}$ .
4. $11.52\,\mathrm{m}\mathrm{s}$ in fibre, $7.88\,\mathrm{m}\mathrm{s}$ in vacuum.

**Part III.**

1. Cermak–Carteret is $1129.2\,\mathrm{k}\mathrm{m}$ ; the fibre floor is $5506.9\,\text{µ}\mathrm{s}$ , and $6\,650/5\,506.9 = 1.208$ .
2. $1143\,\text{µ}\mathrm{s}$ , worth $1\,143 \times 10^{-6} \times c_0/1.4620 = 234\,\mathrm{k}\mathrm{m}$ of glass: path, equipment and the ends.
3. The metro leg’s floor is $255.1\,\text{µ}\mathrm{s}$ ; at the same [route factor](#def-nw-the-north-american-map-factor) it takes $308.0\,\text{µ}\mathrm{s}$ , for $6.958\,\mathrm{m}\mathrm{s}$ in all, and $6\,958/5\,758.8 = 1.208$ against the Aurora–Carteret floor in fibre: going through Cermak, which is almost on the way, costs little beyond the route’s own factor.
4. $6\,550/5\,506.9 = 1.189$ : $100\,\text{µ}\mathrm{s}$ less, the equivalent of $20.5\,\mathrm{k}\mathrm{m}$ of glass, from straighter segments or faster equipment.

**Part IV.**

1. *Named result* : between Carteret and Aurora the one-way [latency floor](#def-nw-the-north-american-map-floor) is $3.939\,\mathrm{m}\mathrm{s}$ in vacuum, $3.940\,\mathrm{m}\mathrm{s}$ in air and $5.759\,\mathrm{m}\mathrm{s}$ in fibre along the geodesic; the 2010 fibre from Cermak ran at a [route factor](#def-nw-the-north-american-map-factor) of 1.21 over its own floor.
2. $5\,758.8 - 3\,982 = 1777\,\text{µ}\mathrm{s}$ under the fibre floor: no fibre of standard glass can match it, however straight.
3. $41.9\,\text{µ}\mathrm{s}$ , a [route factor](#def-nw-the-north-american-map-factor) of 1.011: about $12.5\,\mathrm{k}\mathrm{m}$ of detour and equipment.
4. Only with a [group index](#def-nw-the-north-american-map-floor) below $3\,982/3\,939.0 = 1.011$ even along the geodesic: a fibre whose light travels almost as in air, the hollow-core fibre of chapter 13, and a nearly straight path.
5. An error of $0.3\,\mathrm{k}\mathrm{m}$ along the route is $1\,\text{µ}\mathrm{s}$ ; the geocodes place the buildings, not their [meet-me rooms](https://one-course.com/books/quant/14/en/chapter/9-colocation-products-and-how-they-are-sold#def-nw-colocation-products-and-how-they-are-sold-mmr) , so the named result is good to about a microsecond.
6. It adds the Aurora–Cermak metro, at least $255\,\text{µ}\mathrm{s}$ each way in fibre, to every use of the Cermak-based route for trading Aurora’s prices: a route built for one geography loses value when the venue moves.
7. Because firms trade from racks: the tails from the building’s edge to the rack are part of the race, and only a rack-to-rack figure can be compared across providers.
8. The geodesic gives the physical floor that no vendor can beat, so a vendor’s latency can be read as a [route factor](#def-nw-the-north-american-map-factor) and compared with the best that has been done.

## 10.10 Interview questions

**Interview question 10.1 ★ developer, trader.**

Where are the main U.S. equity, options and futures matching engines, and roughly how far apart?

**Solution of Interview question 10.1.**

The NYSE group matches in Mahwah, Nasdaq in Carteret, Cboe’s U.S. equities and options in Secaucus (NY5), all in New Jersey within about $56\,\mathrm{k}\mathrm{m}$ of each other; CME’s futures in Aurora, Illinois, about $1180\,\mathrm{k}\mathrm{m}$ away.

*What the interviewer is looking for: Named buildings, not just cities; the triangle’s scale (tens of km, about 100–$200\,\text{µ}\mathrm{s}$) against Chicago’s ($1200\,\mathrm{k}\mathrm{m}$, about $4\,\mathrm{m}\mathrm{s}$); awareness that sites move and must be re-verified.*

**Interview question 10.2 ★ developer.**

What is the minimum one-way latency between Chicago and New Jersey, in vacuum and in fibre? Show the arithmetic.

**Solution of Interview question 10.2.**

About $1180\,\mathrm{k}\mathrm{m}$ of geodesic: $1180/299\,792 = 3.94\,\mathrm{m}\mathrm{s}$ in vacuum; times 1.462, $5.76\,\mathrm{m}\mathrm{s}$ in fibre; the 2010 fibre added about 20% to its floor, the best published microwave route about 1%.

*What the interviewer is looking for: The $3.34\,\text{µ}\mathrm{s}/\mathrm{k}\mathrm{m}$ and $4.88\,\text{µ}\mathrm{s}/\mathrm{k}\mathrm{m}$ rules; one-way against round trip; the difference between a floor and a route.*

**Interview question 10.3 ★★ developer, researcher.**

Why is microwave faster than fibre over the same path, and why is fibre still used?

**Solution of Interview question 10.3.**

Light travels in air at nearly $c_0$ and in glass at $c_0/1.46$, so over the same path microwave is about 32% faster. Fibre carries far more bandwidth (the Toronto wireless service of this chapter sells 1 to 10 megabits a second; one fibre pair carries the 10- and 100-gigabit links of chapter 1), and glass underground does not care about the weather, which a line of radios in the open air does (chapter 14).

*What the interviewer is looking for: [Group index](#def-nw-the-north-american-map-floor); bandwidth and weather as the price of speed; firms using both, microwave for the few messages that race, fibre for everything else (chapters 13 and 14).*

**Interview question 10.4 ★★ developer.**

How would you compute the distance between two data centres, and how accurate does it need to be?

**Solution of Interview question 10.4.**

Take each building’s address from the venue or the operator, geocode it with a cited geocoder, and compute the geodesic on WGS-84 with a tested method (Vincenty’s or Karney’s); cross-check with an independent position. It must be accurate to a few hundred metres, a microsecond of light, because routes compete on tens of microseconds and a spherical formula errs by 0.25%.

*What the interviewer is looking for: Ellipsoid, not sphere; tests against published geodesics; sources for coordinates; accuracy stated in time.*

**Interview question 10.5 ★★ trader, researcher.**

Why does a trader in Carteret see Nasdaq’s quotes before the consolidated feed shows them, and how much of the gap is physics?

**Solution of Interview question 10.5.**

The direct feed is produced in the building where Nasdaq matches; the CTA plan’s consolidated feed is produced in Mahwah, so a Nasdaq quote in one of its stocks travels to Mahwah, is processed, and travels back: at least $371\,\text{µ}\mathrm{s}$ of light in vacuum over the $55.6\,\mathrm{k}\mathrm{m}$, more in fibre, plus the processing. The physics part cannot be engineered away; the processing part can.

*What the interviewer is looking for: Geography of the SIP against the direct feeds; round trip, not one way; the distinction between the floor and the processing time.*

**Interview question 10.6 ★★★ developer, trader.**

A vendor offers a Chicago–New Jersey link at $3.99\,\mathrm{m}\mathrm{s}$. How do you judge the claim before you buy?

**Solution of Interview question 10.6.**

Compute the floor between the exact buildings ($3.94\,\mathrm{m}\mathrm{s}$ in air for Aurora–Carteret): $3.99\,\mathrm{m}\mathrm{s}$ is a [route factor](#def-nw-the-north-american-map-factor) of 1.013, plausible for a microwave route, impossible for fibre. Then ask whether the figure is one-way, radio to radio or rack to rack, median or guaranteed, and how it is measured, and test it yourself with timestamped captures at both ends (chapters 4 and 5).

*What the interviewer is looking for: The floor as a sanity check; the definitions behind a published figure; measurement before purchase; the SLA figure against the typical one (chapter 15).*
