Pular para o conteúdo principal

Instrumentos: armazenados vs ad-hoc

O emrgex distingue instrumentos armazenados dos ad-hoc por uma única coisa: se o título já está no catálogo.

Onde é definidoCronograma de fluxos de caixaValoração
Armazenadono catálogo (referenciado por id)persistido (o cronograma do emissor)recalculado a cada chamada
Ad-hocinline na sua requisiçãogerado a partir das característicasrecalculado a cada chamada

De qualquer forma, preços, rendimentos, durações, convexidade e juros acumulados nunca são armazenados — eles são recalculados a partir do cronograma a cada requisição, conforme a convenção do instrumento.

Campos do instrumento

Ao definir um instrumento ad-hoc (ou inspecionar um armazenado), estes são os campos:

CampoObrigatórioNotas
idsim (ad-hoc)sua referência para o instrumento na requisição
rate_typesimNOMINAL / EFFECTIVE / AT_MATURITY / PRICE_QUANTITY
day_countsim¹nome FpML/ISDA; não usado para PRICE_QUANTITY
coupon_typenãoFIXED (padrão) ou ACCRUAL
frequencysim²cupons por ano
startsimdata de emissão / primeiro acúmulo
maturitysim
coupon_ratenãocupom anual como decimal (0.06 = 6%)
face_valuesimgeralmente 100
unit_nominalnãodenominação mínima negociável; arredonda um nominal derivado
eomnãorolagem de fim de mês
ex_div_daysnãodias ex-dividendo
amortizationsnãoarray de { date, amount } — veja abaixo
callsnãoarray de { date, price } — torna o título resgatável (callable)

¹ Obrigatório exceto para PRICE_QUANTITY. ² AT_MATURITY / PRICE_QUANTITY forçam frequency para 1.

Títulos com amortização

Adicione um array amortizations de { date, amount } (principal amortizado por data). Títulos com amortização são cotados sobre o valor de face em aberto atual (o padrão de mercado): preços e DV01 escalam com a fração em aberto, enquanto durações, convexidade e rendimentos são invariantes à escala. Um amount_value fornecido é interpretado como o nominal em aberto atual.

Títulos resgatáveis (callable)

Adicione um array calls de { date, price } (preço de resgate por 100 de face). Quando você cota um título resgatável por preço, defina options.yield_worst: true para receber também o yield-to-worst (min entre o yield-to-maturity e cada yield-to-call). Veja Métricas.

# list instruments (filterable, paginated)
curl "https://calc.dev.emrgex.com/v1/admin/instruments?issuer=Hacienda&limit=20"

Filtros úteis (todos opcionais, combinados por AND): rate_type, day_count, calculation_code, currency, issuer (substring), name (substring), q (busca em id/nemo/isin/issuer/name), amortizing, callable, maturity_from / maturity_to, coupon_min / coupon_max, além de sort, order, limit, offset. limit=0 retorna apenas a contagem total. Veja a referência da API.