org.unizone.finance.interest | ![]() |
org.unizone.0.6100
Instance of Type
Inheriting from Debt
Known subtypes are Bond, FRA, Stibor, Swap, TBill
Type data | Value |
org.uninode.Type.displayPattern | {att:org.unizone.finance.Ticker.tickerId} |
org.unizone.source.Source.valueAttribute | org.unizone.finance.Index.last |
org.uninode.Listable.resources | Reference[org.uninode.Listable.resources] of org.unizone.finance.interest.Interest |
Attribute summary | Defined in | Uninode® Id | Properties | Default | |
Reference[org.uninode.Listable.resources] | resources | Listable | org.uninode.0.2001 | type | |
String | toString This is the display string. | Node | org.uninode.0.102 | ||
Type | type The type of an object determines the behaviour and attributes of the object. | Node | org.uninode.0.101 | ||
String | uri | Node | org.uninode.0.103 | ||
Ticker | underlying This is the index that determines the theoretical price of the derivative. | Derivative | org.unizone.0.5031 | essential | |
Real | closeMidnight This is the yesterday closing index. | Index | org.unizone.0.5002 | ||
Real | high | Index | org.unizone.0.5003 | ||
Real | last This is the index value. | Index | org.unizone.0.5001 | ||
Real | low | Index | org.unizone.0.5004 | ||
TickerLeaf | product | Ticker | org.unizone.0.10765 | ||
String | tickerId This is the id of a ticker. The selection attribute determines the current selection from all products with the same tickerLeafId as this tickerId. | Ticker | org.unizone.0.5121 | ||
DateTime | maturity This is the date when the debt may be collected. | Debt | org.unizone.0.5401 | ||
String | displayName The display name is the name that is shown in lists, displays and graphs. | Source | org.unizone.0.4001 | essential | |
Attribute | valueAttribute The value attribute is used for determining the default value that should be used for displaying this source in a graph. | Source | org.unizone.0.4011 | type inheritValue | |
Signature | valueType The value type determines which axes should be used in graphs. | Source | org.unizone.0.4002 | inheritValue |
Method summary | Defined in | Overrides | Properties | |
void | activate | Listable | ||
void | checkRange | Source | ||
void | collectSteps(List steps, Dimension dimensionType) | Source | ||
void | collectValues(List steps, List values, Type dimensionType) | Source | ||
void | designEditor(WidgetWorkspace ws) | Listable | ||
Real | evaluate | Source | ||
void | generateScript(ScriptGenerationInfo info) | Source | ScriptGenerator | |
Boolean | isResourceOf(Listable listable, Signature aspect) | Mixable | type | |
Listable | mixOn(Mixable mix) | Mixable | ||
Listable | mixWith(Mixable mix) | Mixable | ||
String | resourceString | Listable | introspection | |
Real | timeseries(Signature aspect) | Source | ||
Signature | valueType | Source | introspection | |
void | com.nodelab.java.source.Activate | Source | Listable | |
Listable | com.nodelab.java.source.MixWithMi | Source | Mixable |
Script summary |
org.unizone.0.8536/* constructor() { Instrument:(); } Symbol valueType() { #rate; } Symbol defaultAspect() { #bid; } Int preferredDays() {365} Int settlementDays() {3} class Real cleanPriceQuote(Time settlement, Time maturity, Real rate, Real coupon) { Time couponDate = maturity; Real t = couponDate.subtractDate360(settlement) / 360; if (t <= 0) return null; Real rateConst = 1 + rate / 100; Real price = 100 / rateConst ^ t; while ((t = couponDate.subtractDate360(settlement) / 360) > 0) { price = price + coupon / rateConst ^ t; couponDate = couponDate.addYears(-1); } ((price + t * coupon) * 1000).round / 1000; } class Real dirtyPriceQuote(Time settlement, Time maturity, Real rate, Real coupon) { Real clean = cleanPriceQuote(settlement, maturity, rate, coupon); if (clean == null) return null; Time couponDate = maturity; while (couponDate.subtractDate360(settlement) > 360) couponDate = couponDate.addYears(-1); ((clean + (1 - couponDate.subtractDate360(settlement) / 360) * coupon) * 1000000) .round / 1000000; } class Real dirtyPriceGreek(Time settlement, Time maturity, Real rate, Real coupon) { Time couponDate = maturity; Real t = couponDate.subtractDate360(settlement) / 360; if (t <= 0) return null; Real rateConst = 1 + rate / 100; Real price = 100 / rateConst ^ t; while ((t = couponDate.subtractDate360(settlement) / 360) > 0) { price = price + coupon / rateConst ^ t; couponDate = couponDate.addYears(-1); } price; } */ |