Skip to content

Commit 365fa4d

Browse files
Roland Lichtersjenkins
authored andcommitted
QPR-12370 migrate schema components
1 parent 77a7a14 commit 365fa4d

2 files changed

Lines changed: 161 additions & 4 deletions

File tree

OREAnalytics/orea/app/oreapp.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -972,7 +972,7 @@ void OREAppInputParameters::loadParameters() {
972972
* SIMM and IM Schedule
973973
**********************/
974974

975-
LOG("SIMM and IMSCHEDULE");
975+
LOG("SIMM");
976976
tmp = params_->get("simm", "active", false);
977977
bool doSimm = !tmp.empty() ? parseBool(tmp) : false;
978978
if (doSimm) {
@@ -1037,9 +1037,6 @@ void OREAppInputParameters::loadParameters() {
10371037
}
10381038

10391039
LOG("IM SCHEDULE");
1040-
//tmp = params_->get("imschedule", "active", false);
1041-
//bool doSchedule = !tmp.empty() ? parseBool(tmp) : false;
1042-
//if (doSchedule) {
10431040
tmp = params_->get("imschedule", "active", false);
10441041
if (!tmp.empty() && parseBool(tmp)) {
10451042
insertAnalytic("IM_SCHEDULE");

xsd/instruments.xsd

Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,13 @@
7575
<xs:element type="totalReturnSwapData" name="TotalReturnSwapData"/>
7676
<xs:element type="totalReturnSwapData" name="ContractForDifferenceData"/>
7777
<xs:element type="compositeTradeData" name="CompositeTradeData"/>
78+
<xs:element type="pairwiseVarianceSwapData1" name="PairwiseVarianceSwapData"/>
79+
<xs:element type="pairwiseVarianceSwapData2" name="EquityPairwiseVarianceSwapData"/>
80+
<xs:element type="pairwiseVarianceSwapData2" name="FxPairwiseVarianceSwapData"/>
81+
<xs:element type="eqOutperformanceOptionData" name="EquityOutperformanceOptionData"/>
82+
<xs:element type="flexiSwapData" name="FlexiSwapData"/>
83+
<xs:element type="bgSwapData" name="BalanceGuaranteedSwapData"/>
84+
<xs:element type="commodityRevenueOptionData" name="CommodityRevenueOptionData"/>
7885
<!-- scripted trades -->
7986
<xs:element type="basketVarianceSwapData" name="BasketVarianceSwapData"/>
8087
<xs:element type="basketVarianceSwapData2" name="EquityBasketVarianceSwapData"/>
@@ -1224,6 +1231,13 @@
12241231
<xs:enumeration value="CreditDefaultSwap"/>
12251232
<xs:enumeration value="CreditDefaultSwapOption"/>
12261233
<xs:enumeration value="Failed"/>
1234+
<xs:enumeration value="FlexiSwap"/>
1235+
<xs:enumeration value="BalanceGuaranteedSwap"/>
1236+
<xs:enumeration value="CallableSwap"/>
1237+
<xs:enumeration value="EquityOutperformanceOption"/>
1238+
<xs:enumeration value="EquityPairwiseVarianceSwap"/>
1239+
<xs:enumeration value="FxPairwiseVarianceSwap"/>
1240+
<xs:enumeration value="CommodityPairwiseVarianceSwap"/>
12271241
<!-- scripted trades -->
12281242
<xs:enumeration value="ScriptedTrade"/>
12291243
<xs:enumeration value="EquityBasketVarianceSwap"/>
@@ -1484,6 +1498,62 @@
14841498
</xs:all>
14851499
</xs:complexType>
14861500

1501+
<xs:complexType name="flexiSwapData">
1502+
<xs:sequence>
1503+
<xs:element name="LowerNotionalBounds" maxOccurs="1" minOccurs="0">
1504+
<xs:complexType>
1505+
<xs:sequence>
1506+
<xs:element name="Notional" maxOccurs="unbounded" minOccurs="1">
1507+
<xs:complexType>
1508+
<xs:simpleContent>
1509+
<xs:extension base="xs:float">
1510+
<xs:attribute name="startDate" type="xs:string" />
1511+
</xs:extension>
1512+
</xs:simpleContent>
1513+
</xs:complexType>
1514+
</xs:element>
1515+
</xs:sequence>
1516+
</xs:complexType>
1517+
</xs:element>
1518+
<xs:element name="Prepayment" maxOccurs="1" minOccurs="0">
1519+
<xs:complexType>
1520+
<xs:sequence>
1521+
<xs:element type="xs:string" name="NoticePeriod" minOccurs="0"/>
1522+
<xs:element type="xs:string" name="NoticeCalendar" minOccurs="0"/>
1523+
<xs:element type="xs:string" name="NoticeConvention" minOccurs="0"/>
1524+
<xs:sequence>
1525+
<xs:element name="PrepaymentOptions" maxOccurs="unbounded" minOccurs="0">
1526+
<xs:complexType>
1527+
<xs:sequence>
1528+
<xs:element name="PrepaymentOption" maxOccurs="unbounded" minOccurs="0">
1529+
<xs:complexType>
1530+
<xs:all>
1531+
<xs:element type="date" name="ExerciseDate"/>
1532+
<xs:element type="xs:string" name="Type"/>
1533+
<xs:element type="xs:float" name="Value"/>
1534+
</xs:all>
1535+
</xs:complexType>
1536+
</xs:element>
1537+
</xs:sequence>
1538+
</xs:complexType>
1539+
</xs:element>
1540+
</xs:sequence>
1541+
</xs:sequence>
1542+
</xs:complexType>
1543+
</xs:element>
1544+
<xs:element type="longShort" name="OptionLongShort"/>
1545+
<xs:element type="legData" name="LegData" maxOccurs="2" minOccurs="2"/>
1546+
</xs:sequence>
1547+
</xs:complexType>
1548+
1549+
<xs:complexType name="bgSwapData">
1550+
<xs:sequence>
1551+
<xs:element type="xs:string" name="ReferenceSecurity"/>
1552+
<xs:element type="tranches" name="Tranches" maxOccurs="1" minOccurs="1"/>
1553+
<xs:element type="legData" name="LegData" maxOccurs="2" minOccurs="2"/>
1554+
</xs:sequence>
1555+
</xs:complexType>
1556+
14871557
<xs:complexType name="capFloorData">
14881558
<xs:sequence>
14891559
<xs:element type="longShort" name="LongShort"/>
@@ -4588,4 +4658,94 @@
45884658
</xs:all>
45894659
</xs:complexType>
45904660

4661+
<xs:complexType name="pairwiseVarianceSwapData2">
4662+
<xs:all>
4663+
<xs:element type="stFreeStyleLongShort" name="LongShort"/>
4664+
<xs:element type="stFreeStyleIndexVector" name="Underlyings"/>
4665+
<xs:element type="stFreeStyleNumberVector" name="UnderlyingStrikes"/>
4666+
<xs:element type="stFreeStyleNumberVector" name="UnderlyingNotionals"/>
4667+
<xs:element type="stFreeStyleNumber" name="BasketNotional"/>
4668+
<xs:element type="stFreeStyleNumber" name="BasketStrike"/>
4669+
<xs:element type="scheduleData" name="ValuationSchedule"/>
4670+
<xs:element type="scheduleData" name="LaggedValuationSchedule" minOccurs="0"/>
4671+
<xs:element type="stFreeStyleNumber" name="AccrualLag" minOccurs="0"/>
4672+
<xs:element type="stFreeStyleNumber" name="PayoffLimit" minOccurs="0"/>
4673+
<xs:element type="stFreeStyleNumber" name="Cap" minOccurs="0"/>
4674+
<xs:element type="stFreeStyleNumber" name="Floor" minOccurs="0"/>
4675+
<xs:element type="stFreeStyleEvent" name="SettlementDate"/>
4676+
<xs:element type="stFreeStyleCurrency" name="PayCcy"/>
4677+
</xs:all>
4678+
</xs:complexType>
4679+
4680+
<xs:complexType name="pairwiseVarianceSwapData1">
4681+
<xs:all>
4682+
<xs:element type="stFreeStyleLongShort" name="LongShort"/>
4683+
<xs:element type="stFreeStyleIndexVector" name="Underlyings"/>
4684+
<xs:element type="stFreeStyleNumberVector" name="UnderlyingStrikes"/>
4685+
<xs:element type="stFreeStyleNumberVector" name="UnderlyingNotionals"/>
4686+
<xs:element type="stFreeStyleNumber" name="BasketNotional"/>
4687+
<xs:element type="stFreeStyleNumber" name="BasketStrike"/>
4688+
<xs:element type="stFreeStyleEventSchedule" name="ValuationSchedule"/>
4689+
<xs:element type="stFreeStyleEventSchedule" name="LaggedValuationSchedule" minOccurs="0"/>
4690+
<xs:element type="stFreeStyleNumber" name="AccrualLag" minOccurs="0"/>
4691+
<xs:element type="stFreeStyleNumber" name="PayoffLimit" minOccurs="0"/>
4692+
<xs:element type="stFreeStyleNumber" name="Cap" minOccurs="0"/>
4693+
<xs:element type="stFreeStyleNumber" name="Floor" minOccurs="0"/>
4694+
<xs:element type="stFreeStyleEvent" name="SettlementDate"/>
4695+
<xs:element type="stFreeStyleCurrency" name="PayCcy"/>
4696+
</xs:all>
4697+
</xs:complexType>
4698+
4699+
4700+
<xs:complexType name="eqOutperformanceOptionData">
4701+
<xs:all>
4702+
<xs:element type="optionData" name="OptionData" minOccurs="1"/>
4703+
<xs:element type="currencyCode" name="Currency"/>
4704+
<xs:element type="xs:float" name="Notional"/>
4705+
<xs:element type="underlying" name="Underlying1"/>
4706+
<xs:element type="underlying" name="Underlying2"/>
4707+
<xs:element type="xs:float" name="InitialPrice1"/>
4708+
<xs:element type="xs:float" name="InitialPrice2"/>
4709+
<xs:element type="xs:float" name="StrikeReturn"/>
4710+
<xs:element type="xs:float" name="KnockInPrice" minOccurs="0" maxOccurs="1"/>
4711+
<xs:element type="xs:float" name="KnockOutPrice" minOccurs="0" maxOccurs="1"/>
4712+
<xs:element type="currencyCode" name="InitialPriceCurrency1" minOccurs="0" maxOccurs="1"/>
4713+
<xs:element type="fxTermsData" name="InitialPriceFXTerms1" minOccurs="0" maxOccurs="1"/>
4714+
<xs:element type="currencyCode" name="InitialPriceCurrency2" minOccurs="0" maxOccurs="1"/>
4715+
<xs:element type="fxTermsData" name="InitialPriceFXTerms2" minOccurs="0" maxOccurs="1"/>
4716+
</xs:all>
4717+
</xs:complexType>
4718+
4719+
<xs:element name="FormulaBasedLegData" substitutionGroup="legDataType">
4720+
<xs:complexType>
4721+
<xs:all>
4722+
<xs:element type="xs:string" name="Index"/>
4723+
<xs:element type="xs:boolean" name="IsInArrears" minOccurs="0" maxOccurs="1"/>
4724+
<xs:element type="xs:integer" name="FixingDays"/>
4725+
<xs:element type="calendar" name="FixingCalendar" minOccurs="0" maxOccurs="1"/>
4726+
</xs:all>
4727+
</xs:complexType>
4728+
</xs:element>
4729+
4730+
<xs:complexType name="commodityRevenueOptionData">
4731+
<xs:all>
4732+
<xs:element type="stFreeStyleOptionType" name="PutCall"/>
4733+
<xs:element type="stFreeStyleLongShort" name="LongShort"/>
4734+
<xs:element type="stFreeStyleEventSchedule" name="ObservationDates"/>
4735+
<xs:element type="stFreeStyleEventSchedule" name="ValuationDates"/>
4736+
<xs:element type="stFreeStyleEventSchedule" name="SettlementSchedule"/>
4737+
<xs:element type="stFreeStyleNumber" name="TrueUp"/>
4738+
<xs:element type="stFreeStyleEventSchedule" name="MonthlySchedule"/>
4739+
<xs:element type="stFreeStyleNumberVector" name="MonthlyBaseloadCapacity"/>
4740+
<xs:element type="stFreeStyleNumberVector" name="MonthlyDuctFiredCapacity"/>
4741+
<xs:element type="stFreeStyleNumberVector" name="MonthlyBaseloadHeatRate"/>
4742+
<xs:element type="stFreeStyleNumberVector" name="MonthlyDuctFiredHeatRate"/>
4743+
<xs:element type="stFreeStyleNumberVector" name="VOM"/>
4744+
<xs:element type="stFreeStyleNumber" name="HoursPerDay"/>
4745+
<xs:element type="stFreeStyleIndex" name="GasIndex"/>
4746+
<xs:element type="stFreeStyleIndex" name="EnergyIndex"/>
4747+
<xs:element type="stFreeStyleCurrency" name="PayCcy"/>
4748+
</xs:all>
4749+
</xs:complexType>
4750+
45914751
</xs:schema>

0 commit comments

Comments
 (0)