A systematic research process needed equities, rates, FX and commodities in a single consistent format. We designed the schema and migrated the history.
The client's research process was systematic: they ran quantitative screens across asset classes. But the underlying data was stored in four different shapes — equities in one table schema, FX in another, rates in a third, commodities in a fourth. Each new cross-asset research question required a week of ad-hoc reshaping. Equities used daily close; commodities used settlement; rates were quoted in yield; FX was quoted in two conventions depending on the pair.
We designed a single long-form time-series schema: one row per observation, with fields for asset class, instrument identifier, tenor, quote convention, observation timestamp, value, units and source. We then migrated the historical data for the four asset classes into that schema, normalising quote conventions so that every "yield" is stored as a decimal annualised figure, every FX pair is stored in a consistent direction, and every commodity series is tagged with its contract month. We documented the convention choices explicitly — the point was not to hide the differences but to make them deliberate.
A cross-asset research question that previously took a week of reshaping can now be answered with a single query. The schema also made the client's internal documentation consistent — new researchers learn one data model, not four. We did not build the research process itself, and we did not add any opinion about which cross-asset relationships were interesting. We made the data regular enough that the client's own analysts could ask those questions.