net.finmath.smartcontract.product.xml.NotionalStepRule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of finmath-smart-derivative-contract Show documentation
Show all versions of finmath-smart-derivative-contract Show documentation
Project to support the implementation a of smart derivative contract.
//
// 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 javax.xml.datatype.XMLGregorianCalendar;
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;
/**
* A type defining a parametric representation of the notional step schedule,
* i.e. parameters used to generate the notional balance on each step date. The step change in notional can
* be expressed in terms of either a fixed amount or as a percentage of either the initial notional or
* previous notional amount. This parametric representation is intended to cover the more common
* amortizing/accreting.
*
*
* Java class for NotionalStepRule complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="NotionalStepRule">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="calculationPeriodDatesReference" type="{http://www.fpml.org/FpML-5/confirmation}CalculationPeriodDatesReference"/>
* <element name="stepFrequency" type="{http://www.fpml.org/FpML-5/confirmation}Frequency"/>
* <element name="firstNotionalStepDate" type="{http://www.w3.org/2001/XMLSchema}date"/>
* <element name="lastNotionalStepDate" type="{http://www.w3.org/2001/XMLSchema}date"/>
* <choice>
* <element name="notionalStepAmount" type="{http://www.w3.org/2001/XMLSchema}decimal"/>
* <sequence>
* <element name="notionalStepRate" type="{http://www.w3.org/2001/XMLSchema}decimal"/>
* <element name="stepRelativeTo" type="{http://www.fpml.org/FpML-5/confirmation}StepRelativeToEnum"/>
* </sequence>
* </choice>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "NotionalStepRule", propOrder = {
"calculationPeriodDatesReference",
"stepFrequency",
"firstNotionalStepDate",
"lastNotionalStepDate",
"notionalStepAmount",
"notionalStepRate",
"stepRelativeTo"
})
public class NotionalStepRule {
@XmlElement(required = true)
protected CalculationPeriodDatesReference calculationPeriodDatesReference;
@XmlElement(required = true)
protected Frequency stepFrequency;
@XmlElement(required = true)
@XmlSchemaType(name = "date")
protected XMLGregorianCalendar firstNotionalStepDate;
@XmlElement(required = true)
@XmlSchemaType(name = "date")
protected XMLGregorianCalendar lastNotionalStepDate;
protected BigDecimal notionalStepAmount;
protected BigDecimal notionalStepRate;
@XmlSchemaType(name = "token")
protected StepRelativeToEnum stepRelativeTo;
/**
* Gets the value of the calculationPeriodDatesReference property.
*
* @return
* possible object is
* {@link CalculationPeriodDatesReference }
*
*/
public CalculationPeriodDatesReference getCalculationPeriodDatesReference() {
return calculationPeriodDatesReference;
}
/**
* Sets the value of the calculationPeriodDatesReference property.
*
* @param value
* allowed object is
* {@link CalculationPeriodDatesReference }
*
*/
public void setCalculationPeriodDatesReference(CalculationPeriodDatesReference value) {
this.calculationPeriodDatesReference = value;
}
/**
* Gets the value of the stepFrequency property.
*
* @return
* possible object is
* {@link Frequency }
*
*/
public Frequency getStepFrequency() {
return stepFrequency;
}
/**
* Sets the value of the stepFrequency property.
*
* @param value
* allowed object is
* {@link Frequency }
*
*/
public void setStepFrequency(Frequency value) {
this.stepFrequency = value;
}
/**
* Gets the value of the firstNotionalStepDate property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getFirstNotionalStepDate() {
return firstNotionalStepDate;
}
/**
* Sets the value of the firstNotionalStepDate property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setFirstNotionalStepDate(XMLGregorianCalendar value) {
this.firstNotionalStepDate = value;
}
/**
* Gets the value of the lastNotionalStepDate property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getLastNotionalStepDate() {
return lastNotionalStepDate;
}
/**
* Sets the value of the lastNotionalStepDate property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setLastNotionalStepDate(XMLGregorianCalendar value) {
this.lastNotionalStepDate = value;
}
/**
* Gets the value of the notionalStepAmount property.
*
* @return
* possible object is
* {@link BigDecimal }
*
*/
public BigDecimal getNotionalStepAmount() {
return notionalStepAmount;
}
/**
* Sets the value of the notionalStepAmount property.
*
* @param value
* allowed object is
* {@link BigDecimal }
*
*/
public void setNotionalStepAmount(BigDecimal value) {
this.notionalStepAmount = value;
}
/**
* Gets the value of the notionalStepRate property.
*
* @return
* possible object is
* {@link BigDecimal }
*
*/
public BigDecimal getNotionalStepRate() {
return notionalStepRate;
}
/**
* Sets the value of the notionalStepRate property.
*
* @param value
* allowed object is
* {@link BigDecimal }
*
*/
public void setNotionalStepRate(BigDecimal value) {
this.notionalStepRate = value;
}
/**
* Gets the value of the stepRelativeTo property.
*
* @return
* possible object is
* {@link StepRelativeToEnum }
*
*/
public StepRelativeToEnum getStepRelativeTo() {
return stepRelativeTo;
}
/**
* Sets the value of the stepRelativeTo property.
*
* @param value
* allowed object is
* {@link StepRelativeToEnum }
*
*/
public void setStepRelativeTo(StepRelativeToEnum value) {
this.stepRelativeTo = value;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy