Conventies
Een berekening in emrgex wordt gedefinieerd door drie onafhankelijke, wereldwijd erkende assen — er zijn geen propriëtaire codes. Je kiest de samengestelde rente, de daytelling en de couponformule onafhankelijk van elkaar, elk uit een naam die iedereen in de markt kan herkennen.
1. rate_type — samengestelde-rente- / noteringsbasis
Hoe het rendement zich samenstelt bij het verdisconteren.
rate_type | Betekenis | Verdisconteren |
|---|---|---|
NOMINAL | nominale rente die frequency× per jaar wordt samengesteld (gangbare YTM) | (1 + y/f)^(-f·t) |
EFFECTIVE | effectieve jaarrente | (1 + y)^(-t) |
AT_MATURITY | enkelvoudige discontering op de geldmarkt (schatkistpapier / Letras) | 1 / (1 + y·t) |
PRICE_QUANTITY | doorgifte van NAV van aandelen / fondsen: waarde = prijs × hoeveelheid (geen verdiscontering; geen day_count) | — |
2. day_count — jaarfractieconventie (FpML / ISDA)
Hoe de tijd wordt gemeten, benoemd volgens de FpML / ISDA 2006 §4.16-taxonomie.
| Naam | Opmerkingen |
|---|---|
ACT/ACT.ISDA | ISDA §4.16(b), opgesplitst bij de jaargrens |
ACT/ACT.ICMA | ISDA §4.16(c) / ICMA-regel 251; een reguliere periode reduceert tot 1/f |
ACT/ACT.ISMA | alias van ICMA |
ACT/ACT.AFB | AFB 1994 |
ACT/360 | geldmarkt |
ACT/365.FIXED | |
ACT/365L | schrikkeljaarbewuste noemer |
ACT/364 | |
30/360 | US / Bond Basis |
30E/360 | Eurobond |
30E/360.ISDA | + februari-vervaldagregel |
30/360.GERMAN | alias van 30E/360.ISDA |
1/1 | gedegenereerd, voor FpML-volledigheid |
BUS/252 | Brazilië B3 / ANBIMA: werkdagen / 252, met gebruik van de ingebouwde ANBIMA-feestdagenkalender. Bit-exact t.o.v. Tesouro Direto LTN / NTN-F |
ACT/ACT.DRMH | Dominicaanse staatsbasis (Ministerio de Hacienda): werkelijke dagen / werkelijke dagen in het venster van 12 maanden dat eindigt op de betaaldatum. Geverifieerd t.o.v. de door de emittent gepubliceerde bases |
3. coupon_type — hoe het couponbedrag wordt berekend
coupon_type | Coupon per periode | Gebruikt voor |
|---|---|---|
FIXED (standaard) | coupon_rate / frequency × outstanding | conventionele obligaties met vaste rente (staatsobligaties, bedrijfsobligaties, Eurobonds) |
ACCRUAL | coupon_rate × yearFraction(day_count) × outstanding | geldmarkt- en lokale-marktobligaties waarvan de coupon de periodelengte volgt |
De twee vallen samen onder ACT/ACT.ICMA en 30E/360 (een reguliere periode is precies 1/f) en
lopen uiteen onder daytellingen op basis van werkelijke dagen (ACT/365, ACT/360, ACT/ACT.ISDA). Een
options.coupon_type per quote overschrijft de instelling van het instrument voor wat-als-analyse.
calculation_code — de globale identificator
Elk instrument stelt een calculation_code beschikbaar: de samenvoeging van zijn twee belangrijkste assen,
<day_count>|<rate_type>. Deze wordt afgeleid uit de conventie en is nooit een invoer die deze overschrijft.
ACT/ACT.ISDA|NOMINAL ACT/360|AT_MATURITY 30E/360|EFFECTIVE PRICE_QUANTITY
PRICE_QUANTITY heeft geen daytelling, dus de code is gewoon PRICE_QUANTITY.
Mengmatrix
De assen zijn orthogonaal — elk rate_type combineert met elk day_count:
| rate_type | day_count | calculation_code |
|---|---|---|
| NOMINAL | ACT/ACT.ICMA | ACT/ACT.ICMA|NOMINAL |
| NOMINAL | 30E/360 | 30E/360|NOMINAL |
| EFFECTIVE | ACT/365.FIXED | ACT/365.FIXED|EFFECTIVE |
| AT_MATURITY | ACT/360 | ACT/360|AT_MATURITY |
Geldigheidsregels: NOMINAL / EFFECTIVE vereisen een positieve frequency; AT_MATURITY en
PRICE_QUANTITY dwingen frequency af op 1; PRICE_QUANTITY neemt geen day_count; elke andere
combinatie vereist een geldige day_count.
Ontkoppelde daytellingen (geavanceerd)
day_count stuurt normaal gesproken drie dingen tegelijk aan. Wanneer een instrument verschillende bases per
as nodig heeft, overschrijf je ze afzonderlijk — elk is optioneel en valt terug op day_count:
| Veld | As die het aanstuurt |
|---|---|
accrual_day_count | opgelopen rente (coupon corrido) |
coupon_day_count | het couponbedrag bij ACCRUAL |
discount_day_count | de exponent van de discontotijd t (contante waarde) |
Zo lopen Dominicaanse staatsobligaties met ACT/ACT rente op volgens de 365/366-basis van de emittent, maar verdisconteren
ze op gangbare/ICMA-perioden — gemodelleerd als day_count: ACT/ACT.DRMH met
discount_day_count: ACT/ACT.ICMA.
Ontdek wat er wordt ondersteund
curl https://calc.dev.emrgex.com/v1/admin/conventions
Geeft elk rate_type en day_count terug met een beschrijving, plus het formaat van de calculation_code.