/// <summary> /// The margin that must be held in order to increase the position by the provided quantity /// </summary> /// <param name="parameters">An object containing the security and quantity of shares</param> /// <returns>The initial margin required for the option (i.e. the equity required to enter a position for this option)</returns> /// <remarks> /// We fix the option to 1.5x the initial because of its close coupling with the underlying. /// The option's contract multiplier is 1x, but might be more sensitive to volatility shocks in the long /// run when it comes to calculating the different market scenarios attempting to simulate VaR, resulting /// in a margin greater than the underlying's margin. /// </remarks> public override InitialMargin GetInitialMarginRequirement(InitialMarginParameters parameters) { var underlyingRequirement = base.GetInitialMarginRequirement(parameters.ForUnderlying()).Value; var positionSide = parameters.Quantity > 0 ? PositionSide.Long : PositionSide.Short; return(new InitialMargin(GetMarginRequirement(_futureOption, underlyingRequirement, positionSide))); }
/// <summary> /// The margin that must be held in order to increase the position by the provided quantity /// </summary> /// <param name="parameters">An object containing the security and quantity of shares</param> /// <returns>The initial margin required for the option (i.e. the equity required to enter a position for this option)</returns> /// <remarks> /// We fix the option to 1.5x the initial because of its close coupling with the underlying. /// The option's contract multiplier is 1x, but might be more sensitive to volatility shocks in the long /// run when it comes to calculating the different market scenarios attempting to simulate VaR, resulting /// in a margin greater than the underlying's margin. /// </remarks> public override InitialMargin GetInitialMarginRequirement(InitialMarginParameters parameters) { return(new InitialMargin(FixedMarginMultiplier * base.GetInitialMarginRequirement(parameters.ForUnderlying()).Value )); }