Venues are the specific places where trades are executed. Venues are identified by a unique string, such as COINBASE, CME or UNISWAPV3. They typically identify an actual exchange or marketplace.
Products
Products represent actual assets which are trade and settled. A very general category, examples of products include: BTC Crypto, AAPL US Equity, ESZ1 Future, USD, TSLA 2021-10-15 800 Call, BTC-USDT BINANCE Perpetual, etc.
Generally, two spot/physical products with the same name should be considered fungible. For futures/derivatives, which are generally not fungible, and have different settlement rules, etc. we will generally represent them with a discriminant, e.g. BTC-USDT BINANCE Perpetual vs BTC-USDT OKX Perpetual.
Futures and options product kinds come with an optional underlying field, which if set must uniquely identify related strips of futures/options. Outside of this guarantee, the choice of underlying product is somewhat arbitrary.
Markets
Markets describe a specific trading pair on a given venue. Market names are composed from four distinct parts:
Base - the base asset of the trading pair
Quote - the quote asset of the trading pair
Venue - the exchange venue
Route - routing/execution instruction to the venue, for order placement