Quotable is an of with functions , direct subtypes and keys that represents the parent of any that describes a financial variable.
Any Quotable can be in principle evaluated at any time provided sufficient market and model information is available.
All Quotable objects contain the function .
Inversely if a type contains the function Value then it must be a subtype of Quotable.
Examples of quotables (i.e. types deriving from Quotable) are: , , etc.
Note that just as a is "pricable" but itself does not contain the associated "price", similarly a Quotable is "valuable" but itself does not contain the associated "value". The "value" is calculated at run time by means of the function Value.
For example a object does not contain the actual "rate value" (e.g. 4%).
It only contains the structural definitions such as Maturity, Frequency, Currency, Daycounts etc.
The "value" (i.e. the associated deposit rate number) can be calculated at run time, if sufficient interest rate market data and modeling assumptions are provided.
Interestingly the "value" that can be assigned to a particular Quotable may not be just a single number.
A Quotable such as Ibor Rate expects a single number (such as .04) as "value".
On the other hand the Quotable type Discount Factor Group expects a whole curve (which is mathematically equivalent to an infinite dimensional vector) as associated "value".
Often when the observation date lies in the future, the associated "value" is a whole probability distribution (referred as in Deriscope).