<?xml version="1.0"?>
<PricingEngines>
  <Product type="ScriptedTrade">
    <Model>Generic</Model>
    <ModelParameters>
      <Parameter name="Model">GaussianCam</Parameter>
      <Parameter name="BaseCcy">USD</Parameter>
      <Parameter name="EnforceBaseCcy">false</Parameter>
      <Parameter name="GridCoarsening">3M(1W),1Y(1M),5Y(3M),10Y(1Y),50Y(5Y)</Parameter>
      <Parameter name="IrReversion_EUR">0.01</Parameter>
      <Parameter name="IrReversion_USD">0.01</Parameter>
      <Parameter name="IrReversion_GBP">0.015</Parameter>
      <Parameter name="FullDynamicFx">true</Parameter>
      <Parameter name="FullDynamicIr">true</Parameter>
      <!-- DK or JY -->
      <Parameter name="InfModelType">JY</Parameter>
      <!-- explicit overwrite of cam correlations -->
      <Parameter name="Correlation_IR:GBP_INF:UKRPI:0">0.8</Parameter>
      <Parameter name="Correlation_IR:GBP_INF:UKRPI:1">0.6</Parameter>
      <Parameter name="Correlation_INF:UKRPI:0_INF:UKRPI:1">0.3</Parameter>
      <!-- real to nominal rate vol ratio in jy model -->
      <Parameter name="InfJyRealToNominalVolRatio">0.6</Parameter>
    </ModelParameters>
    <Engine>Generic</Engine>
    <EngineParameters>
      <Parameter name="Engine">MC</Parameter>
      <Parameter name="Samples">10000</Parameter>
      <Parameter name="RegressionOrder">4</Parameter>
      <Parameter name="TimeStepsPerYear">24</Parameter>
      <Parameter name="Interactive">false</Parameter>
      <Parameter name="BootstrapTolerance">1.0</Parameter>
      <Parameter name="ZeroVolatility">false</Parameter>
      <Parameter name="RegressionOrder">4</Parameter>
      <Parameter name="SequenceType">SobolBrownianBridge</Parameter>
      <Parameter name="TrainingSequenceType">SobolBrownianBridge</Parameter>
      <Parameter name="PolynomType">Monomial</Parameter>
      <Parameter name="SobolOrdering">Steps</Parameter>
      <Parameter name="TrainingSamples">10000</Parameter>
      <Parameter name="TrainingSeed">42</Parameter>
    </EngineParameters>
  </Product>
  <Product type="FxEuropeanBarrierOption">
    <Model>ScriptedTrade</Model>
    <ModelParameters />
    <Engine>ScriptedTrade</Engine>
    <EngineParameters />
  </Product>
  <Product type="FxBarrierOption">
    <Model>ScriptedTrade</Model>
    <ModelParameters />
    <Engine>ScriptedTrade</Engine>
    <EngineParameters />
  </Product>
  <Product type="FxOption">
    <Model>CrossAssetModel</Model>
    <ModelParameters/>
    <Engine>AMC</Engine>
     <EngineParameters>
      <Parameter name="Training.Sequence">SobolBrownianBridge</Parameter>
      <Parameter name="Training.Seed">42</Parameter>
      <Parameter name="Training.Samples">10000</Parameter>
      <Parameter name="Pricing.Sequence">SobolBrownianBridge</Parameter>
      <Parameter name="Pricing.Seed">17</Parameter>
      <Parameter name="Pricing.Samples">0</Parameter>
      <Parameter name="Training.BasisFunction">Monomial</Parameter>
      <Parameter name="Training.BasisFunctionOrder">4</Parameter>
      <Parameter name="BrownianBridgeOrdering">Steps</Parameter>
      <Parameter name="SobolDirectionIntegers">JoeKuoD7</Parameter>
      <Parameter name="MinObsDate">true</Parameter>
      <Parameter name="RegressionOnExerciseOnly">true</Parameter>
    </EngineParameters>
  </Product>
  <Product type="Swap">
    <Model>CrossAssetModel</Model>
    <ModelParameters/>
    <Engine>AMC</Engine>
    <EngineParameters>
      <Parameter name="Training.Sequence">MersenneTwisterAntithetic</Parameter>
      <Parameter name="Training.Seed">42</Parameter>
      <Parameter name="Training.Samples">10000</Parameter>
      <Parameter name="Pricing.Sequence">SobolBrownianBridge</Parameter>
      <Parameter name="Pricing.Seed">17</Parameter>
      <Parameter name="Pricing.Samples">0</Parameter>
      <Parameter name="Training.BasisFunction">Monomial</Parameter>
      <Parameter name="Training.BasisFunctionOrder">6</Parameter>
      <Parameter name="BrownianBridgeOrdering">Steps</Parameter>
      <Parameter name="SobolDirectionIntegers">JoeKuoD7</Parameter>
      <Parameter name="MinObsDate">true</Parameter>
      <Parameter name="RegressionOnExerciseOnly">false</Parameter>
      <Parameter name="RegressorModel">Lagged</Parameter>
      <Parameter name="CashflowGeneration.OnCpnMaxSimTimes">32</Parameter>
      <Parameter name="CashflowGeneration.OnCpnAddSimTimesCutoff">1Y</Parameter>
      <Parameter name="Regression.MaxSimTimesIR">8</Parameter>
      <Parameter name="Regression.VarGroupMode">Trivial</Parameter>
    </EngineParameters>
  </Product>
</PricingEngines>
