BasketBlackScholes
Modelo de carteira para calcular os valores dos gregos pela fórmula Black-Scholes.
Herda de: BlackScholes
Construtores
public BasketBlackScholes(IMarketDataProvider dataProvider, IPositionProvider positionProvider, DateTime? expirationTime)
basketBlackScholes = BasketBlackScholes(dataProvider, positionProvider, expirationTime)
Inicializa uma nova instância do BasketBlackScholes.
- dataProvider
- O fornecedor de dados de mercado.
- positionProvider
- O fornecedor de cargos.
- expirationTime
- Opções explícitas momento de expiração para toda a cesta. Se null, as configurações próprias dos modelos são usadas.
public BasketBlackScholes(Security underlyingAsset, IMarketDataProvider dataProvider, IPositionProvider positionProvider, DateTime? expirationTime)
basketBlackScholes = BasketBlackScholes(underlyingAsset, dataProvider, positionProvider, expirationTime)
Inicializa uma nova instância do BasketBlackScholes com base explícita.
- underlyingAsset
- - Um activo subjacente.
- dataProvider
- O fornecedor de dados de mercado.
- positionProvider
- O fornecedor de cargos.
- expirationTime
- Opções explícitas momento de expiração para todo o cesto.
Propriedades
public override DateTime? ExpirationTime { get; set; }
value = basketBlackScholes.ExpirationTime
basketBlackScholes.ExpirationTime = value
Explicit expiration moment. If null, ExpiryDate is used when available: with its time of day, or at the board's expiry time for a date alone.
public IInnerModelList InnerModels { get; }
value = basketBlackScholes.InnerModels
Informação sobre opções.
public override Security Option { get; }
value = basketBlackScholes.Option
Contrato de opções.
public IPositionProvider PositionProvider { get; set; }
value = basketBlackScholes.PositionProvider
basketBlackScholes.PositionProvider = value
O fornecedor de cargos.
public override int RoundDecimals { set; }
basketBlackScholes.RoundDecimals = value
O número de casas decimais nos valores calculados. O valor por omissão é - 1, o que significa que não há arredondamentos de valores.
public override Security UnderlyingAsset { get; }
value = basketBlackScholes.UnderlyingAsset
- Um activo subjacente.
Métodos
public override decimal? Delta(DateTime currentTime, decimal? deviation, decimal? assetPrice)
result = basketBlackScholes.Delta(currentTime, deviation, assetPrice)
Para calcular a opção delta.
- currentTime
- A hora atual.
- deviation
- Desvio padrão.
- assetPrice
- - O preço dos activos subjacentes.
Retorna: A opção delta. Se o valor é igual a , então o cálculo de valor atualmente é impossível.
public override decimal? Gamma(DateTime currentTime, decimal? deviation, decimal? assetPrice)
result = basketBlackScholes.Gamma(currentTime, deviation, assetPrice)
Para calcular a opção gama.
- currentTime
- A hora atual.
- deviation
- Desvio padrão.
- assetPrice
- - O preço dos activos subjacentes.
Retorna: A opção gama. Se o valor é igual a , então o cálculo de valor atualmente é impossível.
public override double? GetExpirationTimeLine(DateTime currentTime)
result = basketBlackScholes.GetExpirationTimeLine(currentTime)
The time before expiration calculation.
- currentTime
- The current time.
Retorna: The time remaining until expiration. If the value is equal to , then the value calculation currently is impossible.
public override decimal? ImpliedVolatility(DateTime currentTime, decimal premium, decimal? assetPrice)
result = basketBlackScholes.ImpliedVolatility(currentTime, premium, assetPrice)
To calculate the implied volatility.
- currentTime
- The current time.
- premium
- The option premium.
- assetPrice
- Underlying asset price.
Retorna: The implied volatility. If the value is equal to , then the value calculation currently is impossible.
public override decimal? Premium(DateTime currentTime, decimal? deviation, decimal? assetPrice)
result = basketBlackScholes.Premium(currentTime, deviation, assetPrice)
Para calcular o prémio de opção.
- currentTime
- A hora atual.
- deviation
- Desvio padrão.
- assetPrice
- - O preço dos activos subjacentes.
Retorna: O prémio de opção. Se o valor for igual a , então o cálculo de valor atualmente é impossível.
private decimal? ProcessOptions(Func<BlackScholes, decimal?> func)
result = basketBlackScholes.ProcessOptions(func)
To sum a value over the options of the basket, each weighted by the position in it.
- func
- The value of one option.
Retorna: The sum; when an option the book holds cannot be valued, for the sum of the others is not the book's.
public override decimal? Rho(DateTime currentTime, decimal? deviation, decimal? assetPrice)
result = basketBlackScholes.Rho(currentTime, deviation, assetPrice)
Para calcular a opção rho.
- currentTime
- A hora atual.
- deviation
- Desvio padrão.
- assetPrice
- - O preço dos activos subjacentes.
Retorna: A opção rho. Se o valor é igual a , então o cálculo de valor atualmente é impossível.
public override decimal? Theta(DateTime currentTime, decimal? deviation, decimal? assetPrice)
result = basketBlackScholes.Theta(currentTime, deviation, assetPrice)
Para calcular a opção theta.
- currentTime
- A hora atual.
- deviation
- Desvio padrão.
- assetPrice
- - O preço dos activos subjacentes.
Retorna: A opção theta. Se o valor for igual a , então o cálculo de valor atualmente é impossível.
public override decimal? Vega(DateTime currentTime, decimal? deviation, decimal? assetPrice)
result = basketBlackScholes.Vega(currentTime, deviation, assetPrice)
Para calcular a opção vega.
- currentTime
- A hora atual.
- deviation
- Desvio padrão.
- assetPrice
- - O preço dos activos subjacentes.
Retorna: A opção vega. Se o valor é igual a , então o cálculo de valor atualmente é impossível.