com.quantarray.anaheim.finance.Value.scala Maven / Gradle / Ivy
The newest version!
package com.quantarray.anaheim.finance
import scala.annotation.implicitNotFound
/**
* Value type class.
*
* @tparam T Trade type.
* @tparam I Instrument type.
* @tparam M Market type.
* @tparam P Parameters type, which, for example, can be valuation instructions.
* @tparam V Value type, e.g. Double.
*/
@implicitNotFound("Cannot find Value type that computes value for Trade ${T}, Instrument ${I}, Market ${M} and Parameters ${P}.")
trait Value[T, I, M, P, V] {
def apply(trade: T, instrument: I, market: M, parameters: P): V
}