/// <summary> /// Initializes a new instance of the <see cref="PricingOptions" /> class. /// </summary> /// <param name="modelSelection">modelSelection.</param> /// <param name="useInstrumentTypeToDeterminePricer">If true then use the instrument type to set the default instrument pricer This applies where no more specific set of overrides are provided on a per-vendor and instrument basis..</param> /// <param name="allowAnyInstrumentsWithSecUidToPriceOffLookup">By default, one would not expect to price and exotic instrument, i.e. an instrument with a complicated instrument definition simply through looking up a price as there should be a better way of evaluating it. To override that behaviour and allow lookup for a price from the instrument identifier(s), set this to true..</param> /// <param name="allowPartiallySuccessfulEvaluation">If true then a failure in task evaluation doesn't cause overall failure. results will be returned where they succeeded and annotation elsewhere.</param> /// <param name="produceSeparateResultForLinearOtcLegs">If true (default), when pricing an Fx-Forward or Interest Rate Swap, Future and other linearly separable products, product two results, one for each leg rather than a single line result with the amalgamated/summed pv from both legs..</param> public PricingOptions(ModelSelection modelSelection = default(ModelSelection), bool?useInstrumentTypeToDeterminePricer = default(bool?), bool?allowAnyInstrumentsWithSecUidToPriceOffLookup = default(bool?), bool?allowPartiallySuccessfulEvaluation = default(bool?), bool?produceSeparateResultForLinearOtcLegs = default(bool?)) { this.ModelSelection = modelSelection; this.UseInstrumentTypeToDeterminePricer = useInstrumentTypeToDeterminePricer; this.AllowAnyInstrumentsWithSecUidToPriceOffLookup = allowAnyInstrumentsWithSecUidToPriceOffLookup; this.AllowPartiallySuccessfulEvaluation = allowPartiallySuccessfulEvaluation; this.ProduceSeparateResultForLinearOtcLegs = produceSeparateResultForLinearOtcLegs; }
/// <summary> /// Initializes a new instance of the <see cref="PricingOptions" /> class. /// </summary> /// <param name="modelSelection">modelSelection.</param> /// <param name="useInstrumentTypeToDeterminePricer">If true then use the instrument type to set the default instrument pricer This applies where no more specific set of overrides are provided on a per-vendor and instrument basis..</param> /// <param name="allowAnyInstrumentsWithSecUidToPriceOffLookup">By default, one would not expect to price and exotic instrument, i.e. an instrument with a complicated instrument definition simply through looking up a price as there should be a better way of evaluating it. To override that behaviour and allow lookup for a price from the instrument identifier(s), set this to true..</param> /// <param name="allowPartiallySuccessfulEvaluation">If true then a failure in task evaluation doesn't cause overall failure. results will be returned where they succeeded and annotation elsewhere.</param> /// <param name="produceSeparateResultForLinearOtcLegs">If true (default), when pricing an Fx-Forward or Interest Rate Swap, Future and other linearly separable products, product two results, one for each leg rather than a single line result with the amalgamated/summed pv from both legs..</param> /// <param name="enableUseOfCachedUnitResults">If true, when pricing using a model or for an instrument that supports use of intermediate cached-results, use them. Default is that this caching is turned off..</param> /// <param name="windowValuationOnInstrumentStartEnd">If true, when valuing an instrument outside the period where it is 'alive' (the start-maturity window) it will return a valuation of zero.</param> /// <param name="removeContingentCashflowsInPaymentDiary">When creating a payment diary, should contingent cash payments (e.g. from exercise of a swaption into a swap) be included or not. i.e. Is exercise or default being assumed to happen or not..</param> /// <param name="useChildSubHoldingKeysForPortfolioExpansion">Should fund constituents inherit subholding keys from the parent subholding keyb.</param> public PricingOptions(ModelSelection modelSelection = default(ModelSelection), bool?useInstrumentTypeToDeterminePricer = default(bool?), bool?allowAnyInstrumentsWithSecUidToPriceOffLookup = default(bool?), bool?allowPartiallySuccessfulEvaluation = default(bool?), bool?produceSeparateResultForLinearOtcLegs = default(bool?), bool?enableUseOfCachedUnitResults = default(bool?), bool?windowValuationOnInstrumentStartEnd = default(bool?), bool?removeContingentCashflowsInPaymentDiary = default(bool?), bool?useChildSubHoldingKeysForPortfolioExpansion = default(bool?)) { this.ModelSelection = modelSelection; this.UseInstrumentTypeToDeterminePricer = useInstrumentTypeToDeterminePricer; this.AllowAnyInstrumentsWithSecUidToPriceOffLookup = allowAnyInstrumentsWithSecUidToPriceOffLookup; this.AllowPartiallySuccessfulEvaluation = allowPartiallySuccessfulEvaluation; this.ProduceSeparateResultForLinearOtcLegs = produceSeparateResultForLinearOtcLegs; this.EnableUseOfCachedUnitResults = enableUseOfCachedUnitResults; this.WindowValuationOnInstrumentStartEnd = windowValuationOnInstrumentStartEnd; this.RemoveContingentCashflowsInPaymentDiary = removeContingentCashflowsInPaymentDiary; this.UseChildSubHoldingKeysForPortfolioExpansion = useChildSubHoldingKeysForPortfolioExpansion; }