Fixing titluri de stat
Randamentele bid şi ask ale titlurilor de stat româneşti, pe cele cinci maturităţi publicate:
6 luni, 12 luni, 3, 5 şi 10 ani. Serie zilnică din ianuarie 2011.
Sunt RANDAMENTE, nu preţuri, iar relaţia bid/ask se inversează. Cumperi la preţul ask, care e
mai mare, deci randamentul corespunzător e mai MIC. Verificat pe toate cele 19.710 perechi din
2011 încoace: bid > ask în 100% din cazuri, fără o singură excepţie.
De aceea spread vine deja calculat ca bid − ask, pozitiv. Cine îl calculează invers, din
reflexul preţurilor, obţine un număr negativ şi crede că datele sunt stricate. Media istorică e
0,28 puncte procentuale, între 0,14 şi 0,51 — deci şi un reper de lichiditate.
Punctele vin ordonate pe maturitate reală, nu alfabetic: sortate pe text ar ieşi
10Y, 12M, 3Y, 5Y, 6M. luni dă ordinea şi serveşte la interpolare.
Ziua fără publicare are valoare gol, iar ultimul fixing anterior vine în ultima, cu ziua lui.
Parametri de interogare
YYYY-MM-DD. Nu poate fi în viitor.
ex. 2024-06-15ex. 2024-01-15ex. 2023-06-15
Cum se comportă
?data=e obligatorie, iar răspunsul are mereu aceeaşi formă:data(ziua cerută),valoare(completată numai dacă avem exact ziua aia) şiultima(ultima zi publicată la sau înainte de ea, cu valoarea ei).valoarerămâne gol DELIBERAT când ziua cerută n-are publicare — cifra de altă zi stă separat, subultima, ca să nu poată fi folosită din greşeală într-un calcul. Lipsa datelor nu mai e o eroare: răspunsul e 200, iar comparaţiadatavsultima.dataspune tot.- Randamentele bid şi ask ale titlurilor de stat româneşti, pe cele cinci maturităţi publicate de BNR: 6 luni, 12 luni, 3, 5 şi 10 ani. Serie zilnică din ianuarie 2011.
- Sunt RANDAMENTE, nu preţuri, iar relaţia bid/ask se inversează. Cumperi la preţul
ask, care e mai mare, deci randamentul corespunzător e mai MIC. Verificat pe toate cele 19.710 perechi din 2011 încoace: bid > ask în 100% din cazuri, fără o singură excepţie. - De aceea
spreadvine deja calculat cabid − ask, pozitiv. Cine îl calculează invers, din reflexul preţurilor, obţine un număr negativ şi crede că datele sunt stricate. Unitatea sunt punctele procentuale de randament. - Spread-ul e şi un reper de lichiditate. Media istorică e 0,28 puncte, între 0,14 şi 0,51 — dar în 19 martie 2020, în plină criză, era între 0,33 şi 0,46 pe toate maturităţile, faţă de 0,17–0,30 în perioade calme.
- Punctele vin ordonate pe maturitate REALĂ, nu alfabetic. Sortate pe text ar ieşi
10Y, 12M, 3Y, 5Y, 6M— o curbă desenată aşa arată ca zgomot.lunidă ordinea şi serveşte la interpolare. - Ziua fără publicare are
valoaregol, iar ultimul fixing anterior vine înultima. Fără plafon de vechime. Toate maturităţile vin din ACEEAŞI zi: o curbă care amestecă momente de piaţă nu e o curbă. - Aceasta e curba suverană românească. Pentru cea a zonei euro, pe 11 maturităţi şi două variante de emitent, vezi
/bce/curba— sunt pieţe diferite şi nu se citesc împreună fără a şti asta.
La ce folosește
- Randamentul cerut de piaţă pentru datoria suverană românească.
- Actualizarea unui flux de numerar în lei la randamente de piaţă.
- Urmărirea lichidităţii pieţei prin evoluţia spread-ului.
Structura răspunsului
{unitate, puncte[]}. null dacă ziua aia n-are publicare.
data, cu fixing-ul ei: {data, valoare}. null doar dacă nu există nimic înaintea zilei cerute.
procent_pe_an.
6M, 12M, 3Y, 5Y, 10Y).
bid − ask, în puncte procentuale. Deja pozitiv.
Exemple de răspuns
{
"data": {
"data": "2024-06-15",
"valoare": null,
"ultima": {
"data": "2024-06-14",
"valoare": {
"unitate": "procent_pe_an",
"puncte": [
{
"maturitate": "6M",
"denumire": "şase luni",
"luni": 6,
"bid": "6.09",
"ask": "5.79",
"mid": "5.94",
"spread": "0.30"
}
]
}
}
},
"meta": {
"sursa": "BNR — fixing titluri de stat (baza de date interactivă).",
"acoperire": {
"de_la": "2011-01-10",
"pana_la": "2026-09-21"
},
"nota_randamente": "Valorile sunt RANDAMENTE, nu preţuri. De aceea `bid` e mai mare decât `ask`: cumperi la preţul ask, care e mai mare, deci randamentul e mai mic. Verificat pe 19.710 perechi din 2011: bid > ask în 100% din cazuri.",
"nota_spread": "`spread` e `bid − ask`, în puncte procentuale de randament, deja pozitiv. Calculat invers ar da un număr negativ. Media istorică: 0,28 puncte, între 0,14 şi 0,51.",
"nota_ordine": "Punctele sunt ordonate pe maturitate reală. Sortate alfabetic ar ieşi `10Y, 12M, 3Y, 5Y, 6M` — o curbă desenată aşa arată ca zgomot.",
"nota_zi": "Ziua cerută nu are publicare. `valoare` e gol DELIBERAT, ca să nu fie folosită o cifră care nu e a zilei cerute; ultima publicată înainte de ea e în `ultima`."
}
}
{
"data": {
"data": "2024-01-15",
"valoare": {
"unitate": "procent_pe_an",
"puncte": [
{
"maturitate": "6M",
"denumire": "şase luni",
"luni": 6,
"bid": "6.12",
"ask": "5.76",
"mid": "5.94",
"spread": "0.36"
}
]
},
"ultima": {
"data": "2024-01-15",
"valoare": {
"unitate": "procent_pe_an",
"puncte": [
{
"maturitate": "6M",
"denumire": "şase luni",
"luni": 6,
"bid": "6.12",
"ask": "5.76",
"mid": "5.94",
"spread": "0.36"
}
]
}
}
},
"meta": {
"sursa": "BNR — fixing titluri de stat (baza de date interactivă).",
"acoperire": {
"de_la": "2011-01-10",
"pana_la": "2026-09-21"
},
"nota_randamente": "Valorile sunt RANDAMENTE, nu preţuri. De aceea `bid` e mai mare decât `ask`: cumperi la preţul ask, care e mai mare, deci randamentul e mai mic. Verificat pe 19.710 perechi din 2011: bid > ask în 100% din cazuri.",
"nota_spread": "`spread` e `bid − ask`, în puncte procentuale de randament, deja pozitiv. Calculat invers ar da un număr negativ. Media istorică: 0,28 puncte, între 0,14 şi 0,51.",
"nota_ordine": "Punctele sunt ordonate pe maturitate reală. Sortate alfabetic ar ieşi `10Y, 12M, 3Y, 5Y, 6M` — o curbă desenată aşa arată ca zgomot.",
"nota_zi": "Valoare publicată în ziua cerută."
}
}
{
"data": {
"data": "2023-06-15",
"valoare": {
"unitate": "procent_pe_an",
"puncte": [
{
"maturitate": "6M",
"denumire": "şase luni",
"luni": 6,
"bid": "6.24",
"ask": "5.87",
"mid": "6.06",
"spread": "0.37"
}
]
},
"ultima": {
"data": "2023-06-15",
"valoare": {
"unitate": "procent_pe_an",
"puncte": [
{
"maturitate": "6M",
"denumire": "şase luni",
"luni": 6,
"bid": "6.24",
"ask": "5.87",
"mid": "6.06",
"spread": "0.37"
}
]
}
}
},
"meta": {
"sursa": "BNR — fixing titluri de stat (baza de date interactivă).",
"acoperire": {
"de_la": "2011-01-10",
"pana_la": "2026-09-21"
},
"nota_randamente": "Valorile sunt RANDAMENTE, nu preţuri. De aceea `bid` e mai mare decât `ask`: cumperi la preţul ask, care e mai mare, deci randamentul e mai mic. Verificat pe 19.710 perechi din 2011: bid > ask în 100% din cazuri.",
"nota_spread": "`spread` e `bid − ask`, în puncte procentuale de randament, deja pozitiv. Calculat invers ar da un număr negativ. Media istorică: 0,28 puncte, între 0,14 şi 0,51.",
"nota_ordine": "Punctele sunt ordonate pe maturitate reală. Sortate alfabetic ar ieşi `10Y, 12M, 3Y, 5Y, 6M` — o curbă desenată aşa arată ca zgomot.",
"nota_zi": "Valoare publicată în ziua cerută."
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 422 | validare | Dată lipsă, malformată sau în viitor. |
| 429 | cota_depasita | Cota lunară a planului a fost depăşită (vezi Retry-After). |
Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.
{
"eroare": {
"cod": "validare",
"mesaj": "Dată lipsă, malformată sau în viitor.",
"detalii": {
"data": [
"Valoarea trimisă nu respectă regula parametrului."
]
}
}
}