All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.finmath.smartcontract.product.xml.FxOption Maven / Gradle / Ivy

//
// This file was generated by the Eclipse Implementation of JAXB, v3.0.0 
// See https://eclipse-ee4j.github.io/jaxb-ri 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2024.12.05 at 10:53:57 AM CET 
//


package net.finmath.smartcontract.product.xml;

import java.math.BigDecimal;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlSchemaType;
import jakarta.xml.bind.annotation.XmlType;


/**
 * Describes an FX option with optional asian and barrier features.
 *             
 * 
 * 

Java class for FxOption complex type. * *

The following schema fragment specifies the expected content contained within this class. * *

 * <complexType name="FxOption">
 *   <complexContent>
 *     <extension base="{http://www.fpml.org/FpML-5/confirmation}Option">
 *       <sequence>
 *         <element name="effectiveDate" type="{http://www.fpml.org/FpML-5/confirmation}AdjustableOrRelativeDate" minOccurs="0"/>
 *         <element name="tenorPeriod" type="{http://www.fpml.org/FpML-5/confirmation}Period" minOccurs="0"/>
 *         <sequence>
 *           <choice>
 *             <element name="americanExercise" type="{http://www.fpml.org/FpML-5/confirmation}FxAmericanExercise"/>
 *             <element name="europeanExercise" type="{http://www.fpml.org/FpML-5/confirmation}FxEuropeanExercise"/>
 *           </choice>
 *           <element name="exerciseProcedure" type="{http://www.fpml.org/FpML-5/confirmation}ExerciseProcedure" minOccurs="0"/>
 *         </sequence>
 *         <sequence>
 *           <element name="putCurrencyAmount" type="{http://www.fpml.org/FpML-5/confirmation}NonNegativeMoney"/>
 *           <element name="callCurrencyAmount" type="{http://www.fpml.org/FpML-5/confirmation}NonNegativeMoney"/>
 *         </sequence>
 *         <element name="soldAs" type="{http://www.fpml.org/FpML-5/confirmation}PutCallEnum" minOccurs="0"/>
 *         <sequence>
 *           <element name="strike" type="{http://www.fpml.org/FpML-5/confirmation}FxStrikePrice"/>
 *           <element name="spotRate" type="{http://www.fpml.org/FpML-5/confirmation}PositiveDecimal" minOccurs="0"/>
 *         </sequence>
 *         <element name="features" type="{http://www.fpml.org/FpML-5/confirmation}FxOptionFeatures" minOccurs="0"/>
 *         <element name="premium" type="{http://www.fpml.org/FpML-5/confirmation}FxOptionPremium" minOccurs="0"/>
 *         <element name="cashSettlement" type="{http://www.fpml.org/FpML-5/confirmation}FxCashSettlement" minOccurs="0"/>
 *       </sequence>
 *     </extension>
 *   </complexContent>
 * </complexType>
 * 
* * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "FxOption", propOrder = { "effectiveDate", "tenorPeriod", "americanExercise", "europeanExercise", "exerciseProcedure", "putCurrencyAmount", "callCurrencyAmount", "soldAs", "strike", "spotRate", "features", "premium", "cashSettlement" }) public class FxOption extends Option { protected AdjustableOrRelativeDate effectiveDate; protected Period tenorPeriod; protected FxAmericanExercise americanExercise; protected FxEuropeanExercise europeanExercise; protected ExerciseProcedure exerciseProcedure; @XmlElement(required = true) protected NonNegativeMoney putCurrencyAmount; @XmlElement(required = true) protected NonNegativeMoney callCurrencyAmount; @XmlSchemaType(name = "token") protected PutCallEnum soldAs; @XmlElement(required = true) protected FxStrikePrice strike; protected BigDecimal spotRate; protected FxOptionFeatures features; protected FxOptionPremium premium; protected FxCashSettlement cashSettlement; /** * Gets the value of the effectiveDate property. * * @return * possible object is * {@link AdjustableOrRelativeDate } * */ public AdjustableOrRelativeDate getEffectiveDate() { return effectiveDate; } /** * Sets the value of the effectiveDate property. * * @param value * allowed object is * {@link AdjustableOrRelativeDate } * */ public void setEffectiveDate(AdjustableOrRelativeDate value) { this.effectiveDate = value; } /** * Gets the value of the tenorPeriod property. * * @return * possible object is * {@link Period } * */ public Period getTenorPeriod() { return tenorPeriod; } /** * Sets the value of the tenorPeriod property. * * @param value * allowed object is * {@link Period } * */ public void setTenorPeriod(Period value) { this.tenorPeriod = value; } /** * Gets the value of the americanExercise property. * * @return * possible object is * {@link FxAmericanExercise } * */ public FxAmericanExercise getAmericanExercise() { return americanExercise; } /** * Sets the value of the americanExercise property. * * @param value * allowed object is * {@link FxAmericanExercise } * */ public void setAmericanExercise(FxAmericanExercise value) { this.americanExercise = value; } /** * Gets the value of the europeanExercise property. * * @return * possible object is * {@link FxEuropeanExercise } * */ public FxEuropeanExercise getEuropeanExercise() { return europeanExercise; } /** * Sets the value of the europeanExercise property. * * @param value * allowed object is * {@link FxEuropeanExercise } * */ public void setEuropeanExercise(FxEuropeanExercise value) { this.europeanExercise = value; } /** * Gets the value of the exerciseProcedure property. * * @return * possible object is * {@link ExerciseProcedure } * */ public ExerciseProcedure getExerciseProcedure() { return exerciseProcedure; } /** * Sets the value of the exerciseProcedure property. * * @param value * allowed object is * {@link ExerciseProcedure } * */ public void setExerciseProcedure(ExerciseProcedure value) { this.exerciseProcedure = value; } /** * Gets the value of the putCurrencyAmount property. * * @return * possible object is * {@link NonNegativeMoney } * */ public NonNegativeMoney getPutCurrencyAmount() { return putCurrencyAmount; } /** * Sets the value of the putCurrencyAmount property. * * @param value * allowed object is * {@link NonNegativeMoney } * */ public void setPutCurrencyAmount(NonNegativeMoney value) { this.putCurrencyAmount = value; } /** * Gets the value of the callCurrencyAmount property. * * @return * possible object is * {@link NonNegativeMoney } * */ public NonNegativeMoney getCallCurrencyAmount() { return callCurrencyAmount; } /** * Sets the value of the callCurrencyAmount property. * * @param value * allowed object is * {@link NonNegativeMoney } * */ public void setCallCurrencyAmount(NonNegativeMoney value) { this.callCurrencyAmount = value; } /** * Gets the value of the soldAs property. * * @return * possible object is * {@link PutCallEnum } * */ public PutCallEnum getSoldAs() { return soldAs; } /** * Sets the value of the soldAs property. * * @param value * allowed object is * {@link PutCallEnum } * */ public void setSoldAs(PutCallEnum value) { this.soldAs = value; } /** * Gets the value of the strike property. * * @return * possible object is * {@link FxStrikePrice } * */ public FxStrikePrice getStrike() { return strike; } /** * Sets the value of the strike property. * * @param value * allowed object is * {@link FxStrikePrice } * */ public void setStrike(FxStrikePrice value) { this.strike = value; } /** * Gets the value of the spotRate property. * * @return * possible object is * {@link BigDecimal } * */ public BigDecimal getSpotRate() { return spotRate; } /** * Sets the value of the spotRate property. * * @param value * allowed object is * {@link BigDecimal } * */ public void setSpotRate(BigDecimal value) { this.spotRate = value; } /** * Gets the value of the features property. * * @return * possible object is * {@link FxOptionFeatures } * */ public FxOptionFeatures getFeatures() { return features; } /** * Sets the value of the features property. * * @param value * allowed object is * {@link FxOptionFeatures } * */ public void setFeatures(FxOptionFeatures value) { this.features = value; } /** * Gets the value of the premium property. * * @return * possible object is * {@link FxOptionPremium } * */ public FxOptionPremium getPremium() { return premium; } /** * Sets the value of the premium property. * * @param value * allowed object is * {@link FxOptionPremium } * */ public void setPremium(FxOptionPremium value) { this.premium = value; } /** * Gets the value of the cashSettlement property. * * @return * possible object is * {@link FxCashSettlement } * */ public FxCashSettlement getCashSettlement() { return cashSettlement; } /** * Sets the value of the cashSettlement property. * * @param value * allowed object is * {@link FxCashSettlement } * */ public void setCashSettlement(FxCashSettlement value) { this.cashSettlement = value; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy