Convenzioni
Un calcolo in emrgex è definito da tre assi indipendenti e riconosciuti a livello globale — non esistono codici proprietari. Si scelgono in modo indipendente la capitalizzazione, il conteggio dei giorni e la formula della cedola, ciascuno tramite un nome che chiunque sul mercato è in grado di identificare.
1. rate_type — base di capitalizzazione / quotazione
Come il rendimento si capitalizza in fase di attualizzazione.
rate_type | Significato | Attualizzazione |
|---|---|---|
NOMINAL | tasso nominale capitalizzato frequency×/anno (YTM di mercato) | (1 + y/f)^(-f·t) |
EFFECTIVE | tasso effettivo annuo | (1 + y)^(-t) |
AT_MATURITY | sconto semplice del mercato monetario (T-bill / Letras) | 1 / (1 + y·t) |
PRICE_QUANTITY | pass-through del NAV di azioni / fondi: valore = prezzo × quantità (nessuna attualizzazione; nessun day_count) | — |
2. day_count — convenzione di frazione d'anno (FpML / ISDA)
Come viene misurato il tempo, denominato secondo la tassonomia FpML / ISDA 2006 §4.16.
| Nome | Note |
|---|---|
ACT/ACT.ISDA | ISDA §4.16(b), suddiviso al confine dell'anno |
ACT/ACT.ICMA | ISDA §4.16(c) / ICMA Regola 251; un periodo regolare si riduce a 1/f |
ACT/ACT.ISMA | alias di ICMA |
ACT/ACT.AFB | AFB 1994 |
ACT/360 | mercato monetario |
ACT/365.FIXED | |
ACT/365L | denominatore che tiene conto dell'anno bisestile |
ACT/364 | |
30/360 | US / Bond Basis |
30E/360 | Eurobond |
30E/360.ISDA | + regola di scadenza a febbraio |
30/360.GERMAN | alias di 30E/360.ISDA |
1/1 | degenere, per completezza FpML |
BUS/252 | Brasile B3 / ANBIMA: giorni lavorativi / 252, utilizzando il calendario festivo ANBIMA integrato. Bit-exact rispetto ai titoli LTN / NTN-F del Tesouro Direto |
ACT/ACT.DRMH | base governativa della Repubblica Dominicana (Ministerio de Hacienda): giorni effettivi / giorni effettivi nella finestra di 12 mesi che termina alla data di pagamento. Verificata rispetto alle basi pubblicate dall'emittente |
3. coupon_type — come viene calcolato l'importo della cedola
coupon_type | Cedola per periodo | Usato per |
|---|---|---|
FIXED (predefinito) | coupon_rate / frequency × outstanding | obbligazioni convenzionali a tasso fisso (Treasury, corporate, Eurobond) |
ACCRUAL | coupon_rate × yearFraction(day_count) × outstanding | obbligazioni del mercato monetario e dei mercati locali la cui cedola segue la durata del periodo |
Le due coincidono sotto ACT/ACT.ICMA e 30E/360 (un periodo regolare è esattamente 1/f) e divergono sotto i conteggi a giorni effettivi (ACT/365, ACT/360, ACT/ACT.ISDA). Un options.coupon_type per singola quotazione ha la precedenza sull'impostazione dello strumento per l'analisi di scenario (what-if).
calculation_code — l'identificatore globale
Ogni strumento espone un calculation_code: l'unione dei suoi due assi principali, <day_count>|<rate_type>. È derivato dalla convenzione, mai un input che la sovrascrive.
ACT/ACT.ISDA|NOMINAL ACT/360|AT_MATURITY 30E/360|EFFECTIVE PRICE_QUANTITY
PRICE_QUANTITY non ha conteggio dei giorni, quindi il suo codice è semplicemente PRICE_QUANTITY.
Matrice di combinazione
Gli assi sono ortogonali — qualsiasi rate_type si combina con qualsiasi 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 |
Regole di validità: NOMINAL / EFFECTIVE richiedono una frequency positiva; AT_MATURITY e PRICE_QUANTITY forzano la frequency a 1; PRICE_QUANTITY non accetta alcun day_count; ogni altra combinazione richiede un day_count valido.
Conteggi dei giorni disaccoppiati (avanzato)
Normalmente day_count governa tre aspetti contemporaneamente. Quando uno strumento necessita di basi diverse per ciascun asse, è possibile sovrascriverle individualmente — ognuna è opzionale e ricade su day_count:
| Campo | Asse che controlla |
|---|---|
accrual_day_count | interessi maturati (coupon corrido) |
coupon_day_count | l'importo della cedola ACCRUAL |
discount_day_count | l'esponente del tempo di sconto t (valore attuale) |
Ad esempio, le obbligazioni governative dominicane ACT/ACT maturano interessi sulla base 365/366 dell'emittente ma vengono attualizzate su periodi di mercato/ICMA — modellate come day_count: ACT/ACT.DRMH con discount_day_count: ACT/ACT.ICMA.
Scoprire ciò che è supportato
curl https://calc.dev.emrgex.com/v1/admin/conventions
Restituisce ogni rate_type e day_count con una descrizione, oltre al formato del calculation_code.