73 throw new InvalidOperationException($
"{nameof(Expiration)} is not valid for underlying symbols: {Symbol}");
89 throw new InvalidOperationException($
"{nameof(Strike)} is not valid for underlying symbols: {Symbol}");
105 throw new InvalidOperationException($
"{nameof(Right)} is not valid for underlying symbols: {Symbol}");
155 if (ReferenceEquals(
null, obj))
160 if (obj.GetType() != GetType())
185 return $
"{Quantity} {Right.ToLower()}{s} on {Symbol.Underlying.Value} at ${Strike} expiring on {Expiration:yyyy-MM-dd}";
188 return $
"{Quantity} share{s} of {Symbol.Value}";
231 throw new InvalidOperationException(
"Unable to add OptionPosition instances with different symbols");
257 throw new InvalidOperationException(
"Unable to subtract OptionPosition instances with different symbols");
269 return Equals(left, right);
278 return !
Equals(left, right);