Weitere Endpunkte
Alle Endpunkte liegen unter https://calc.dev.emrgex.com/v1.
POST /v1/carry
Täglicher Carry (Effektivzins) für einen Pool aus Ad-hoc- und/oder gespeicherten Instrumenten — als Batch. Jeder
carries-Eintrag verweist auf ein Instrument und gibt einen Input sowie (optional) einen carry_to-Horizont an
(leer = nächster Kupontermin).
curl -s https://calc.dev.emrgex.com/v1/carry -H 'content-type: application/json' -d '{
"carries": [
{ "instrument_id": "MH12034", "input_kind": "yield", "input_value": 0.10,
"settlement_date": "2026-06-09", "carry_to": "2026-09-09" }
]
}'
POST /v1/generate_cash_flows
Erzeugt Cashflow-Zeitpläne für einen Pool aus Ad-hoc- und/oder gespeicherten Instrumenten — als Batch.
curl -s https://calc.dev.emrgex.com/v1/generate_cash_flows -H 'content-type: application/json' -d '{
"schedules": [ { "instrument_id": "MH12034" } ]
}'
GET /v1/admin/conventions
Discovery: jeder vom Engine unterstützte rate_type und day_count, jeweils mit einer Beschreibung, sowie das
Format des calculation_code. Siehe Konventionen.
curl https://calc.dev.emrgex.com/v1/admin/conventions
GET /v1/admin/instruments
Listet die Merkmale gespeicherter Instrumente auf (keine Cashflow-Arrays, sofern nicht with_cashflows=true;
cashflow_count ist immer enthalten). Alle Filter sind optional und werden mit UND verknüpft.
| Query-Parameter | Abgleich |
|---|---|
rate_type, day_count, calculation_code, currency, period_name | exakt |
issuer, rate_kind, name | Teilzeichenkette (Groß-/Kleinschreibung wird ignoriert) |
q | Teilzeichenkette über id / nemo / isin / issuer / name |
amortizing, callable | Boolescher Wert |
maturity_from, maturity_to | inklusiver Datumsbereich |
coupon_min, coupon_max | Bereich |
sort | id · nemo · issuer · maturity · coupon |
order | asc · desc |
limit (≤ 1000), offset | Paginierung; limit=0 liefert nur die Gesamtanzahl |
with_cashflows | inkludiert den gespeicherten Zeitplan jedes Instruments |
curl "https://calc.dev.emrgex.com/v1/admin/instruments?callable=true&sort=maturity&limit=10"
PATCH /v1/admin/instruments/{id}
Aktualisiert den coupon_rate und/oder coupon_type eines gespeicherten Instruments direkt — z. B. bei einem
Zinsanpassungstermin eines variabel verzinslichen Instruments oder einer repactuação. Die Änderung ist ein In-Memory-Override (ein
Neuladen des Katalogs stellt die Dateiansicht wieder her) und invalidiert den Cache, sodass die nächste Berechnung sie berücksichtigt.
curl -s -X PATCH https://calc.dev.emrgex.com/v1/admin/instruments/MH12034 \
-H 'content-type: application/json' -d '{ "coupon_rate": 0.12 }'
POST /v1/admin/cache/reload
Lädt das Instrumenten-Repository neu (atomarer Austausch, nicht fatal).
Health-Probes
| Endpunkt | Zweck |
|---|---|
GET /v1/health/livez | Liveness (nur Prozess) |
GET /v1/health/readyz | Readiness (schlägt während des Draining fehl) |
GET /v1/health/startupz | Startup (Warm-Load abgeschlossen) |
curl https://calc.dev.emrgex.com/v1/health/livez # {"status":"alive"}
Fehler
Fehler verwenden RFC 7807 application/problem+json mit
type, title, status und detail. In einem Batch erscheinen Fehler einzelner Einträge als deren
error, während die übrigen erfolgreich verarbeitet werden.