DerivativesHelper
Erweiterungsklasse für Derivate.
Methoden
public static double D1(decimal assetPrice, decimal strike, decimal riskFree, decimal dividend, decimal deviation, double timeToExp)
result = DerivativesHelper.D1(assetPrice, strike, riskFree, dividend, deviation, timeToExp)
Zur Berechnung des Parameters d1 der Optionserfüllungswahrscheinlichkeitsschätzung.
- assetPrice
- Basiswert des Vermögens.
- strike
- Der Ausübungspreis.
- riskFree
- Der risikofreie Zinssatz.
- dividend
- Dividendenbetrag auf Aktien.
- deviation
- Standardabweichung.
- timeToExp
- Optionsperiode vor dem Ablauf.
Rückgabe: Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
public static double D2(double d1, decimal deviation, double timeToExp)
result = DerivativesHelper.D2(d1, deviation, timeToExp)
Zur Berechnung des Parameters d2 der Optionserfüllungswahrscheinlichkeitsschätzung.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
- deviation
- Standardabweichung.
- timeToExp
- Optionsperiode vor dem Ablauf.
Rückgabe: Der d2-Parameter der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
public static decimal Delta(OptionTypes optionType, decimal assetPrice, double d1)
result = DerivativesHelper.Delta(optionType, assetPrice, d1)
Um die Option Delta zu berechnen.
- optionType
- Art der Option.
- assetPrice
- Basiswert des Vermögens.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
Rückgabe: Option Delta.
public static double ExpRate(decimal riskFree, double timeToExp)
result = DerivativesHelper.ExpRate(riskFree, timeToExp)
Um den Zeitaussteller zu berechnen.
- riskFree
- Der risikofreie Zinssatz.
- timeToExp
- Optionsperiode vor dem Ablauf.
Rückgabe: Der Zeitaussteller.
public static IEnumerable<Security> Filter(IEnumerable<Security> options, decimal strike)
result = DerivativesHelper.Filter(options, strike)
Filtern von Optionen nach dem Streikstreik.
- options
- Optionen zu filtern.
- strike
- Der Ausübungspreis.
Rückgabe: Gefilterte Optionen.
public static IEnumerable<Security> Filter(IEnumerable<Security> options, OptionTypes type)
result = DerivativesHelper.Filter(options, type)
Filtern Sie Optionen nach dem Typ OptionType.
- options
- Optionen zu filtern.
- type
- Art der Option.
Rückgabe: Gefilterte Optionen.
public static IEnumerable<Security> Filter(IEnumerable<Security> securities, DateTime? expirationDate)
result = DerivativesHelper.Filter(securities, expirationDate)
Filtern Sie Instrumente nach dem Ablaufdatum ExpiryDate.
- securities
- Zu filternde Instrumente.
- expirationDate
- Das Ablaufdatum.
Rückgabe: Instrumente gefiltert.
public static IEnumerable<Security> FilterByUnderlying(IEnumerable<Security> securities, Security asset)
result = DerivativesHelper.FilterByUnderlying(securities, asset)
Filtern der Instrumente nach dem zugrunde liegenden Vermögenswert.
- securities
- Zu filternde Instrumente.
- asset
- Basiswert.
Rückgabe: Instrumente gefiltert.
public static decimal Gamma(decimal assetPrice, decimal deviation, double timeToExp, double d1)
result = DerivativesHelper.Gamma(assetPrice, deviation, timeToExp, d1)
Um die Option Gamma zu berechnen.
- assetPrice
- Basiswert des Vermögens.
- deviation
- Standardabweichung.
- timeToExp
- Optionsperiode vor dem Ablauf.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
Rückgabe: Option Gamma.
public static Security GetAsset(Security derivative, ISecurityProvider provider)
result = DerivativesHelper.GetAsset(derivative, provider)
Um den zugrunde liegenden Vermögenswert zu erhalten.
- derivative
- Das Derivat.
- provider
- Der Anbieter von Informationen über Instrumente.
Rückgabe: Basiswert.
public static IEnumerable<Security> GetAtTheMoney(Security underlyingAsset, ISecurityProvider securityProvider, decimal assetPrice)
result = DerivativesHelper.GetAtTheMoney(underlyingAsset, securityProvider, assetPrice)
Um an die Geldoptionen (ATM) zu kommen.
- underlyingAsset
- Basiswert.
- securityProvider
- Der Anbieter von Informationen über Instrumente.
- assetPrice
- Der Vermögenspreis.
Rückgabe: Bei den Geldoptionen.
public static IEnumerable<Security> GetAtTheMoney(Security underlyingAsset, IEnumerable<Security> allStrikes, decimal assetPrice)
result = DerivativesHelper.GetAtTheMoney(underlyingAsset, allStrikes, assetPrice)
Um an die Geldoptionen (ATM) zu kommen.
- underlyingAsset
- Basiswert.
- allStrikes
- Alle Streiks.
- assetPrice
- Der Vermögenspreis.
Rückgabe: Bei den Geldoptionen.
public static Security GetCall(Security future, ISecurityProvider provider, decimal strike, DateTime expirationDate)
result = DerivativesHelper.GetCall(future, provider, strike, expirationDate)
Um Call für die zugrunde liegenden Futures zu erhalten.
- future
- zugrunde liegende Futures.
- provider
- Der Anbieter von Informationen über Instrumente.
- strike
- Streik.
- expirationDate
- Datum des Optionsablaufs.
Rückgabe: Die Call Option.
public static Security GetCentralStrike(Security underlyingAsset, ISecurityProvider securityProvider, DateTime expirationDate, OptionTypes optionType, decimal assetPrice)
result = DerivativesHelper.GetCentralStrike(underlyingAsset, securityProvider, expirationDate, optionType, assetPrice)
Um den Hauptschlag zu bekommen.
- underlyingAsset
- Basiswert.
- securityProvider
- Der Anbieter von Informationen über Instrumente.
- expirationDate
- Optionsablaufdatum.
- optionType
- Art der Option.
- assetPrice
- Der aktuelle Marktpreis des Vermögenswerts, der zur Berechnung des Hauptstreiks verwendet wird.
Rückgabe: Der Hauptstreik.
public static Security GetCentralStrike(IEnumerable<Security> allStrikes, decimal assetPrice)
result = DerivativesHelper.GetCentralStrike(allStrikes, assetPrice)
Um den Hauptschlag zu bekommen.
- allStrikes
- Alle Streiks.
- assetPrice
- Der aktuelle Marktpreis des Vermögenswerts, der zur Berechnung des Hauptstreiks verwendet wird.
Rückgabe: Der Hauptschlag: Wenn es unmöglich ist, den aktuellen Marktpreis des Vermögenswertes zu erhalten, wird der zurückgegeben.
public static IEnumerable<Security> GetDerivatives(Security asset, ISecurityProvider provider, DateTime? expirationDate)
result = DerivativesHelper.GetDerivatives(asset, provider, expirationDate)
Um Derivate nach dem zugrunde liegenden Vermögenswert zu erhalten.
- asset
- Basiswert.
- provider
- Der Anbieter von Informationen über Instrumente.
- expirationDate
- Das Ablaufdatum.
Rückgabe: Die Liste der Derivate.
public static double? GetExpirationTimeLine(DateTime expirationTime, DateTime currentTime, TimeSpan timeLine)
result = DerivativesHelper.GetExpirationTimeLine(expirationTime, currentTime, timeLine)
Um die Optionsperiode vor dem Ablauf zu erhalten.
- expirationTime
- Option Ablaufzeit.
- currentTime
- Die aktuelle Zeit.
- timeLine
- Die Länge der gesamten Periode.
Rückgabe: Optionsperiode vor Ablauf. Wenn der Wert gleich , dann ist die Wertberechnung derzeit unmöglich.
public static double? GetExpirationTimeLine(DateTime expirationTime, DateTime currentTime)
result = DerivativesHelper.GetExpirationTimeLine(expirationTime, currentTime)
Um die Optionsperiode vor dem Ablauf zu erhalten.
- expirationTime
- Option Ablaufzeit.
- currentTime
- Die aktuelle Zeit.
Rückgabe: Optionsperiode vor Ablauf. Wenn der Wert gleich , dann ist die Wertberechnung derzeit unmöglich.
public static SecurityMessage GetFutureInfo(string futureName, string optionCode, ExchangeBoard board)
result = DerivativesHelper.GetFutureInfo(futureName, optionCode, board)
Um die Informationen über die Futures von seinem Namen (unterlegener Vermögenswert, Ablaufdatum usw.) zu erhalten.
- futureName
- Der Futures-Name.
- optionCode
- Optionscode.
- board
- Board-Info.
Rückgabe: Informationen über Futures.
public static IEnumerable<Security> GetInTheMoney(Security underlyingAsset, ISecurityProvider securityProvider, decimal assetPrice)
result = DerivativesHelper.GetInTheMoney(underlyingAsset, securityProvider, assetPrice)
Um in die Geldoptionen (ITM) zu kommen.
- underlyingAsset
- Basiswert.
- securityProvider
- Der Anbieter von Informationen über Instrumente.
- assetPrice
- Der Vermögenspreis.
Rückgabe: In den Geldoptionen.
public static IEnumerable<Security> GetInTheMoney(Security underlyingAsset, IEnumerable<Security> allStrikes, decimal assetPrice)
result = DerivativesHelper.GetInTheMoney(underlyingAsset, allStrikes, assetPrice)
Um in die Geldoptionen (ITM) zu kommen.
- underlyingAsset
- Basiswert.
- allStrikes
- Alle Streiks.
- assetPrice
- Der Vermögenspreis.
Rückgabe: In den Geldoptionen.
public static decimal GetIntrinsicValue(Security option, decimal assetPrice)
result = DerivativesHelper.GetIntrinsicValue(option, assetPrice)
Um den internen Optionswert zu erhalten.
- option
- Optionskontrakt.
- assetPrice
- Der zugrunde liegende Vermögenspreis.
Rückgabe: Der interne Wert: Wenn es unmöglich ist, den aktuellen Marktpreis des Vermögenswerts zu erhalten, wird der zurückgegeben.
public static Security GetOppositeOption(Security option, ISecurityProvider provider)
result = DerivativesHelper.GetOppositeOption(option, provider)
Um die entgegengesetzte Option zu erhalten (für Call, um Put zu erhalten, für Put, um Call zu erhalten).
- option
- Optionskontrakt.
- provider
- Der Anbieter von Informationen über Instrumente.
Rückgabe: Die entgegengesetzte Option.
public static Security GetOption(Security future, ISecurityProvider provider, decimal strike, DateTime expirationDate, OptionTypes optionType)
result = DerivativesHelper.GetOption(future, provider, strike, expirationDate, optionType)
Um eine Option für die zugrunde liegenden Futures zu erhalten.
- future
- zugrunde liegende Futures.
- provider
- Der Anbieter von Informationen über Instrumente.
- strike
- Streik.
- expirationDate
- Optionsablaufdatum.
- optionType
- Art der Option.
Rückgabe: Optionskontrakt.
public static Security GetOptionInfo(string optionName, ExchangeBoard board)
result = DerivativesHelper.GetOptionInfo(optionName, board)
Um die Informationen über die Option von ihrem Namen zu erhalten (unterlegener Vermögenswert, Streik, Ablaufdatum usw.).
- optionName
- Optionsname.
- board
- Board-Info.
Rückgabe: Informationen über die Option.
public static IEnumerable<Security> GetOutOfTheMoney(Security underlyingAsset, ISecurityProvider securityProvider, decimal assetPrice)
result = DerivativesHelper.GetOutOfTheMoney(underlyingAsset, securityProvider, assetPrice)
Aus dem Geld Optionen (OTM) zu bekommen.
- underlyingAsset
- Basiswert.
- securityProvider
- Der Anbieter von Informationen über Instrumente.
- assetPrice
- Der Vermögenspreis.
Rückgabe: Aus den Geldoptionen.
public static IEnumerable<Security> GetOutOfTheMoney(Security underlyingAsset, IEnumerable<Security> allStrikes, decimal assetPrice)
result = DerivativesHelper.GetOutOfTheMoney(underlyingAsset, allStrikes, assetPrice)
Aus dem Geld Optionen (OTM) zu bekommen.
- underlyingAsset
- Basiswert.
- allStrikes
- Alle Streiks.
- assetPrice
- Der Vermögenspreis.
Rückgabe: Aus den Geldoptionen.
public static Security GetPut(Security future, ISecurityProvider provider, decimal strike, DateTime expirationDate)
result = DerivativesHelper.GetPut(future, provider, strike, expirationDate)
Put für die zugrunde liegenden Futures zu bekommen.
- future
- zugrunde liegende Futures.
- provider
- Der Anbieter von Informationen über Instrumente.
- strike
- Streik.
- expirationDate
- Datum des Optionsablaufs.
Rückgabe: Die Put Option.
public static decimal GetStrikeStep(Security underlyingAsset, ISecurityProvider provider, DateTime? expirationDate)
result = DerivativesHelper.GetStrikeStep(underlyingAsset, provider, expirationDate)
Um die Strike Step Size zu erhalten.
- provider
- Der Anbieter von Informationen über Instrumente.
- underlyingAsset
- Basiswert.
- expirationDate
- Das Ablaufdatum der Optionen (um eine bestimmte Serie anzugeben).
Rückgabe: Die Schlagschrittgröße.
public static decimal GetTimeValue(Security option, decimal currentPrice, decimal assetPrice)
result = DerivativesHelper.GetTimeValue(option, currentPrice, assetPrice)
Um den zeitgesteuerten Optionswert zu erhalten.
- option
- Optionskontrakt.
- currentPrice
- Vertragspreis.
- assetPrice
- Der zugrunde liegende Vermögenspreis.
Rückgabe: Der zeitliche Wert.
public static Security GetUnderlyingAsset(Security derivative, ISecurityProvider provider)
result = DerivativesHelper.GetUnderlyingAsset(derivative, provider)
Um den Basiswert durch das Derivat zu erhalten.
- derivative
- Das Derivat.
- provider
- Der Anbieter von Informationen über Instrumente.
Rückgabe: Basiswert.
public static QuoteChangeMessage ImpliedVolatility(IOrderBookMessage depth, ISecurityProvider securityProvider, IMarketDataProvider dataProvider, DateTime currentTime, decimal riskFree, decimal dividend)
result = DerivativesHelper.ImpliedVolatility(depth, securityProvider, dataProvider, currentTime, riskFree, dividend)
Um das Volatilitäts-Orderbuch aus dem üblichen Orderbuch zu erstellen.
- depth
- Die Orderbuch-Quotes werden in Volatilitäts-Quotes geändert.
- securityProvider
- Der Anbieter von Informationen über Instrumente.
- dataProvider
- Der Marktdatenanbieter.
- currentTime
- Die aktuelle Zeit.
- riskFree
- Der risikofreie Zinssatz.
- dividend
- Dividendenbetrag auf Aktien.
Rückgabe: Die Volatilität des Orderbuchs.
public static QuoteChangeMessage ImpliedVolatility(IOrderBookMessage depth, IBlackScholes model, DateTime currentTime)
result = DerivativesHelper.ImpliedVolatility(depth, model, currentTime)
Um das Volatilitäts-Orderbuch aus dem üblichen Orderbuch zu erstellen.
- depth
- Die Orderbuch-Quotes werden in Volatilitäts-Quotes geändert.
- model
- Das Modell zur Berechnung der griechischen Werte nach der Black-Scholes-Formel.
- currentTime
- Die aktuelle Zeit.
Rückgabe: Die Volatilität des Orderbuchs.
public static decimal? ImpliedVolatility(decimal premium, Func<decimal, decimal?> getPremium)
result = DerivativesHelper.ImpliedVolatility(premium, getPremium)
Um die implizite Volatilität zu berechnen.
- premium
- Optionsprämie.
- getPremium
- Um die Prämie nach Volatilität zu berechnen.
Rückgabe: Wenn der Wert gleich , dann ist die Wertberechnung derzeit unmöglich.
public static OptionTypes Invert(OptionTypes type)
result = DerivativesHelper.Invert(type)
Um den Optionstyp für entgegengesetzt zu ändern.
- type
- Der Anfangswert.
Rückgabe: Der entgegengesetzte Wert.
public static bool IsExpired(Security security, IExchangeInfoProvider exchangeInfoProvider, DateTime currentTime)
result = DerivativesHelper.IsExpired(security, exchangeInfoProvider, currentTime)
Um zu überprüfen, ob das Instrument die Aktion beendet hat.
- security
- Finanzinstrument.
- exchangeInfoProvider
- Börsen und Handelsbörsen Anbieter.
- currentTime
- Die aktuelle Zeit.
Rückgabe: wenn das Instrument seine Tätigkeit beendet hat.
public static decimal Premium(OptionTypes optionType, decimal strike, decimal assetPrice, decimal riskFree, decimal dividend, decimal deviation, double timeToExp, double d1)
result = DerivativesHelper.Premium(optionType, strike, assetPrice, riskFree, dividend, deviation, timeToExp, d1)
Um die Optionsprämie zu berechnen.
- optionType
- Art der Option.
- strike
- Der Ausübungspreis.
- assetPrice
- Basiswert des Vermögens.
- riskFree
- Der risikofreie Zinssatz.
- dividend
- Dividendenbetrag auf Aktien.
- deviation
- Standardabweichung.
- timeToExp
- Optionsperiode vor dem Ablauf.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
Rückgabe: Optionsprämie.
public static decimal Rho(OptionTypes optionType, decimal strike, decimal assetPrice, decimal riskFree, decimal deviation, double timeToExp, double d1)
result = DerivativesHelper.Rho(optionType, strike, assetPrice, riskFree, deviation, timeToExp, d1)
Um die Option rho zu berechnen.
- optionType
- Art der Option.
- strike
- Der Ausübungspreis.
- assetPrice
- Basiswert des Vermögens.
- riskFree
- Der risikofreie Zinssatz.
- deviation
- Standardabweichung.
- timeToExp
- Optionsperiode vor dem Ablauf.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
Rückgabe: Option rho.
public static decimal Theta(OptionTypes optionType, decimal strike, decimal assetPrice, decimal riskFree, decimal deviation, double timeToExp, double d1, decimal daysInYear)
result = DerivativesHelper.Theta(optionType, strike, assetPrice, riskFree, deviation, timeToExp, d1, daysInYear)
Um die Option Theta zu berechnen.
- optionType
- Art der Option.
- strike
- Der Ausübungspreis.
- assetPrice
- Basiswert des Vermögens.
- riskFree
- Der risikofreie Zinssatz.
- deviation
- Standardabweichung.
- timeToExp
- Optionsperiode vor dem Ablauf.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
- daysInYear
- Tage pro Jahr.
Rückgabe: Option Theta.
public static decimal Vega(decimal assetPrice, double timeToExp, double d1)
result = DerivativesHelper.Vega(assetPrice, timeToExp, d1)
Um die Option vega zu berechnen.
- assetPrice
- Basiswert des Vermögens.
- timeToExp
- Optionsperiode vor dem Ablauf.
- d1
- Der Parameter d1 der Optionserfüllungswahrscheinlichkeit, die geschätzt wird.
Rückgabe: Option vega.