PORTFOLIO
Servicio por el cual se va a poder consultar la posicion monetaria, la tenencia y el estado de cuenta de los comitentes.
GET/ account-balances
Endpoint para consultar la posición monetaria del comitente en las distintas monedas y plazos.
- URL del Endpoint:
GET/{{baseUrl}}/api/portfolio/account-statements/{investment_account_id}
Se puede consultar por queryParams por un "term" específico. En caso de no especificar ninguno, por default se envían todos.
Se puede consultar por queryParams el campo "position_discriminator_bcra" donde si se envia como false, se devolverá la cantidad total de dólares sin discriminar entre los disponibles y bloqueados (es decir, los montos disponibles y bloqueados en dólares estarán sumados). Por defecto si no se envía el campo, es true.
term: es el plazo en el que se quiere consultar la posición monetaria, sus valores posibles 0, 1 y 2.
| Campo | Tipo | Descripción |
|---|---|---|
| investment_account_id | int | Código identificador de una cuenta comitente en ApiBroker. |
| concepts | str | Concepto de la posicion monetaria. |
| market_type | str | Tipo de mercado en el que opera. |
| currency_id | str | Código moneda. Master-tables: currencies |
| term | str | Plazo de la posicion monetaria. |
| amount | int | Importe. |
Request:
- URL del Endpoint:
GET/{{baseUrl}}/api/porfolio/account-statements/:{investment_account_id}?position_discriminator_bcra=true
Response:
{
"items": [
{
"investment_account_id": "int",
"available_amount": {
"market_type": {
"currency_id": {
"t0": {
"amount": "float"
},
"t1": {
"amount": "float"
},
"t2": {
"amount": "float"
}
}
},
"market_type": {
"currency_id": {
"t0": {
"amount": "float"
},
"t1": {
"amount": "float"
},
"t2": {
"amount": "float"
}
}
}
},
"bcra_blocked": {
"market_type": {
"currency_id": {
"t0": {
"amount": "float"
},
"t1": {
"amount": "float"
},
"t2": {
"amount": "float"
}
}
}
}
}
]
}
GET/ holdings
Endpoint para consultar las tenencias de los distintos instrumentos de los comitentes.
- URL del Endpoint:
GET/{{baseUrl}}/api/porfolio/holdings
Definiciones:
| Campo | Tipo | Descripción |
|---|---|---|
| investment_account_id | int | Código identificador de una cuenta comitente en ApiBroker. |
| instrument_id | int | Código del instrumento en tenencia. |
| market_type | str | Tipo de mercado en el que opera. |
| ticker | str | Símbolo del instrumento. |
| instrument_description | str | Descripción del instrumento en tenencia. |
| instrument_type | str | Tipo de activo: bond, cedears, moneda, fund, etc. |
| quantity | float | Cantidad del instrumento en tenencia. |
| quantity_available | float | Cantidad del instrumento disponible en inmediato. |
| quantity_t1 | float | Cantidad del instrumento aditiva disponible a 24hs. |
| quantity_t2 | float | Cantidad del instrumento aditiva disponible a 48hs. |
| quantity_future | float | Cantidad del instrumento comprometida a futuro. |
| quantity_unavailable | float | Cantidad del instrumento NO disponible. |
| available_t0 | float | Disponible del instrumento a operar en CI. |
| available_t1 | float | Disponible del instrumento a operar en 24hs. |
| available_t2 | float | Disponible del instrumento a operar en 48hs. |
| updated_at | datetime | Fecha de ultimo cambio en tenencia |
Se consulta por pathParams por "investment_account_id".
Consideraciones: Cuando se establece el tipo de instrumento (instrument_type) como 'fund', el identificador del instrumento (instrument_id) se refiere específicamente al 'mutual_fund_id', lo que indica que hace referencia un Fondo Común de Inversión (FCI). Por otro lado, si el valor de instrument_type es diferente a 'fund', entonces el instrument_id se utiliza para hacer referencia a un 'market_instrument_id', lo que implica que se trata del identificador único de un instrumento de mercado distinto de un FCI.
Request:
- URL del Endpoint:
GET/{{baseUrl}}/api/portfolio/holdings/:{investment_account_id}
Response:
{
"items": [
{
"investment_account_id": "int",
"holdings": [
{
"quantity": "float",
"quantity_available": "float",
"quantity_t1": "float",
"quantity_t2": "float",
"quantity_future": "float",
"quantity_unavailable": "float",
"available_t0": "float",
"available_t1": "float",
"available_t2": "float",
"instrument_description": "str",
"instrument_type": "str",
"ticker": "str",
"instrument_id": "int",
"market_type": "str",
"updated_at": "datetime"
},
{
"quantity": "float",
"quantity_available": "float",
"quantity_t1": "float",
"quantity_t2": "float",
"quantity_future": "float",
"quantity_unavailable": "float",
"available_t0": "float",
"available_t1": "float",
"available_t2": "float",
"instrument_description": "str",
"instrument_type": "str",
"ticker": "str",
"instrument_id": "int",
"market_type": "str",
"updated_at": "datetime"
}
]
}
]
}
GET/ account-statements
Endpoint para consultar el estado de cuenta de un comitente.
Se puede consultar por queryParams el campo "position_discriminator_bcra" donde si se envia como "false", se devolverá la cantidad total de dólares sin discriminar entre los disponibles y bloqueados (es decir, los montos disponibles y bloqueados en dólares estarán sumados). Por defecto si no se envía el campo, es true.
Se puede consultar por queryParams el campo "compromised_holdings" donde si se envia como "true", se incluirán las tenencias comprometidas en la respuesta.
Se puede consultar por queryParam el campo "include_remunerated_balance". Cuando se envía como "true" y la cuenta tiene remuneración de saldo activa, la respuesta incluirá el nodo remunerated_balance con el detalle del saldo remunerado. Si no se envía el parámetro, o la cuenta no remunera, este bloque no se incluye en la respuesta.
- URL del Endpoint:
GET/{{baseUrl}}/api/portfolio/account-statements/{investment_account_id}
Request:
-
URL del Endpoint:
GET/{{baseUrl}}/api/porfolio/account-statements/:{investment_account_id}?position_discriminator_bcra=true -
URL del Endpoint:
GET/{{baseUrl}}/api/porfolio/account-statements/:{investment_account_id}?compromised_holdings=true -
URL del Endpoint:
GET/{{baseUrl}}/api/porfolio/account-statements/:{investment_account_id}?include_remunerated_balance=true
Se pueden combinar estos parametros por ejemplo:
GET {{baseUrl}}/api/portfolio/account-statements/:{investment_account_id}?position_discriminator_bcra=true&compromised_holdings=true&include_remunerated_balance=true
Response:
{
"items": [
{
"investment_account_id": "int",
"available_amount": {
"market_type": {
"currency_id": {
"t0": {
"amount": "float"
},
"t1": {
"amount": "float"
},
"t2": {
"amount": "float"
}
}
}
},
"bcra_blocked": {
"market_type": {
"currency_id": {
"t0": {
"amount": "float"
},
"t1": {
"amount": "float"
},
"t2": {
"amount": "float"
}
}
}
},
"available_holdings": [
{
"quantity": "float",
"quantity_available": "float",
"quantity_t1": "float",
"quantity_t2": "float",
"quantity_future": "float",
"quantity_unavailable": "float",
"available_t0": "float",
"available_t1": "float",
"available_t2": "float",
"instrument_description": "str",
"instrument_type": "str",
"ticker": "str",
"instrument_id": "int",
"market_type": "str",
"updated_at": "datetime"
}
]
}
]
}
Cuando include_remunerated_balance = true y la cuenta remunera, la respuesta agrega el siguiente bloque:
"remunerated_balance": {
"ARS": { // Moneda que se remunera
"instrument_type": "string", // Tipo de activo que remunera (p.ej. 'CURRENCY')
"amount": 0, // Monto total remunerado
"available_amount": 0, // Monto disponible para operar o extraer
"used_overdraft": 0, // Monto remunerado ya utilizado en operaciones o extracciones
"market_type": "stock_market" // Mercado asociado (p.ej. 'stock_market')
}
}
// Puede haber otras monedas remunerando si aplican (p.ej. 'USD')