Market


Market is an
abstract direct subtype of Type with functions Market Functions, direct subtypes Market subtypes and keys Market keys that represents what is commonly understood as "Market Data".
It is an
abstract Deriscope Type, which means that its objects will have one of the two direct subtypes below:
Valuation or Market Set
Since every Market Set object is a collection of Market objects, it follows that:
every Market object is ultimately a collection of Valuation objects.

The following two important restrictions apply on the latter collection:
1) Not two Valuation objects can share the same
Quotable
2) All Valuation objects must share the same observation (i.e. quote) date.
The first restriction helps to avoid ambiguity in a pricing context.
For example, without it, a collection could include two prices (eg 99.8 and 98.2) associated with the same stock (eg MSFT) and the pricing of the MSFT stock option would not be able to decide which of the two prices to use!

Market objects are needed as input in the pricing of
Tradable and the valuation of Quotable objects as they carry the required market data.
In particular, the
Price and Value functions search inside the provided Market object to retrieve any required data, such as discount factors, quoted prices or historical data.
In some sense, the Market input to those functions, may be considered as the most "important" input, since it represents "objective" information, as opposed to the
Model input which represents "subjective" information.