Go to Deriscope's documentation start page
ModelThis type serves to hold everything that can be seen as "subjective", i.e. information that can be potentially disputed.
In effect a Model object just holds a set of assumptions. Such assumptions are, for example, an assumed linear interpolation of zero rates or the gaussian dynamics of some stock price.
It is a necessary input to the Price and Value functions of Tradable and Quotable objects respectively.
The latter inspires a more precise definition of the Model type: A Model object contains that part of the input to the Value function that is neither a Date nor a Market.
In the Deriscope framework, every possible Deriscope Type is allowed to have a corresponding Model. Thus we can speak of a Model[Vanilla Option] which is a Model qualifying the Vanilla Option type.
Deriscope discourages the creation of Model types that do not directly correspond to some specific non-Model type.