Refactor EquityOptionFunction to allow non-trivial scenarios. Todo - ShiftFunctions for EOF's requirements