OpLab REST API (3.0)

Download OpenAPI specification:Download

Introdução

Através da API REST você pode ter acesso aos dados de informações relacionadas ao aplicativo OpLab, como cotações, gráficos, portfólio, entre outras informações. A API é de uso individual e os dados obtidos através dela não podem ser distribuidos sem prévia autorização.

As funções e informações da API estão divididas em duas categorias:

  • Domain: referente ao que pertence ou é relacionado ao usuário, como portfólio, ordens, notificações, etc.
  • Market: dados do mercado como cotações, séries de opções, taxas de juros, instrumentos, etc.

Autenticação

Todas as requisições feitas à API são stateless. Dessa forma, a autenticação ocorre em cada requsição independente de qualquer outro parâmetro

Em cada requisição você deverá passar uma chave no cabeçalho HTTP Access-Token. Opcionalmente, a chave de acesso também poderá ser passada como um parâmetro de query string de nome access_token

Essa chave pode ser obtida através do site do OpLab no link: https://go.oplab.com.br/api. E também ao fazer uma requisição de autenticação no servidor, através dessa rota.

Erros

Quando não for possível completar alguma requisição a API irá retornar um dos códigos HTTP abaixo, verifique os possíveis motivos que levaram ao código de erro retornado

400 Bad Request

Requisição Inválida. Algum parâmetro obrigatório não foi enviado, verifique as informações da rota.

401 Unauthorized

Acesso negado. Os dados de acesso (email e senha) ou o access-token não foram enviados ou estão inválidos, realize uma nova autenticação.

402 Payment Required

Acesso negado. A assinatura do plano do cliente está expirada, é necessário fazer um novo pagamento.

403 Forbidden

Acesso negado. O plano assinado pelo cliente não permite o acesso ao recurso solicitado, é necessário fazer um upgrade de plano.

404 Not Found

Não encontrado. A rota informada não foi encontrada, verifique se o método HTTP e os parâmetros enviados estão corretos.

412 Precondition Failed

Falha no processamento. Não foi possível realizar a ação, verifique os requisitos para a rota que foi chamada.

422 Unprocessable Entity

Falha no processamento. Não foi possível realizar a ação, verifique a mensagem no corpo do retorno para mais detalhes.

429 Too Many Requests

Requisição repetitiva. O dado já está sendo processado, aguarde para enviar uma nova requisição.

500 Internal Server Error

Erro no servidor. Não foi possível completar o processamento.

503 Service Unavailable

Serviço Indisponível. Não foi possível processar a requisição no momento, aguarde para enviar uma nova requisição.

Usuário

Recuperar senha

Envia link de recuperação de senha para o e-mail do usuário

Request Body schema: application/json
email
required
string

E-mail cadastrado

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "error": "string"
}

Autenticação

Autentica o usuário no sistema a partir do email e senha

query Parameters
for
string
Default: "default"
Enum: "default" "chart"
enumDescriptions: {"default":"Plataforma Oplab","chart":"Gráficos TradingView"}

Contexto de autenticação

Request Body schema: application/json
email
required
string

Email do usuário

password
required
string

Senha do usuário

Responses

Response Schema: application/json
Any of
name
string

Nome do usuário

id
integer

ID do usuário dentro do OpLab

object

Configurações gerais da conta

email
string

Email do usuário

last-login
string <date-time>

Data e hora do último login

category
string

Categoria do plano do usuário

permissions
string

Código de permissões do usuário

acl
string

Código de permissões do plano do usuário

access-token
string

Token de autenticação

data-access
string
Enum: "REAL_TIME" "DELAYED" "EOD"

Nível de acesso ao market data

display-name
string

Nome do usuário que será mostrado na tela

avatar
string

Link do gravatar com a imagem de perfil do usuário

versions
object

Lista de aplicações e suas respecitivas versões

days-to-expiration
integer or null

Indica os dias restantes do período de teste do usuário

default-portfólio
integer

ID do portfólio padrão do usuário

minimum-version
integer

Versão mínima da aplicação que o usuário tem acesso

phone-number
string

Número do telefone do usuário

document-number
string

Número do documento do usuário

datafeed-access-token
string

Token de autenticação para o websocket, só existe se o parâmetro data-access for diferente de EOD

endpoints
Array of strings

Lista de URLs do websocket

Array of objects

Lista de servidores websocket

object

Configurações gerais do sistema

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{
  • "name": "João da Silva",
  • "id": 10518,
  • "preferences": {
    },
  • "email": "[email protected]",
  • "last-login": "2019-03-26T00:35:02.243Z",
  • "category": "MAX",
  • "permissions": "ae1f55b1dd8fdd2f3ca49e82b544c513c787040e360fc2ed93df8ae11b64ee20",
  • "acl": "KJCUCTC7KREU2RK7KFKUFRGVKTCUJFIEYRK7KBHVEV6VCFKMKFKIWFGVCVIREUKUZMKNEU2VKMIFKE6URMKNKFEQKUIVDUSRKTFRIE6UKESRSJINAVISKPJZJSYRSVJRGF6U2FKJEUKUZMJBEVGVCPKJEUGQKML5WFAUSPJVHV6Q2VKNKE6TGUCUSLIVKF6RCBKRASYSCJKNKE6USJINAUYX2PKBCVEQKUJFHU4UZMKBHVEVCGJ5GEST27JVAU4QKHIVGUKTSUCGJ5GEST2TFRIE6V2EIVJFGLCQJ5JFISUIZHUYSKPFRDESTCUIVJFGLCOJ5RSPJREU6X2CIFGECTSDJFHEOLCUKJAUISKOI4WFGVCSIFKEKR2JIVJV6RKYKBGE6USFKIWFEQKOJNEU4R2TFRGUCUSLIVKF6TKPJZEVIT2S",
  • "access-token": "tupYCgGeXK441+jaRX+owrVt1Rp2d+jBAvNoppf4XEB4puIgI2qW2keqByq7e4MqVIMJKTNtDtnVosMJMBmAMA==--uzF4yHkdKNh+M5urrosiVg==--P3I//V6qx7bxNlQhito1QA==",
  • "data-access": "REAL_TIME",
  • "display-name": "João",
  • "versions": {
    },
  • "days-to-expiration": 15,
  • "default-portfólio": 16519,
  • "minimum-version": 3,
  • "datafeed-access-token": "np7ITttANtKQolkC1ys+FafO3KpGu2PT3ouUr1TA+0bwb7XrDYyRxX6UtP1S2L0df0qD1Cbx/NxUm6tUXtuVbQ==--mCOjry5sgY0l1ynDPeIFBQ==--ZKOM2Kp2aH3KWcX",
  • "endpoints": [
    ],
  • "servers": [
    ],
  • "system-config": {
    }
}

Autorização

Autoriza o acesso ao sistema a partir do token de acesso

Authorizations:
Access-Token
query Parameters
for
string
Default: "default"
Enum: "default" "chart"
enumDescriptions: {"default":"Plataforma Oplab","chart":"Gráficos TradingView"}

Contexto de autenticação

Responses

Response Schema: application/json
Any of
name
string

Nome do usuário

id
integer

ID do usuário dentro do OpLab

object

Configurações gerais da conta

email
string

Email do usuário

last-login
string <date-time>

Data e hora do último login

category
string

Categoria do plano do usuário

permissions
string

Código de permissões do usuário

acl
string

Código de permissões do plano do usuário

access-token
string

Token de autenticação

data-access
string
Enum: "REAL_TIME" "DELAYED" "EOD"

Nível de acesso ao market data

display-name
string

Nome do usuário que será mostrado na tela

avatar
string

Link do gravatar com a imagem de perfil do usuário

versions
object

Lista de aplicações e suas respecitivas versões

days-to-expiration
integer or null

Indica os dias restantes do período de teste do usuário

default-portfólio
integer

ID do portfólio padrão do usuário

minimum-version
integer

Versão mínima da aplicação que o usuário tem acesso

phone-number
string

Número do telefone do usuário

document-number
string

Número do documento do usuário

datafeed-access-token
string

Token de autenticação para o websocket, só existe se o parâmetro data-access for diferente de EOD

endpoints
Array of strings

Lista de URLs do websocket

Array of objects

Lista de servidores websocket

object

Configurações gerais do sistema

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/users/authorize' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "name": "João da Silva",
  • "id": 10518,
  • "preferences": {
    },
  • "email": "[email protected]",
  • "last-login": "2019-03-26T00:35:02.243Z",
  • "category": "MAX",
  • "permissions": "ae1f55b1dd8fdd2f3ca49e82b544c513c787040e360fc2ed93df8ae11b64ee20",
  • "acl": "KJCUCTC7KREU2RK7KFKUFRGVKTCUJFIEYRK7KBHVEV6VCFKMKFKIWFGVCVIREUKUZMKNEU2VKMIFKE6URMKNKFEQKUIVDUSRKTFRIE6UKESRSJINAVISKPJZJSYRSVJRGF6U2FKJEUKUZMJBEVGVCPKJEUGQKML5WFAUSPJVHV6Q2VKNKE6TGUCUSLIVKF6RCBKRASYSCJKNKE6USJINAUYX2PKBCVEQKUJFHU4UZMKBHVEVCGJ5GEST27JVAU4QKHIVGUKTSUCGJ5GEST2TFRIE6V2EIVJFGLCQJ5JFISUIZHUYSKPFRDESTCUIVJFGLCOJ5RSPJREU6X2CIFGECTSDJFHEOLCUKJAUISKOI4WFGVCSIFKEKR2JIVJV6RKYKBGE6USFKIWFEQKOJNEU4R2TFRGUCUSLIVKF6TKPJZEVIT2S",
  • "access-token": "tupYCgGeXK441+jaRX+owrVt1Rp2d+jBAvNoppf4XEB4puIgI2qW2keqByq7e4MqVIMJKTNtDtnVosMJMBmAMA==--uzF4yHkdKNh+M5urrosiVg==--P3I//V6qx7bxNlQhito1QA==",
  • "data-access": "REAL_TIME",
  • "display-name": "João",
  • "versions": {
    },
  • "days-to-expiration": 15,
  • "default-portfólio": 16519,
  • "minimum-version": 3,
  • "datafeed-access-token": "np7ITttANtKQolkC1ys+FafO3KpGu2PT3ouUr1TA+0bwb7XrDYyRxX6UtP1S2L0df0qD1Cbx/NxUm6tUXtuVbQ==--mCOjry5sgY0l1ynDPeIFBQ==--ZKOM2Kp2aH3KWcX",
  • "endpoints": [
    ],
  • "servers": [
    ],
  • "system-config": {
    }
}

Listar configurações

Obtém a lista de configurações do usuário

Authorizations:
Access-Token
query Parameters
group
string
Enum: "admin" "producer"
Example: group=admin,producer

Grupo das configurações a serem filtradas na consulta. Aceita mais de um valor, separando por vírgula

Responses

Response Schema: application/json
Any of
logo
string

Imagem do logotipo codificada como Data URL

color
string

Cor principal

text
string

Texto padrão

interest_rate_type
string
Enum: "CETIP" "SELIC" "OTHER"

Tipo da taxa que será utilizada nas simulações

interest_rate_value
number

Valor da taxa que será utilizada nas simulações, editável quando o tipo selecionado for OTHER

broker
string
Value: "OTHER"

Corretora utilizada pelo usuário

brokerage_fee
number

Taxa da corretora que será utilizada nas simulações, editável quando a corretora selecionada for OTHER

order_amount
integer

Quantidade de ativos que será utilizada nas simulações

simulate_price_strategy
string
Enum: "BOOK" "LAST" "THEORETICAL" "OPLAB"

Estratégia de preço para cálculo das simulações

position_price_strategy
Array of strings
Items Enum: "BOOK" "LAST" "THEORETICAL" "OPLAB"

Ordem de priorização do preço que será utilizado para cálculos quando o mercado estiver fechado

simulate_with_brokerage_and_fees
boolean

Indica se os valores de corretagem serão utilizados nas simulações

custom_perspective
Array of strings <= 11
Items Enum: "symbol" "bid" "ask" "mid" "vol" … 28 more

Lista de colunas que serão exibidas na perspectiva customizada da tela de análise

default_web_app_version
number or null

Versão da plataforma favorita do usuário

tinted_moneyness
integer [ 0 .. 50 ]

Intensidade da coloração de ITM e OTM na plataforma

side_watchlist
boolean

Indica se a barra lateral com as watchlists será exibida

robot_limit
integer

Limite máximo de robôs que o usuário pode ter em execução

close_positions_automatically
boolean

Indica se a plataforma deve fechar (criar uma contra-ordem simulada) as posições automaticamente ao final do dia de vencimento

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/users/settings' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "logo": "data:<mediatype>;base64,<data>",
  • "color": "#FFFFFF",
  • "text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin porttitor ut nulla nec blandit. Vivamus eu enim et elit imperdiet ullamcorper nec id justo. Sed et vestibulum lorem, ut euismod ante. Sed eu elementum augue, eu egestas lectus. Nam enim quam, viverra eu quam et, lacinia vulputate sem. Pellentesque lacinia gravida placerat. Nullam erat purus, mattis non dui vel, ultricies malesuada arcu. Ut dictum neque eget nulla volutpat, ac maximus purus malesuada. Proin quis ligula semper, tincidunt odio et, aliquet nulla.",
  • "interest_rate_type": "SELIC",
  • "interest_rate_value": 2.649873258040536,
  • "broker": "OTHER",
  • "brokerage_fee": 0.8,
  • "order_amount": 1000,
  • "simulate_price_strategy": "OPLAB",
  • "position_price_strategy": [
    ],
  • "simulate_with_brokerage_and_fees": true,
  • "custom_perspective": [
    ],
  • "default_web_app_version": null,
  • "tinted_moneyness": 10,
  • "side_watchlist": true,
  • "robot_limit": 10,
  • "close_positions_automatically": false
}

Atualizar configurações

Atualiza as configurações gerais da conta do usuário, com exceção de permissões administrativas

Authorizations:
Access-Token
Request Body schema: application/json
preferences
required
string

Configurações gerais do usuário

Responses

Request samples

Content type
application/json
{
  • "preferences": "{\"interest_rate_type\": \"SELIC\", \"interest_rate_value\": 2.649873258040536, \"broker\": \"OTHER\", \"brokerage_fee\": 0.8, \"order_amount\": 1000, \"simulate_price_strategy\": \"LAST\", \"position_price_strategy\": [\"BOOK\",\"LAST\",\"THEORETICAL\"], \"simulate_with_brokerage_and_fees\": true, \"custom_perspective\": [\"bid\",\"ask\"], \"default_web_app_version\": null, \"tinted_moneyness\": 10, \"side_watchlist\": true, \"robot_limit\": 10, \"close_positions_automatically\": false}"
}

Alterar configurações de publicação

Altera e retorna as configurações de publicação do usuário

Authorizations:
Access-Token
Request Body schema: application/json
logo
string

Imagem do logotipo codificada como Data URL

color
string

Cor principal

text
string

Texto padrão

Responses

Response Schema: application/json
logo
string

Imagem do logotipo codificada como Data URL

color
string

Cor principal

text
string

Texto padrão

Request samples

Content type
application/json
{
  • "logo": "data:<mediatype>;base64,<data>",
  • "color": "#FFFFFF",
  • "text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin porttitor ut nulla nec blandit. Vivamus eu enim et elit imperdiet ullamcorper nec id justo. Sed et vestibulum lorem, ut euismod ante. Sed eu elementum augue, eu egestas lectus. Nam enim quam, viverra eu quam et, lacinia vulputate sem. Pellentesque lacinia gravida placerat. Nullam erat purus, mattis non dui vel, ultricies malesuada arcu. Ut dictum neque eget nulla volutpat, ac maximus purus malesuada. Proin quis ligula semper, tincidunt odio et, aliquet nulla."
}

Response samples

Content type
application/json
{
  • "logo": "data:<mediatype>;base64,<data>",
  • "color": "#FFFFFF",
  • "text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin porttitor ut nulla nec blandit. Vivamus eu enim et elit imperdiet ullamcorper nec id justo. Sed et vestibulum lorem, ut euismod ante. Sed eu elementum augue, eu egestas lectus. Nam enim quam, viverra eu quam et, lacinia vulputate sem. Pellentesque lacinia gravida placerat. Nullam erat purus, mattis non dui vel, ultricies malesuada arcu. Ut dictum neque eget nulla volutpat, ac maximus purus malesuada. Proin quis ligula semper, tincidunt odio et, aliquet nulla."
}

Alterar usuário

Altera os dados do usuário

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do usuário

Request Body schema: application/json
name
string

Nome do usuário

document_type
string
Default: "CPF"
Enum: "CPF" "CNPJ" "Passport"

Tipo de documento que será informado

document_number
string

Número do documento do usuário

phone_area_code
string

DDD do telefone

phone_number
string

Número do telefone

Responses

Request samples

Content type
application/json
{
  • "name": "João",
  • "document_type": "CPF",
  • "document_number": "12345678900",
  • "phone_area_code": "11",
  • "phone_number": "12345678"
}

Response samples

Content type
application/json
{
  • "error": "string"
}

Listar usuários do tipo consultor

Lista todos os usuários do tipo consultor de investimentos

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
id
integer

ID do usuário

name
string

Nome do usuário

email
string <email>

E-mail do usuário

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/users/advisors' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[]

Portfólios

Listar portfólios

Obtém uma lista com todos os portfólios do usuário

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
id
integer

ID do portfólio

user_id
integer

ID do usuário

created_at
string <date-time>

Data em que o portfólio foi criado

updated_at
string <date-time>

Data da última alteração do portfólio

active
boolean

Indica se o portfólio está ativo

name
string <nullable>

Nome do portfólio

is_default
boolean

Indica se é o portfólio padrão do usuário

Array of OptionPosition (object) or StockOrBondPosition (object)

Lista com as posições do portfólio

balancings
Array of strings

Lista com os balanceamentos do portfólio

is_shared
boolean

Indica se o portfólio é compartilhado

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Incluir portfólio

Inclui um novo portfólio vazio na conta do usuário

Authorizations:
Access-Token
Request Body schema: application/json
name
string

Nome do portfólio

active
boolean

Indica se o portfólio está ativo

Responses

Response Schema: application/json
id
integer

ID do portfólio

user_id
integer

ID do usuário

created_at
string <date-time>

Data em que o portfólio foi criado

updated_at
string <date-time>

Data da última alteração do portfólio

active
boolean

Indica se o portfólio está ativo

name
string <nullable>

Nome do portfólio

is_default
boolean

Indica se é o portfólio padrão do usuário

Array of OptionPosition (object) or StockOrBondPosition (object)

Lista com as posições do portfólio

balancings
Array of strings

Lista com os balanceamentos do portfólio

is_shared
boolean

Indica se o portfólio é compartilhado

Request samples

Content type
application/json
{
  • "name": "Novo portfólio",
  • "active": true
}

Response samples

Content type
application/json
{
  • "id": 16519,
  • "user_id": 10518,
  • "created_at": "2020-06-21T18:23:35.238-03:00",
  • "updated_at": "2020-06-21T18:23:35.238-03:00",
  • "active": true,
  • "name": "Meu portfólio",
  • "is_default": true,
  • "positions": [
    ],
  • "balancings": [ ],
  • "is_shared": false
}

Consultar portfólio

Obtém um objeto com os dados do portfólio especificado

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Responses

Response Schema: application/json
id
integer

ID do portfólio

user_id
integer

ID do usuário

created_at
string <date-time>

Data em que o portfólio foi criado

updated_at
string <date-time>

Data da última alteração do portfólio

active
boolean

Indica se o portfólio está ativo

name
string <nullable>

Nome do portfólio

is_default
boolean

Indica se é o portfólio padrão do usuário

Array of OptionPosition (object) or StockOrBondPosition (object)

Lista com as posições do portfólio

balancings
Array of strings

Lista com os balanceamentos do portfólio

is_shared
boolean

Indica se o portfólio é compartilhado

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 16519,
  • "user_id": 10518,
  • "created_at": "2020-06-21T18:23:35.238-03:00",
  • "updated_at": "2020-06-21T18:23:35.238-03:00",
  • "active": true,
  • "name": "Meu portfólio",
  • "is_default": true,
  • "positions": [
    ],
  • "balancings": [ ],
  • "is_shared": false
}

Alterar portfólio

Altera os dados do portfólio especificado

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Request Body schema: application/json
name
string

Nome do portfólio

active
boolean

Indica se o portfólio está ativo

Responses

Response Schema: application/json
id
integer

ID do portfólio

user_id
integer

ID do usuário

created_at
string <date-time>

Data em que o portfólio foi criado

updated_at
string <date-time>

Data da última alteração do portfólio

active
boolean

Indica se o portfólio está ativo

name
string <nullable>

Nome do portfólio

is_default
boolean

Indica se é o portfólio padrão do usuário

Array of OptionPosition (object) or StockOrBondPosition (object)

Lista com as posições do portfólio

balancings
Array of strings

Lista com os balanceamentos do portfólio

is_shared
boolean

Indica se o portfólio é compartilhado

Request samples

Content type
application/json
{
  • "name": "Novo portfólio",
  • "active": true
}

Response samples

Content type
application/json
{
  • "id": 16519,
  • "user_id": 10518,
  • "created_at": "2020-06-21T18:23:35.238-03:00",
  • "updated_at": "2020-06-21T18:23:35.238-03:00",
  • "active": true,
  • "name": "Meu portfólio",
  • "is_default": true,
  • "positions": [
    ],
  • "balancings": [ ],
  • "is_shared": false
}

Remover portfólio

Remove os dados do portfólio especificado

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/portfolios/{id}' \
  -H 'Access-Token: {access-token}'

Definir portfólio como padrão

Define o portfólio especificado como padrão

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Responses

Request samples

curl -i -X PUT \
  https://api.oplab.com.br/v3/domain/portfolios/{id}/default \
  -H 'Access-Token: {access-token}'

Consultar retorno do portfólio

Obtém uma lista com os dados de retorno do portfólio especificado

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

query Parameters
from
string <date-time>
Example: from=20210305

Data de início da consulta

to
string <date-time>
Example: to=20210505

Data de fim da consulta

Responses

Response Schema: application/json
Array
time
string <date>

Data de referência

total_purchases
number

Total financeiro de compra

total_sales
number

Total financeiro de venda

balance
number

Balanço financeiro

acc_balance
number

Balanço financeiro acumulado

mtm
number

Valor a mercado considerando todas as posições do portfólio

return
number

Taxa de retorno

xirr
number

Taxa interna de retorno. Cálculo ainda não implementado

warranty
number

Caixa do dia

acc_warranty
number

Caixa acumulado

pnl
number

Retorno financeiro absoluto

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{id}/returns?from={from}&to={to}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Consultar tags do portfólio

Obtém uma lista das tags associadas ao portfólio especificado

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Responses

Response Schema: application/json
Array
string

Tags associadas. Tags com prefixo '$' são associadas na criação das posições

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{id}/tags' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • "$shares",
  • "$stock",
  • "$staged"
]

Ativar sincronização do portfólio

Habilita a sincronização do portfólio especificado com uma fonte de dados

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Request Body schema: application/json
sync_strategy
string
Value: "b3"

Nome da fonte de dados

Responses

Response Schema: application/json
link
string

Link para o usuário autorizar a sincronização na fonte de dados

Request samples

Content type
application/json
{
  • "sync_strategy": "b3"
}

Response samples

Content type
application/json

Desativar sincronização do portfólio

Desabilita a sincronização do portfólio especificado

Authorizations:
Access-Token
path Parameters
id
required
integer

ID do portfólio

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/portfolios/{id}/synchronize' \
  -H 'Access-Token: {access-token}'

Listar compartilhamentos

Obtém uma lista com os compartilhamentos do portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

Responses

Response Schema: application/json
Array
id
integer

ID do compartilhamento de portfólio

portfolio_id
integer

ID do portfólio

object

Dados do usuário consultor de investimentos

access_level
string
Enum: "read" "write"

Nível de acesso do compartilhamento

status
string
Enum: "inactive" "active"

Status do compartilhamento

created_at
string <date-time>

Data em que o objeto foi criado

updated_at
string <date-time>

Data da última alteração do objeto

canceled_at
string or null <date-time>

Data em que o compartilhamento foi cancelado

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/{portfolio_id}/shared_portfolios' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Criar compartilhamento

Cria um novo compartilhamento para o portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

Request Body schema: application/json
advisor_id
required
integer

ID do usuário consultor de investimentos

access_level
string
Enum: "read" "write"

Nível de acesso a ser concedido

Responses

Response Schema: application/json
id
integer

ID do compartilhamento de portfólio

portfolio_id
integer

ID do portfólio

object

Dados do usuário consultor de investimentos

access_level
string
Enum: "read" "write"

Nível de acesso do compartilhamento

status
string
Enum: "inactive" "active"

Status do compartilhamento

created_at
string <date-time>

Data em que o objeto foi criado

updated_at
string <date-time>

Data da última alteração do objeto

canceled_at
string or null <date-time>

Data em que o compartilhamento foi cancelado

Request samples

Content type
application/json
{
  • "advisor_id": 2,
  • "access_level": "read"
}

Response samples

Content type
application/json
{
  • "id": 5,
  • "portfolio_id": 16519,
  • "advisor": {},
  • "access_level": "read",
  • "status": "active",
  • "created_at": "2024-05-10T18:23:35.238-03:00",
  • "updated_at": "2024-05-10T18:23:35.238-03:00",
  • "canceled_at": null
}

Consultar um compartilhamento

Obtém um objeto com os dados do compartilhamento de portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID do compartilhamento de portfólio

Responses

Response Schema: application/json
id
integer

ID do compartilhamento de portfólio

portfolio_id
integer

ID do portfólio

object

Dados do usuário consultor de investimentos

access_level
string
Enum: "read" "write"

Nível de acesso do compartilhamento

status
string
Enum: "inactive" "active"

Status do compartilhamento

created_at
string <date-time>

Data em que o objeto foi criado

updated_at
string <date-time>

Data da última alteração do objeto

canceled_at
string or null <date-time>

Data em que o compartilhamento foi cancelado

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/{portfolio_id}/shared_portfolios/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 5,
  • "portfolio_id": 16519,
  • "advisor": {},
  • "access_level": "read",
  • "status": "active",
  • "created_at": "2024-05-10T18:23:35.238-03:00",
  • "updated_at": "2024-05-10T18:23:35.238-03:00",
  • "canceled_at": null
}

Alterar compartilhamento

Altera o nível de acesso do compartilhamento de portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID do compartilhamento de portfólio

Request Body schema: application/json
access_level
string

Nível de acesso a ser concedido

Responses

Response Schema: application/json
id
integer

ID do compartilhamento de portfólio

portfolio_id
integer

ID do portfólio

object

Dados do usuário consultor de investimentos

access_level
string
Enum: "read" "write"

Nível de acesso do compartilhamento

status
string
Enum: "inactive" "active"

Status do compartilhamento

created_at
string <date-time>

Data em que o objeto foi criado

updated_at
string <date-time>

Data da última alteração do objeto

canceled_at
string or null <date-time>

Data em que o compartilhamento foi cancelado

Request samples

Content type
application/json
{
  • "access_level": "write"
}

Response samples

Content type
application/json
{
  • "id": 5,
  • "portfolio_id": 16519,
  • "advisor": {},
  • "access_level": "read",
  • "status": "active",
  • "created_at": "2024-05-10T18:23:35.238-03:00",
  • "updated_at": "2024-05-10T18:23:35.238-03:00",
  • "canceled_at": null
}

Desativar compartilhamento

Desativa o compartilhamento de portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID do compartilhamento de portfólio

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/{portfolio_id}/shared_portfolios/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "error": "string"
}

Estratégias

Listar estratégias

Obtém uma lista com todas as estratégias do portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

query Parameters
status
string
Default: "open"
Enum: "open" "all"

Status das posições da estratégia a serem listadas

Responses

Response Schema: application/json
Array
id
integer

ID da estratégia

name
string or null

Nome da estratégia

created_at
string <date-time>

Data que a estratégia foi criada

updated_at
string <date-time>

Data da última atualização dos dados

user_id
integer

ID do usuário

underlying
string

Código de negociação do ativo alvo

published_at
string or null <date-time>

Data que a estratégia deve ser publicada

expired_at
string or null <date-time>

Data que a estratégia deve ser expirada

short_description
string or null

Descrição resumida da estratégia

description
string or null

Descrição completa da estratégia

Array of OptionPositionStrategy (object) or StockOrBondPositionStrategy (object)

Posições relacionadas à estratégia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/strategies?status={status}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Incluir estratégia

Inclui uma estratégia no portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

Request Body schema: application/json
name
string or null

Nome da estratégia

underlying
string

Código de negociação do ativo alvo

origin
string
Default: "simulator"
Enum: "simulator" "order_ticket"

Origem da estratégia

Array of objects

Posições relacionadas à estratégia

published_at
string <date-time>

Data que a estratégia deve ser publicada. Campo válido apenas para estratégias que serão publicadas

expired_at
string <date-time>

Data que a estratégia deve ser expirada. Campo válido apenas para estratégias que serão publicadas

short_description
string <= 144

Descrição resumida da estratégia. Campo válido apenas para estratégias que serão publicadas

description
string

Descrição completa da estratégia. Campo válido apenas para estratégias que serão publicadas

Responses

Response Schema: application/json
id
integer

ID da estratégia

name
string or null

Nome da estratégia

created_at
string <date-time>

Data que a estratégia foi criada

updated_at
string <date-time>

Data da última atualização dos dados

user_id
integer

ID do usuário

underlying
string

Código de negociação do ativo alvo

published_at
string or null <date-time>

Data que a estratégia deve ser publicada

expired_at
string or null <date-time>

Data que a estratégia deve ser expirada

short_description
string or null

Descrição resumida da estratégia

description
string or null

Descrição completa da estratégia

Array of OptionDetailedPosition (object) or StockOrBondDetailedPosition (object)

Posições relacionadas à estratégia

Request samples

Content type
application/json
{
  • "name": "Venda coberta",
  • "underlying": "ABEV3",
  • "origin": "order_ticket",
  • "positions": [
    ],
  • "published_at": "2023-07-07",
  • "expired_at": "2023-07-13",
  • "short_description": "Teste",
  • "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin porttitor ut nulla nec blandit. Vivamus eu enim et elit imperdiet ullamcorper nec id justo. Sed et vestibulum lorem, ut euismod ante. Sed eu elementum augue, eu egestas lectus. Nam enim quam, viverra eu quam et, lacinia vulputate sem. Pellentesque lacinia gravida placerat. Nullam erat purus, mattis non dui vel, ultricies malesuada arcu. Ut dictum neque eget nulla volutpat, ac maximus purus malesuada. Proin quis ligula semper, tincidunt odio et, aliquet nulla."
}

Response samples

Content type
application/json
{
  • "id": 2502,
  • "name": "Venda coberta",
  • "created_at": "2021-09-17T19:33:00.568-03:00",
  • "updated_at": "2021-09-17T19:33:00.568-03:00",
  • "user_id": 10518,
  • "underlying": "PETR3",
  • "published_at": null,
  • "expired_at": null,
  • "short_description": null,
  • "description": null,
  • "positions": [
    ]
}

Consultar estratégia

Obtém um objeto com os dados da estratégia especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da estratégia

Responses

Response Schema: application/json
id
integer

ID da estratégia

name
string or null

Nome da estratégia

created_at
string <date-time>

Data que a estratégia foi criada

updated_at
string <date-time>

Data da última atualização dos dados

user_id
integer

ID do usuário

underlying
string

Código de negociação do ativo alvo

published_at
string or null <date-time>

Data que a estratégia deve ser publicada

expired_at
string or null <date-time>

Data que a estratégia deve ser expirada

short_description
string or null

Descrição resumida da estratégia

description
string or null

Descrição completa da estratégia

Array of OptionPositionStrategy (object) or StockOrBondPositionStrategy (object)

Posições relacionadas à estratégia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/strategies/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 2502,
  • "name": "Venda coberta",
  • "created_at": "2021-06-30T17:07:21.640-03:00",
  • "updated_at": "2021-06-30T17:07:21.640-03:00",
  • "user_id": 10518,
  • "underlying": "ABEV3",
  • "published_at": null,
  • "expired_at": null,
  • "short_description": null,
  • "description": null,
  • "positions": [
    ]
}

Remover estratégia

Remove uma estratégia do portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da estratégia

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/strategies/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "error": "string"
}

Renomear estratégia

Renomeia a estratégia especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da estratégia

Request Body schema: application/json
name
string

Novo nome da estratégia

Responses

Response Schema: application/json
id
integer

ID da estratégia

name
string or null

Nome da estratégia

created_at
string <date-time>

Data que a estratégia foi criada

updated_at
string <date-time>

Data da última atualização dos dados

user_id
integer

ID do usuário

underlying
string

Código de negociação do ativo alvo

published_at
string or null <date-time>

Data que a estratégia deve ser publicada

expired_at
string or null <date-time>

Data que a estratégia deve ser expirada

short_description
string or null

Descrição resumida da estratégia

description
string or null

Descrição completa da estratégia

Array of OptionPositionStrategy (object) or StockOrBondPositionStrategy (object)

Posições relacionadas à estratégia

Request samples

Content type
application/json
{
  • "name": "Estratégia renomeada"
}

Response samples

Content type
application/json
{
  • "id": 2502,
  • "name": "Venda coberta",
  • "created_at": "2021-06-30T17:07:21.640-03:00",
  • "updated_at": "2021-06-30T17:07:21.640-03:00",
  • "user_id": 10518,
  • "underlying": "ABEV3",
  • "published_at": null,
  • "expired_at": null,
  • "short_description": null,
  • "description": null,
  • "positions": [
    ]
}

Consolidar estratégia

Consolida e retorna uma lista com os dados das posições da estratégia especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da estratégia

Responses

Response Schema: application/json
Array
Any of
id
integer

ID da posição

portfolio_id
integer

ID do portfólio

amount
number

Quantidade de ativos

average_price
number

Preço médio de compra/venda

weight
number

Peso da posição no portfólio

tags
Array of strings

Tags associadas a posição

object or null

Estratégia que a posição está associada

object

Balanço financeiro da posição

exchange
string
Enum: "BCB" "BOVESPA"

Sigla da responsável pela negociação

type
string
Value: "option"

Tipo de ativo

name
string

Nome da companhia, valor do strike e data de vencimento da opção

symbol
string

Código de negociação da opção

Array of objects
object

Informações do ativo alvo

object

Informações de mercado da opção

object

Informações gerais da opção

quant
null

Informações quantitativas

staged
boolean

Indica se é uma posição simulada

Request samples

curl -i -X PUT \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/strategies/{id}/commit' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "id": 41816,
  • "portfolio_id": 16519,
  • "amount": 100,
  • "average_price": 1.25,
  • "weight": 0,
  • "tags": [
    ],
  • "strategy": {
    },
  • "balance": {
    },
  • "exchange": "BOVESPA",
  • "type": "option",
  • "name": "B3 ON R$ 16.37 16-07-2021",
  • "symbol": "B3SAG501",
  • "robots": [ ],
  • "underlying_asset": {
    },
  • "market": {
    },
  • "info": {
    },
  • "quant": null,
  • "staged": false
}

Fechar estratégia

Fecha as posições da estratégia especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da estratégia

Request Body schema: application/json
exercise
Array of integers

IDs da posições a serem exercidas

Responses

Response Schema: application/json
id
integer

ID da estratégia

name
string or null

Nome da estratégia

created_at
string <date-time>

Data que a estratégia foi criada

updated_at
string <date-time>

Data da última atualização dos dados

user_id
integer

ID do usuário

underlying
string

Código de negociação do ativo alvo

published_at
string or null <date-time>

Data que a estratégia deve ser publicada

expired_at
string or null <date-time>

Data que a estratégia deve ser expirada

short_description
string or null

Descrição resumida da estratégia

description
string or null

Descrição completa da estratégia

Array of OptionDetailedPosition (object) or StockOrBondDetailedPosition (object)

Posições relacionadas à estratégia

Request samples

Content type
application/json
{
  • "exercise": [
    ]
}

Response samples

Content type
application/json
{
  • "id": 2502,
  • "name": "Venda coberta",
  • "created_at": "2021-09-17T19:33:00.568-03:00",
  • "updated_at": "2021-09-17T19:33:00.568-03:00",
  • "user_id": 10518,
  • "underlying": "PETR3",
  • "published_at": null,
  • "expired_at": null,
  • "short_description": null,
  • "description": null,
  • "positions": [
    ]
}

Posições

Listar posições

Obtém uma lista com as posições do portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

query Parameters
status
string
Default: "open"
Enum: "open" "closed" "all"

Status das posições a serem listadas

Responses

Response Schema: application/json
Array
Any of
id
integer

ID da posição

portfolio_id
integer

ID do portfólio

amount
number

Quantidade de ativos

average_price
number

Preço médio de compra/venda

weight
number

Peso da posição no portfólio

tags
Array of strings

Tags associadas a posição

object or null

Estratégia que a posição está associada

object

Balanço financeiro da posição

exchange
string
Enum: "BCB" "BOVESPA"

Sigla da responsável pela negociação

type
string
Value: "option"

Tipo de ativo

name
string

Nome da companhia, valor do strike e data de vencimento da opção

symbol
string

Código de negociação da opção

Array of objects
object

Informações do ativo alvo

object

Informações de mercado da opção

object

Informações gerais da opção

quant
null

Informações quantitativas

staged
boolean

Indica se é uma posição simulada

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions?status={status}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
[
  • {
    }
]

Consultar uma posição

Obtém um objeto com os dados da posição especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

Responses

Response Schema: application/json
Any of
id
integer

ID da posição

portfolio_id
integer

ID do portfólio

amount
number

Quantidade de ativos

average_price
number

Preço médio de compra/venda

weight
number

Peso da posição no portfólio

tags
Array of strings

Tags associadas a posição

object or null

Estratégia que a posição está associada

object

Balanço financeiro da posição

exchange
string
Enum: "BCB" "BOVESPA"

Sigla da responsável pela negociação

type
string
Value: "option"

Tipo de ativo

name
string

Nome da companhia, valor do strike e data de vencimento da opção

symbol
string

Código de negociação da opção

Array of objects
object

Informações do ativo alvo

object

Informações de mercado da opção

object

Informações gerais da opção

quant
null

Informações quantitativas

staged
boolean

Indica se é uma posição simulada

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "id": 41816,
  • "portfolio_id": 16519,
  • "amount": 100,
  • "average_price": 1.25,
  • "weight": 0,
  • "tags": [
    ],
  • "strategy": {
    },
  • "balance": {
    },
  • "exchange": "BOVESPA",
  • "type": "option",
  • "name": "B3 ON R$ 16.37 16-07-2021",
  • "symbol": "B3SAG501",
  • "robots": [ ],
  • "underlying_asset": {
    },
  • "market": {
    },
  • "info": {
    },
  • "quant": null,
  • "staged": false
}

Alterar uma posição

Altera os dados da posição especificada, podendo move-la para outra estratégia (nova ou existente)

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

Request Body schema: application/json
name
string

Nome da posição

positive_scenario_probability
number

Taxa de probabilidade de lucro

strategy_id
integer

ID da estratégia para associar a posição, quando nulo será criada uma nova estratégia

strategy_name
string

Nome da nova estratégia para associar a posição

orders
Array of integers

IDs das ordens que serão movidas para a estratégia, quando nulo todas as ordens serão movidas

Responses

Response Schema: application/json
Array
Any of
id
integer

ID da posição

portfolio_id
integer

ID do portfólio

amount
number

Quantidade de ativos

average_price
number

Preço médio de compra/venda

weight
number

Peso da posição no portfólio

tags
Array of strings

Tags associadas a posição

object or null

Estratégia que a posição está associada

object

Balanço financeiro da posição

exchange
string
Enum: "BCB" "BOVESPA"

Sigla da responsável pela negociação

type
string
Value: "option"

Tipo de ativo

name
string

Nome da companhia, valor do strike e data de vencimento da opção

symbol
string

Código de negociação da opção

Array of objects
object

Informações do ativo alvo

object

Informações de mercado da opção

object

Informações gerais da opção

quant
null

Informações quantitativas

staged
boolean

Indica se é uma posição simulada

Request samples

Content type
application/json
{
  • "name": "Exemplo",
  • "positive_scenario_probability": 10,
  • "strategy_id": 1,
  • "strategy_name": "Estratégia nova",
  • "orders": [
    ]
}

Response samples

Content type
application/json
Example
[
  • {
    }
]

Remover uma posição

Remove os dados da posição especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "error": "string"
}

Incluir tag em uma posição

Inclui uma determinada tag na posição especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

tag
required
string

Tag a ser incluida

Responses

Request samples

curl -i -X PUT \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{id}/tag/{tag}' \
  -H 'Access-Token: {access-token}'

Remover tag de uma posição

Remove uma determinada tag da posição especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

tag
required
string

Tag a ser removida

Responses

Request samples

curl -i -X PUT \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{id}/untag/{tag}' \
  -H 'Access-Token: {access-token}'

Consolidar uma posição

Consolida uma posição simulada especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

Responses

Response Schema: application/json
Any of
id
integer

ID da posição

portfolio_id
integer

ID do portfólio

amount
number

Quantidade de ativos

average_price
number

Preço médio de compra/venda

weight
number

Peso da posição no portfólio

tags
Array of strings

Tags associadas a posição

object or null

Estratégia que a posição está associada

object

Balanço financeiro da posição

exchange
string
Enum: "BCB" "BOVESPA"

Sigla da responsável pela negociação

type
string
Value: "option"

Tipo de ativo

name
string

Nome da companhia, valor do strike e data de vencimento da opção

symbol
string

Código de negociação da opção

Array of objects
object

Informações do ativo alvo

object

Informações de mercado da opção

object

Informações gerais da opção

quant
null

Informações quantitativas

staged
boolean

Indica se é uma posição simulada

Request samples

curl -i -X PUT \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{id}/commit' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "id": 41816,
  • "portfolio_id": 16519,
  • "amount": 100,
  • "average_price": 1.25,
  • "weight": 0,
  • "tags": [
    ],
  • "strategy": {
    },
  • "balance": {
    },
  • "exchange": "BOVESPA",
  • "type": "option",
  • "name": "B3 ON R$ 16.37 16-07-2021",
  • "symbol": "B3SAG501",
  • "robots": [ ],
  • "underlying_asset": {
    },
  • "market": {
    },
  • "info": {
    },
  • "quant": null,
  • "staged": false
}

Fechar uma posição

Altera o status da posição especificada para fechada enviando uma contra-ordem

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da posição

Request Body schema: application/json
exercise
boolean

Indica se a posição será exercida

Responses

Response Schema: application/json
Any of
id
integer

ID da posição

portfolio_id
integer

ID do portfólio

amount
number

Quantidade de ativos

average_price
number

Preço médio de compra/venda

weight
number

Peso da posição no portfólio

tags
Array of strings

Tags associadas a posição

object or null

Estratégia que a posição está associada

object

Balanço financeiro da posição

exchange
string
Enum: "BCB" "BOVESPA"

Sigla da responsável pela negociação

type
string
Value: "option"

Tipo de ativo

name
string

Nome da companhia, valor do strike e data de vencimento da opção

symbol
string

Código de negociação da opção

Array of objects
object

Informações do ativo alvo

object

Informações de mercado da opção

object

Informações gerais da opção

quant
null

Informações quantitativas

staged
boolean

Indica se é uma posição simulada

Request samples

Content type
application/json
{
  • "exercise": true
}

Response samples

Content type
application/json
Example
{
  • "id": 41816,
  • "portfolio_id": 16519,
  • "amount": 100,
  • "average_price": 1.25,
  • "weight": 0,
  • "tags": [
    ],
  • "strategy": {
    },
  • "balance": {
    },
  • "exchange": "BOVESPA",
  • "type": "option",
  • "name": "B3 ON R$ 16.37 16-07-2021",
  • "symbol": "B3SAG501",
  • "robots": [ ],
  • "underlying_asset": {
    },
  • "market": {
    },
  • "info": {
    },
  • "quant": null,
  • "staged": false
}

Ordens

Listar ordens de um portfólio

Obtém uma lista com as ordens do portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

query Parameters
from
string <date-time>

Data de início da consulta

to
string <date-time>

Data de fim da consulta

page
integer

Número da página da pesquisa

per
integer

Quantidade de itens por página

ticker
string
Example: ticker=PETR

Código do ativo das ordens a serem listadas, pode ser informado um valor parcial

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem das ordens a serem listadas. Aceita mais de um valor, separando por vírgula

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status das ordens a serem listadas. Aceita mais de um valor, separando por vírgula. Obs: Quando o valor partially_filled é passado, as ordens canceladas ou expiradas que anteriormente foram executadas parcialmente serão retornadas

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordens a serem listadas. Aceita mais de um valor, separando por vírgula

side
string
Enum: "SELL" "BUY"

Lado das ordens a serem listadas. Aceita mais de um valor, separando por vírgula

show_position
boolean
Default: true

Determina se as ordens devem incluir as informações da posição

Responses

Response Headers
Total-Pages
integer
Example: 147

Número total de páginas considerando o parâmetro Page-Size

Page-Size
integer
Example: 200

Tamanho das páginas

Current-Page
integer
Example: 5

Número da página atual

Response Schema: application/json
Array
Any of
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

object

Posição a qual a ordem pertence

object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/orders?from={from}&to={to}&page={page}&per={per}&ticker={ticker}&origin={origin}&status={status}&order_type={order_type}&side={side}&show_position={show_position}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
[
  • {
    }
]

Incluir ordem em um portfólio

Inclui uma ordem no portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

Request Body schema: application/json
Array
symbol
required
string

Código de negociação do instrumento

price
required
number

Preço unitário do papel. Obrigatório, com exceção de quando o order_type é market

amount
required
number

Quantidade de papéis

side
required
string
Enum: "SELL" "BUY"

Tipo de ordem

order_type
string
Default: "manual"
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem. Para ordens não roteadas, o tipo deve ser manual

origin
string
Default: "simulator"
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

time_in_force
string
Default: "day"
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

brokerage
number

Taxa da corretora

status
string
Default: "pending"
Enum: "pending" "filled" "staged"

Status da ordem. Só é considerado em ordens do tipo manual

trading_account_id
integer

ID da conta de trade. Define se a ordem será roteada

created_at
string <date-time>

Data que a ordem foi criada

expires_at
string <date-time>

Data de expiração da ordem. Obrigatório quando o order_type é limit ou stop_limit

trigger_price
number

Preço de gatilho para ordens stop_limit. Obrigatório quando o order_type é stop_limit

executed_at
string <date-time>

Data que a ordem foi executada. Só é considerada em ordens do tipo manual

tags
Array of strings

Tags associadas a ordem

Responses

Response Schema: application/json
Array
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Consultar ordem de um portfólio

Obtém um objeto com os dados da ordem especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da ordem

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/orders/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Alterar ordem de um portfólio

Altera os dados da ordem especificada do portfólio

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da ordem

Request Body schema: application/json
price
number

Preço unitário do papel

amount
number

Quantidade de papéis

side
string
Enum: "SELL" "BUY"

Tipo de ordem

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

trigger_price
number

Preço de gatilho para ordens stop_limit

expires_at
string <date-time>

Data de expiração da ordem

executed_at
string <date-time>

Data que a ordem foi executada. Só pode ser alterada em ordens do tipo manual

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

Content type
application/json
{
  • "price": 28,
  • "amount": 1000,
  • "side": "BUY",
  • "time_in_force": "day",
  • "trigger_price": 28.1,
  • "expires_at": "2021-06-24T02:59:59.999Z",
  • "executed_at": null
}

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Remover ordem de um portfólio

Cancela a ordem especificada do portfólio

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da ordem

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/orders/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Executar ordem do portfólio

Executa a ordem especificada do portfólio, a ordem deve ser do tipo manual e estar com status pending

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

id
required
integer

ID da ordem

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X POST \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/orders/{id}/execute' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Contar ordens pendentes de um portfólio

Obtém a quantidade de ordens pendentes do portfólio especificado

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

Responses

Response Schema: application/json
count
integer

Quantidade de ordens pendentes

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/orders/pending' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "count": 10
}

Exportar ordens de um portfólio

Executa um processo em segundo plano que gera um arquivo em formato CSV com todas as ordens contidas no portfólio especificado. Ao término do processamento, envia uma notificação via sistema com o link para download do arquivo

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

Responses

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/orders/{id}/export' \
  -H 'Access-Token: {access-token}'

Listar ordens de uma posição

Obtém uma lista com as ordens da posição especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

position_id
required
integer

ID da posição

query Parameters
from
string <date-time>

Data de início da consulta

to
string <date-time>

Data de fim da consulta

page
integer

Número da página da pesquisa

per
integer

Quantidade de itens por página

ticker
string
Example: ticker=PETR

Código do ativo das ordens a serem listadas, pode ser informado um valor parcial

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem das ordens a serem listadas. Aceita mais de um valor, separando por vírgula

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status das ordens a serem listadas. Aceita mais de um valor, separando por vírgula. Obs: Quando o valor partially_filled é passado, as ordens canceladas ou expiradas que anteriormente foram executadas parcialmente serão retornadas

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordens a serem listadas. Aceita mais de um valor, separando por vírgula

side
string
Enum: "SELL" "BUY"

Lado das ordens a serem listadas. Aceita mais de um valor, separando por vírgula

show_position
boolean
Default: true

Determina se as ordens devem incluir as informações da posição

Responses

Response Headers
Total-Pages
integer
Example: 147

Número total de páginas considerando o parâmetro Page-Size

Page-Size
integer
Example: 200

Tamanho das páginas

Current-Page
integer
Example: 5

Número da página atual

Response Schema: application/json
Array
Any of
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

object

Posição a qual a ordem pertence

object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{position_id}/orders?from={from}&to={to}&page={page}&per={per}&ticker={ticker}&origin={origin}&status={status}&order_type={order_type}&side={side}&show_position={show_position}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
[
  • {
    }
]

Incluir ordem em uma posição

Inclui uma ordem na posição especificada

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

position_id
required
integer

ID da posição

Request Body schema: application/json
Array
symbol
required
string

Código de negociação do instrumento

price
required
number

Preço unitário do papel. Obrigatório, com exceção de quando o order_type é market

amount
required
number

Quantidade de papéis

side
required
string
Enum: "SELL" "BUY"

Tipo de ordem

order_type
string
Default: "manual"
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem. Para ordens não roteadas, o tipo deve ser manual

origin
string
Default: "simulator"
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

time_in_force
string
Default: "day"
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

brokerage
number

Taxa da corretora

status
string
Default: "pending"
Enum: "pending" "filled" "staged"

Status da ordem. Só é considerado em ordens do tipo manual

trading_account_id
integer

ID da conta de trade. Define se a ordem será roteada

created_at
string <date-time>

Data que a ordem foi criada

expires_at
string <date-time>

Data de expiração da ordem. Obrigatório quando o order_type é limit ou stop_limit

trigger_price
number

Preço de gatilho para ordens stop_limit. Obrigatório quando o order_type é stop_limit

executed_at
string <date-time>

Data que a ordem foi executada. Só é considerada em ordens do tipo manual

tags
Array of strings

Tags associadas a ordem

Responses

Response Schema: application/json
Array
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Consultar ordem de uma posição

Obtém um objeto com os dados da ordem especificada da posição

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

position_id
required
integer

ID da posição

id
required
integer

ID da ordem

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{position_id}/orders/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Alterar ordem de uma posição

Altera os dados da ordem especificada da posição

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

position_id
required
integer

ID da posição

id
required
integer

ID da ordem

Request Body schema: application/json
price
number

Preço unitário do papel

amount
number

Quantidade de papéis

side
string
Enum: "SELL" "BUY"

Tipo de ordem

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

trigger_price
number

Preço de gatilho para ordens stop_limit

expires_at
string <date-time>

Data de expiração da ordem

executed_at
string <date-time>

Data que a ordem foi executada. Só pode ser alterada em ordens do tipo manual

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

Content type
application/json
{
  • "price": 28,
  • "amount": 1000,
  • "side": "BUY",
  • "time_in_force": "day",
  • "trigger_price": 28.1,
  • "expires_at": "2021-06-24T02:59:59.999Z",
  • "executed_at": null
}

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Remover ordem de uma posição

Cancela a ordem especificada da posição

Authorizations:
Access-Token
path Parameters
portfolio_id
required
integer

ID do portfólio

position_id
required
integer

ID da posição

id
required
integer

ID da ordem

Responses

Response Schema: application/json
id
integer

ID da ordem

order_type
string
Enum: "manual" "market" "limit" "stop_limit"

Tipo de ordem

action
integer
Enum: 1 -1
enumDescriptions: {"1":"Venda","-1":"Compra"}

Tipo de ordem

amount
number

Quantidade da ordem que foi executada

price
number

Preço pelo qual a ordem foi executada

status
string
Enum: "pending" "filled" "canceled" "staged" "created" … 12 more

Status atual da ordem

created_at
string <date-time>

Data que a ordem foi criada

updated_at
string <date-time>

Data que a ordem foi atualizada

brokerage
number or null

Taxa da corretora

symbol
string

Código de negociação do instrumento

expires_at
string or null <date-time>

Data de expiração de ordens limit ou stop_limit

executed_at
string or null <date-time>

Data que a ordem foi executada

trigger_price
number or null

Preço de gatilho para ordens stop_limit

target_price
number or null

Preço de compra/venda objetivo da ordem

target_amount
integer or null

Quantidade objetivo da ordem

origin
string
Enum: "simulator" "order_ticket" "robot"

Origem da ordem

broker_message
string or null

Mensagem da corretora

time_in_force
string
Enum: "day" "good_till_cancel" "at_the_opening" "immediate_or_cancel" "fill_or_kill" … 3 more

Tipo de validade da ordem

tags
string or null

Tags associadas a ordem separadas por vírgula

side
string
Enum: "SELL" "BUY"

Tipo de ordem

OptionPosition (object) or StockOrBondPosition (object)
object or null

Conta de trade em que a ordem foi enviada

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/portfolios/{portfolio_id}/positions/{position_id}/orders/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 11364,
  • "order_type": "market",
  • "action": -1,
  • "amount": 1000,
  • "price": 28,
  • "status": "filled",
  • "created_at": "2021-06-18T23:59:59.999-03:00",
  • "updated_at": "2021-06-29T20:31:39.967-03:00",
  • "brokerage": 0,
  • "symbol": "PETR3",
  • "expires_at": "2021-06-23T23:59:59.999-03:00",
  • "executed_at": "2021-06-22T15:54:41.654-03:00",
  • "trigger_price": 28.1,
  • "target_price": 28,
  • "target_amount": 1000,
  • "origin": "order_ticket",
  • "broker_message": null,
  • "time_in_force": "day",
  • "tags": null,
  • "side": "BUY",
  • "position": {
    },
  • "trading_account": {
    }
}

Watchlists

Listar watchlists

Obtém uma lista com todas as watchlists do usuário

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
id
integer

ID da watchlist

name
string or null

Nome da watchlist

is_default
boolean

Indica se é a watchlist padrão

sort
integer
Default: 1
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Array of objects

Lista de instrumentos da watchlist

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/watchlists' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Incluir watchlist

Inclui uma nova watchlist para o usuário

Authorizations:
Access-Token
Request Body schema: application/json
name
string

Nome da watchlist

is_default
boolean

Determina se esta será a watchlist padrão

sort
integer
Default: 1
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Responses

Response Schema: application/json
id
integer

ID da watchlist

name
string or null

Nome da watchlist

is_default
boolean

Indica se é a watchlist padrão

sort
integer
Default: 1
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Array of objects

Lista de instrumentos da watchlist

Request samples

Content type
application/json
{
  • "name": "Minha super watchlist",
  • "is_default": false,
  • "sort": 1
}

Response samples

Content type
application/json
{
  • "id": 25887,
  • "name": "Minha super watchlist",
  • "is_default": false,
  • "sort": 1,
  • "instruments": [ ]
}

Consultar watchlist

Obtém os dados da watchlist especificada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da watchlist. Enviando a palavra default, será obtida a watchlist padrão

Responses

Response Schema: application/json
id
integer

ID da watchlist

name
string or null

Nome da watchlist

is_default
boolean

Indica se é a watchlist padrão

sort
integer
Default: 1
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Array of objects

Lista de instrumentos da watchlist

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/watchlists/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 25887,
  • "name": "Minha watchlist favorita",
  • "is_default": true,
  • "sort": 1,
  • "instruments": [
    ]
}

Alterar watchlist

Altera os dados da watchlist determinada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da watchlist. Enviando a palavra default, será alterada a watchlist padrão

Request Body schema: application/json
name
string

Nome da watchlist

is_default
boolean

Determina se esta será a watchlist padrão

sort
integer
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Responses

Response Schema: application/json
id
integer

ID da watchlist

name
string or null

Nome da watchlist

is_default
boolean

Indica se é a watchlist padrão

sort
integer
Default: 1
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Array of objects

Lista de instrumentos da watchlist

Request samples

Content type
application/json
{
  • "name": "Minha watchlist favorita",
  • "is_default": true,
  • "sort": 1
}

Response samples

Content type
application/json
{
  • "id": 25887,
  • "name": "Minha watchlist favorita",
  • "is_default": true,
  • "sort": 1,
  • "instruments": [
    ]
}

Remover watchlist

Remove uma determinada watchlist

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da watchlist. Enviando a palavra default, será removida a watchlist padrão

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/watchlists/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "error": "string"
}

Incluir instrumento na watchlist

Inclui um determinado instrumento na watchlist determinada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da watchlist. Enviando a palavra default, será incluido na watchlist padrão

symbol
required
string

Código de negociação do instrumento

Request Body schema: application/json
weight
integer
Default: 0

Priorização do instrumento na lista (ordem crescente)

Responses

Response Schema: application/json
id
integer

ID da watchlist

name
string or null

Nome da watchlist

is_default
boolean

Indica se é a watchlist padrão

sort
integer
Default: 1
Enum: 1 -1 2 -2 3 … 1 more
enumDescriptions: {"1":"Código dos instrumentos crescente","2":"Preço atual crescente","3":"Variação do dia crescente","-1":"Código dos instrumentos decrescente","-2":"Preço atual decrescente","-3":"Variação do dia decrescente"}

Indica o tipo de ordenação dos instrumentos da watchlist no front

Array of objects

Lista de instrumentos da watchlist

Request samples

Content type
application/json
{
  • "weight": 10
}

Response samples

Content type
application/json
{
  • "id": 25887,
  • "name": "Minha watchlist favorita",
  • "is_default": true,
  • "sort": 1,
  • "instruments": [
    ]
}

Remover instrumento da watchlist

Remove um determinado instrumento da watchlist determinada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da watchlist. Enviando a palavra default, será removido da watchlist padrão

symbol
required
string

Código de negociação do instrumento

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/watchlists/{id}/{symbol}' \
  -H 'Access-Token: {access-token}'

Notificações

Listar notificações

Obtém uma lista com todas as notificações recebidas do usuário

Authorizations:
Access-Token
query Parameters
page
integer

Número da página da pesquisa

per
integer

Quantidade de itens por página

Responses

Response Schema: application/json
Array
id
integer

ID da notificação

read_at
string or null <date-time>

Data que o usuário leu a notificação

ack_at
string or null <date-time>

Data que o usuário aceitou a notificação

sent_at
string <date-time>

Data que a notificação foi enviada

deleted_at
string or null <date-time>

Data que o usuário apagou a notificação

object (MessageInfo)
created_at
string <date-time>

Data que a notificação foi criada

updated_at
string <date-time>

Data da última atualização dos dados

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/notifications?page={page}&per={per}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Consultar notificação

Obtém um objeto com os dados da notificação especificada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da notificação

Responses

Response Schema: application/json
id
integer

ID da notificação

read_at
string or null <date-time>

Data que o usuário leu a notificação

ack_at
string or null <date-time>

Data que o usuário aceitou a notificação

sent_at
string <date-time>

Data que a notificação foi enviada

deleted_at
string or null <date-time>

Data que o usuário apagou a notificação

object (MessageInfo)
created_at
string <date-time>

Data que a notificação foi criada

updated_at
string <date-time>

Data da última atualização dos dados

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/notifications/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "id": 5,
  • "read_at": null,
  • "ack_at": null,
  • "sent_at": "2021-07-19T10:15:25.248-03:00",
  • "deleted_at": null,
  • "message": {
    },
  • "created_at": "2021-07-18T17:40:00.154-03:00",
  • "updated_at": "2021-07-18T17:40:00.154-03:00"
}

Alterar notificação

Altera os dados da notificação especificada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da notificação

Request Body schema: application/json
ack_at
string <date-time>

Data que o usuário aceitou a notificação

read_at
string <date-time>

Data que o usuário leu a notificação

deleted_at
string <date-time>

Data que o usuário apagou a notificação

Responses

Response Schema: application/json
id
integer

ID da notificação

read_at
string or null <date-time>

Data que o usuário leu a notificação

ack_at
string or null <date-time>

Data que o usuário aceitou a notificação

sent_at
string <date-time>

Data que a notificação foi enviada

deleted_at
string or null <date-time>

Data que o usuário apagou a notificação

object (MessageInfo)
created_at
string <date-time>

Data que a notificação foi criada

updated_at
string <date-time>

Data da última atualização dos dados

Request samples

Content type
application/json
{
  • "ack_at": "2021-07-19T17:59:45.667-03:00",
  • "read_at": "2021-07-19T17:59:45.667-03:00",
  • "deleted_at": null
}

Response samples

Content type
application/json
{
  • "id": 5,
  • "read_at": null,
  • "ack_at": null,
  • "sent_at": "2021-07-19T10:15:25.248-03:00",
  • "deleted_at": null,
  • "message": {
    },
  • "created_at": "2021-07-18T17:40:00.154-03:00",
  • "updated_at": "2021-07-18T17:40:00.154-03:00"
}

Remover notificação

Remove os dados da notificação especificada

Authorizations:
Access-Token
path Parameters
id
required
integer

ID da notificação

Responses

Request samples

curl -i -X DELETE \
  'https://api.oplab.com.br/v3/domain/notifications/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "error": "string"
}

Contar notificações não lidas

Obtém a quantidade de notificações não lidas do usuário

Authorizations:
Access-Token

Responses

Response Schema: application/json
count
integer

Quantidade de notificações não lidas

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/notifications/unread' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "count": 5
}

Marcar notificações como lidas

Altera todas as notificações do usuário, marcando como lidas

Authorizations:
Access-Token

Responses

Request samples

curl -i -X POST \
  'https://api.oplab.com.br/v3/domain/notifications/read_all' \
  -H 'Access-Token: {access-token}'

Remover notificações

Remove todas as notificações do usuário

Authorizations:
Access-Token

Responses

Request samples

curl -i -X POST \
  'https://api.oplab.com.br/v3/domain/notifications/delete_all' \
  -H 'Access-Token: {access-token}'

Consultar preferências

Obtém uma lista com todas as preferências de notificações do usuário

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
id
integer

ID do objeto

user_id
integer

ID do usuário

object

Canal de mensagens referido

destination_mask
integer

Máscara de preferência cadastrada

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/notifications/preferences' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Alterar preferências

Altera as preferências de notificações do usuário

Authorizations:
Access-Token
Request Body schema: application/json
Array of objects

Preferências de notificações

Array
channel_id
integer

ID do canal de mensagem

destination_mask
integer

Máscara de preferência

Responses

Request samples

Content type
application/json
{
  • "preferences": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string"
}

Outros

Calcular dias úteis até uma data

Obtém um objeto com a quantidade de dias úteis até a data especificada

Authorizations:
Access-Token
path Parameters
until
required
string <date>
Example: 2022-05-16

Data de referência

Responses

Response Schema: application/json
business_days
integer

Quantidade de dias úteis até a data de referência

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/domain/trading/business_days/{until}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "business_days": 26
}

Taxas de Juros

Listar taxas de juros

Obtém uma lista com todas as taxas de juros disponíveis

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
uid
string
Enum: "CETIP" "SELIC"

Sigla da taxa de juros

name
string

Nome da taxa de juros

value
number

Valor da taxa de juros (%)

updated_at
string <date-time>

Data e hora da última atualização dos dados

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/interest_rates' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Consultar taxa de juros

Obtém os dados da taxa de juros especificada

Authorizations:
Access-Token
path Parameters
id
required
string

Sigla da taxa de juros

Responses

Response Schema: application/json
uid
string
Enum: "CETIP" "SELIC"

Sigla da taxa de juros

name
string

Nome da taxa de juros

value
number

Valor da taxa de juros (%)

updated_at
string <date-time>

Data e hora da última atualização dos dados

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/interest_rates/{id}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "uid": "CETIP",
  • "name": "Taxa DI",
  • "value": 3.4,
  • "updated_at": "2021-05-06T22:12:47.359Z"
}

Bolsas de Valores

Listar de bolsas de valores

Obtém uma lista com as informações das bolsas de valores no Brasil

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
uid
string

UID do registro

name
string

Nome da bolsa de valores

opensAt
string <date>

Abertura do mercado

closesAt
string <date>

Fechamento do mercado

afterHoursStartsAt
string

Horário de inicio do after market

afterHoursEndsAt
string

Horário de fim do after market

createdAt
string <date>

Registro criado em

updatedAt
string <date>

Registro atualizado em

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/exchanges' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Consultar bolsa de valores

Obtém os dados da bolsa de valores especificada

Authorizations:
Access-Token
path Parameters
uid
required
string

UID da bolsa

Responses

Response Schema: application/json
uid
string

UID do registro

name
string

Nome da bolsa de valores

opensAt
string <date>

Abertura do mercado

closesAt
string <date>

Fechamento do mercado

afterHoursStartsAt
string

Horário de inicio do after market

afterHoursEndsAt
string

Horário de fim do after market

createdAt
string <date>

Registro criado em

updatedAt
string <date>

Registro atualizado em

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/exchanges/{uid}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "uid": "BCB",
  • "name": "Banco Central do Brasil",
  • "opensAt": "09:00:00",
  • "closesAt": "18:00:00",
  • "afterHoursStartsAt": "18:01:00",
  • "afterHoursEndsAt": "18:05:00",
  • "createdAt": "2020-02-21T21:52:27.833Z",
  • "updatedAt": "2020-02-21T21:52:27.833Z"
}

Ações

Listar ações que possuem opções

Obtém uma lista com todas as ações que possuem opções listadas

Authorizations:
Access-Token
query Parameters
rank_by
string
Default: "volume"
Enum: "symbol" "type" "name" "open" "high" … 47 more

Atributo para ordenação da lista. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

sort
string
Default: "asc"
Enum: "asc" "desc"

Ordenação da lista. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

limit
integer
Default: 20

Quantidade máxima de itens na lista

financial_volume_start
integer
Default: 0

Volume financeiro mínimo

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação do ativo alvo

type
string

Tipo do instrumento

name
string

Nome da ação listada na B3

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

category
string
Value: "VISTA"

Categoria do instrumento

contract_size
integer

Tamanho do contrato mínimo

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

ewma_1y_max
number or null

Volatilidade EWMA histórica máxima no período de 1 ano

ewma_1y_min
number or null

Volatilidade EWMA histórica mínima no período de 1 ano

ewma_1y_percentile
number or null

Percentil da volatilidade EWMA histórica em 1 ano

ewma_1y_rank
number or null

Classificação da volatilidade EWMA histórica em 1 ano

ewma_6m_max
number or null

Volatilidade EWMA histórica máxima no período de 6 meses

ewma_6m_min
number or null

Volatilidade EWMA histórica mínima no período de 6 meses

ewma_6m_percentile
number or null

Percentil da volatilidade EWMA histórica em 6 meses

ewma_6m_rank
number or null

Classificação da volatilidade EWMA histórica em 6 meses

ewma_current
number

Volatilidade EWMA atual

has_options
boolean

Indica se esta ação tem opções listadas na B3

iv_1y_max
number or null

Volatilidade implícita máxima no período de 1 ano

iv_1y_min
number or null

Volatilidade implícita mínima no período de 1 ano

iv_1y_percentile
number or null

Percentil da volatilidade implícita em 1 ano

iv_1y_rank
number or null

Classificação da volatilidade implícita em 1 ano

iv_6m_max
number or null

Volatilidade implícita máxima no período de 6 meses

iv_6m_min
number or null

Volatilidade implícita mínima no período de 6 meses

iv_6m_percentile
number or null

Percentil da volatilidade implícita em 6 meses

iv_6m_rank
number or null

Classificação da volatilidade implícita em 6 meses

iv_current
number

Volatilidade implícita atual

middle_term_trend
integer

Tendência de médio prazo de acordo com o indicador DMI

semi_return_1y
number or null

Semi-retorno no período de 1 ano

short_term_trend
integer

Tendência de curto prazo de acordo com o indicador DMI

stdv_1y
number or null

Desvio padrão dos retornos no período de 1 ano

stdv_5d
number

Desvio padrão dos retornos no período de 5 dias

beta_ibov
number

Volatilidade do ativo em relação ao mercado

due_date
string or null <date>

Data de vencimento do instrumento

maturity_type
string or null
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

parent_symbol
string or null

Código de negociação do ativo alvo

spot_price
number or null

Preço atual do ativo alvo

strike
number or null

Valor de exercício da opção

garch11_1y
number or null

Volatilidade conforme modelo GARCH no período de 1 ano

isin
string

Código ISIN do ativo

cnpj
string

CNPJ da companhia

correl_ibov
number

Valor da correlação com o índice IBOV

object

Média móvel de 9 e 21 de dias

entropy
number

Medida de incerteza do ativo

object

Score do OpLab baseado em indicadores fundamentalistas

security_category
integer
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

polynomials_2
object

Metodologia do OpLab para calcular o preço de um ativo

polynomials_3
object

Metodologia do OpLab para calcular o preço de um ativo

sector
string

Setor da companhia

quotation_form
integer

Tipo de cotação

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

highest_options_volume_rank
integer

Classificação do maior volume de opções do dia anterior

days_to_maturity
integer

Dias faltantes para o vencimento da opção

object

Diferença da tendência de curto e médio prazo

last_trade_at
integer or null

Timestamp do último negócio

long_name
string

Nome da companhia

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

previous_close
number

Fechamento do dia anterior

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/stocks?rank_by={rank_by}&sort={sort}&limit={limit}&financial_volume_start={financial_volume_start}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar todas as ações

Obtém uma lista com todas as ações negociadas na B3

Authorizations:
Access-Token
query Parameters
page
integer
Default: 1

Número da página

per
integer
Default: 20

Quantidade de itens por página

rank_by
string
Default: "symbol"
Enum: "symbol" "type" "name" "open" "high" … 47 more

Atributo para ordenação da lista. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

sort
string
Default: "asc"
Enum: "asc" "desc"

Ordenação da lista. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

financial_volume_start
integer
Default: 0

Volume financeiro mínimo

Responses

Response Headers
total-pages
integer
Example: 147

Número total de páginas considerando o parâmetro per

Response Schema: application/json
Array
symbol
string

Código de negociação do ativo alvo

type
string

Tipo do instrumento

name
string

Nome da ação listada na B3

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

category
string
Value: "VISTA"

Categoria do instrumento

contract_size
integer

Tamanho do contrato mínimo

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

ewma_1y_max
number or null

Volatilidade EWMA histórica máxima no período de 1 ano

ewma_1y_min
number or null

Volatilidade EWMA histórica mínima no período de 1 ano

ewma_1y_percentile
number or null

Percentil da volatilidade EWMA histórica em 1 ano

ewma_1y_rank
number or null

Classificação da volatilidade EWMA histórica em 1 ano

ewma_6m_max
number or null

Volatilidade EWMA histórica máxima no período de 6 meses

ewma_6m_min
number or null

Volatilidade EWMA histórica mínima no período de 6 meses

ewma_6m_percentile
number or null

Percentil da volatilidade EWMA histórica em 6 meses

ewma_6m_rank
number or null

Classificação da volatilidade EWMA histórica em 6 meses

ewma_current
number

Volatilidade EWMA atual

has_options
boolean

Indica se esta ação tem opções listadas na B3

iv_1y_max
number or null

Volatilidade implícita máxima no período de 1 ano

iv_1y_min
number or null

Volatilidade implícita mínima no período de 1 ano

iv_1y_percentile
number or null

Percentil da volatilidade implícita em 1 ano

iv_1y_rank
number or null

Classificação da volatilidade implícita em 1 ano

iv_6m_max
number or null

Volatilidade implícita máxima no período de 6 meses

iv_6m_min
number or null

Volatilidade implícita mínima no período de 6 meses

iv_6m_percentile
number or null

Percentil da volatilidade implícita em 6 meses

iv_6m_rank
number or null

Classificação da volatilidade implícita em 6 meses

iv_current
number

Volatilidade implícita atual

middle_term_trend
integer

Tendência de médio prazo de acordo com o indicador DMI

semi_return_1y
number or null

Semi-retorno no período de 1 ano

short_term_trend
integer

Tendência de curto prazo de acordo com o indicador DMI

stdv_1y
number or null

Desvio padrão dos retornos no período de 1 ano

stdv_5d
number

Desvio padrão dos retornos no período de 5 dias

beta_ibov
number

Volatilidade do ativo em relação ao mercado

due_date
string or null <date>

Data de vencimento do instrumento

maturity_type
string or null
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

parent_symbol
string or null

Código de negociação do ativo alvo

spot_price
number or null

Preço atual do ativo alvo

strike
number or null

Valor de exercício da opção

garch11_1y
number or null

Volatilidade conforme modelo GARCH no período de 1 ano

isin
string

Código ISIN do ativo

cnpj
string

CNPJ da companhia

correl_ibov
number

Valor da correlação com o índice IBOV

object

Média móvel de 9 e 21 de dias

entropy
number

Medida de incerteza do ativo

object

Score do OpLab baseado em indicadores fundamentalistas

security_category
integer
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

polynomials_2
object

Metodologia do OpLab para calcular o preço de um ativo

polynomials_3
object

Metodologia do OpLab para calcular o preço de um ativo

sector
string

Setor da companhia

quotation_form
integer

Tipo de cotação

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

highest_options_volume_rank
integer

Classificação do maior volume de opções do dia anterior

days_to_maturity
integer

Dias faltantes para o vencimento da opção

object

Diferença da tendência de curto e médio prazo

last_trade_at
integer or null

Timestamp do último negócio

long_name
string

Nome da companhia

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

previous_close
number

Fechamento do dia anterior

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/stocks/all?page={page}&per={per}&rank_by={rank_by}&sort={sort}&financial_volume_start={financial_volume_start}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Consultar uma ação

Obtém um objeto com os detalhes de uma determiada ação. Além do schema de resposta abaixo, o retorno irá conter os atributos do parâmetro with_financials

Authorizations:
Access-Token
path Parameters
symbol
required
string

Código de negociação do ativo alvo

query Parameters
with_financials
string
Enum: "sector" "name" "cvmCode" "currency" "currencyScale" … 9 more

Atributos para adicionar no retorno separados por vírgula. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

Responses

Response Schema: application/json
symbol
string

Código de negociação do ativo alvo

type
string

Tipo do instrumento

name
string

Nome da ação listada na B3

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

category
string
Value: "VISTA"

Categoria do instrumento

contract_size
integer

Tamanho do contrato mínimo

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

ewma_1y_max
number or null

Volatilidade EWMA histórica máxima no período de 1 ano

ewma_1y_min
number or null

Volatilidade EWMA histórica mínima no período de 1 ano

ewma_1y_percentile
number or null

Percentil da volatilidade EWMA histórica em 1 ano

ewma_1y_rank
number or null

Classificação da volatilidade EWMA histórica em 1 ano

ewma_6m_max
number or null

Volatilidade EWMA histórica máxima no período de 6 meses

ewma_6m_min
number or null

Volatilidade EWMA histórica mínima no período de 6 meses

ewma_6m_percentile
number or null

Percentil da volatilidade EWMA histórica em 6 meses

ewma_6m_rank
number or null

Classificação da volatilidade EWMA histórica em 6 meses

ewma_current
number

Volatilidade EWMA atual

has_options
boolean

Indica se esta ação tem opções listadas na B3

iv_1y_max
number or null

Volatilidade implícita máxima no período de 1 ano

iv_1y_min
number or null

Volatilidade implícita mínima no período de 1 ano

iv_1y_percentile
number or null

Percentil da volatilidade implícita em 1 ano

iv_1y_rank
number or null

Classificação da volatilidade implícita em 1 ano

iv_6m_max
number or null

Volatilidade implícita máxima no período de 6 meses

iv_6m_min
number or null

Volatilidade implícita mínima no período de 6 meses

iv_6m_percentile
number or null

Percentil da volatilidade implícita em 6 meses

iv_6m_rank
number or null

Classificação da volatilidade implícita em 6 meses

iv_current
number

Volatilidade implícita atual

middle_term_trend
integer

Tendência de médio prazo de acordo com o indicador DMI

semi_return_1y
number or null

Semi-retorno no período de 1 ano

short_term_trend
integer

Tendência de curto prazo de acordo com o indicador DMI

stdv_1y
number or null

Desvio padrão dos retornos no período de 1 ano

stdv_5d
number

Desvio padrão dos retornos no período de 5 dias

beta_ibov
number

Volatilidade do ativo em relação ao mercado

due_date
string or null <date>

Data de vencimento do instrumento

maturity_type
string or null
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

parent_symbol
string or null

Código de negociação do ativo alvo

spot_price
number or null

Preço atual do ativo alvo

strike
number or null

Valor de exercício da opção

garch11_1y
number or null

Volatilidade conforme modelo GARCH no período de 1 ano

isin
string

Código ISIN do ativo

cnpj
string

CNPJ da companhia

correl_ibov
number

Valor da correlação com o índice IBOV

object

Média móvel de 9 e 21 de dias

entropy
number

Medida de incerteza do ativo

object

Score do OpLab baseado em indicadores fundamentalistas

security_category
integer
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

polynomials_2
object

Metodologia do OpLab para calcular o preço de um ativo

polynomials_3
object

Metodologia do OpLab para calcular o preço de um ativo

sector
string

Setor da companhia

quotation_form
integer

Tipo de cotação

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

highest_options_volume_rank
integer

Classificação do maior volume de opções do dia anterior

days_to_maturity
integer

Dias faltantes para o vencimento da opção

object

Diferença da tendência de curto e médio prazo

last_trade_at
integer or null

Timestamp do último negócio

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

previous_close
number

Fechamento do dia anterior

financial
object or null

Objeto contendo os atributos listados no parâmetro with_financials

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/stocks/{symbol}?with_financials={with_financials}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "symbol": "PETR4",
  • "type": "STOCK",
  • "name": "PETROBRAS PN",
  • "open": 24.8,
  • "high": 24.98,
  • "low": 24.58,
  • "close": 24.71,
  • "volume": 73804500,
  • "financial_volume": 1829930000,
  • "trades": 0,
  • "bid": 24.7,
  • "ask": 24.71,
  • "category": "VISTA",
  • "contract_size": 100,
  • "created_at": "2021-05-07T22:03:00.010Z",
  • "updated_at": "2021-05-07T22:03:00.010Z",
  • "variation": 1.354,
  • "ewma_1y_max": 89.61,
  • "ewma_1y_min": 49.98,
  • "ewma_1y_percentile": 7.94,
  • "ewma_1y_rank": 6,
  • "ewma_6m_max": 67.19,
  • "ewma_6m_min": 49.98,
  • "ewma_6m_percentile": 15.87,
  • "ewma_6m_rank": 13.82,
  • "ewma_current": 52.36,
  • "has_options": true,
  • "iv_1y_max": 70.89,
  • "iv_1y_min": 33.4,
  • "iv_1y_percentile": 53.17,
  • "iv_1y_rank": 22.38,
  • "iv_6m_max": 70.89,
  • "iv_6m_min": 35.16,
  • "iv_6m_percentile": 53.17,
  • "iv_6m_rank": 18.56,
  • "iv_current": 41.79,
  • "middle_term_trend": 0,
  • "semi_return_1y": 1.12,
  • "short_term_trend": 0,
  • "stdv_1y": 0.030376505142433452,
  • "stdv_5d": 0.02673558724536745,
  • "beta_ibov": 1.5421326782884273,
  • "due_date": null,
  • "maturity_type": null,
  • "parent_symbol": null,
  • "spot_price": null,
  • "strike": null,
  • "garch11_1y": 50.59,
  • "isin": "BRPETRACNPR6",
  • "cnpj": "33000167000101",
  • "correl_ibov": 0.7470931521875993,
  • "m9_m21": {
    },
  • "entropy": 0.591727002114042,
  • "oplab_score": {
    },
  • "security_category": 11,
  • "polynomials_2": {
    },
  • "polynomials_3": {
    },
  • "sector": "PETRÓLEO E GÁS",
  • "quotation_form": 100,
  • "market_maker": false,
  • "highest_options_volume_rank": 2,
  • "days_to_maturity": 0,
  • "mshort_mlong": {
    },
  • "last_trade_at": 0,
  • "bid_volume": 700,
  • "ask_volume": 1400,
  • "time": 1620680400000,
  • "previous_close": 23.84
}

Opções

Listar opções de um ativo

Obtém uma lista com todas as opções de um determinado ativo

Authorizations:
Access-Token
path Parameters
symbol
required
string

Código da ação da companhia

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação da opção

name
string

Nome da companhia, valor do strike e data de vencimento da opção

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

category
string
Enum: "CALL" "PUT"

Categoria do instrumento

due_date
string <date>

Data de vencimento do instrumento

maturity_type
string
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

strike
number

Valor de exercício da opção

contract_size
integer

Tamanho do contrato mínimo

exchange_id
string
Value: "BOVESPA"

Sigla da responsável pela negociação

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

spot_price
number

Preço do ativo alvo no momento da última negociação da opção

isin
string

Código ISIN do ativo

security_category
integer
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

block_date
string <date-time>

Data de bloqueio do instrumento

days_to_maturity
integer

Dias faltantes para o vencimento da opção

cnpj
string

CNPJ da companhia

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

type
string
Enum: "CALL" "PUT"

Tipo de opção

last_trade_at
integer

Timestamp do último negócio

strike_eod
number

Valor de exercício da opção

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/options/{symbol}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Consultar uma opção

Obtém um objeto com os detalhes de uma determinada opção

Authorizations:
Access-Token
path Parameters
symbol
required
string

Código de negociação da opção

Responses

Response Schema: application/json
symbol
string

Código de negociação da opção

name
string

Nome da companhia, valor do strike e data de vencimento da opção

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

parent_symbol
string

Código de negociação do ativo alvo

category
string
Enum: "CALL" "PUT"

Categoria do instrumento

due_date
string <date>

Data de vencimento do instrumento

maturity_type
string
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

strike
number

Valor de exercício da opção

contract_size
integer

Tamanho do contrato mínimo

exchange_id
string
Value: "BOVESPA"

Sigla da responsável pela negociação

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

spot_price
number

Preço do ativo alvo no momento da última negociação da opção

isin
string

Código ISIN do ativo

security_category
integer
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

block_date
string <date-time>

Data de bloqueio do instrumento

days_to_maturity
integer

Dias faltantes para o vencimento da opção

cnpj
string

CNPJ da companhia

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

type
string
Enum: "CALL" "PUT"

Tipo de opção

last_trade_at
integer

Timestamp do último negócio

strike_eod
number

Valor de exercício da opção

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/options/details/{symbol}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "symbol": "PETRE100",
  • "name": "PETROBRAS ON R$ 9.21 21-05-2021",
  • "open": 0,
  • "high": 0,
  • "low": 0,
  • "close": 0,
  • "volume": 0,
  • "financial_volume": 0,
  • "trades": 0,
  • "bid": 0.02,
  • "ask": 0,
  • "parent_symbol": "PETR3",
  • "category": "CALL",
  • "due_date": "2021-05-21",
  • "maturity_type": "AMERICAN",
  • "strike": 9.21,
  • "contract_size": 100,
  • "exchange_id": "BOVESPA",
  • "created_at": "2021-05-07T22:03:01.160Z",
  • "updated_at": "2021-05-07T22:03:01.160Z",
  • "variation": 0,
  • "spot_price": 23.93,
  • "isin": "BRPETR3E05L7",
  • "security_category": 7,
  • "market_maker": false,
  • "block_date": "2021-05-20T00:00:00.000Z",
  • "days_to_maturity": 10,
  • "cnpj": "33000167000101",
  • "bid_volume": 0,
  • "ask_volume": 0,
  • "time": 1620423900000,
  • "type": "CALL",
  • "last_trade_at": 1620438635404,
  • "strike_eod": 9.21
}

Listar opções para estratégias cobertas

Obtém uma lista das opções com strike menor ou igual ao preço de um ou mais ativos

Authorizations:
Access-Token
query Parameters
underlying
string
Example: underlying=PETR4,ABEV3

Códigos das ações das companhias separados por vírgula

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação da opção

type
string
Enum: "CALL" "PUT"

Tipo de opção

name
string

Nome da companhia, valor do strike e data de vencimento da opção

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

parent_symbol
string

Código de negociação do ativo alvo

category
string
Enum: "CALL" "PUT"

Categoria do instrumento

due_date
string <date>

Data de vencimento do instrumento

maturity_type
string
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

strike
number

Valor de exercício da opção

contract_size
integer

Tamanho do contrato mínimo

exchange_id
string
Value: "BOVESPA"

Sigla da responsável pela negociação

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

spot_price
number

Preço do ativo alvo no momento da última negociação da opção

isin
string

Código ISIN do ativo

security_category
integer
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

block_date
string <date-time>

Data de bloqueio do instrumento

days_to_maturity
integer

Dias faltantes para o vencimento da opção

cnpj
string

CNPJ da companhia

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

last_trade_at
integer

Timestamp do último negócio

strike_eod
number

Valor de exercício da opção

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/options/strategies/covered?underlying={underlying}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Consultar Black-Scholes de uma opção

Obtém um objeto com o preço teórico, as gregas, a volatilidade implícita e a margem teórica de uma determinada opção

Authorizations:
Access-Token
query Parameters
symbol
required
string

Código de negociação da opção

irate
required
number

Valor da taxa de juros (%)

type
string
Enum: "CALL" "PUT"

Tipo de opção. Obrigatório se o symbol não for informado

spotprice
number
Default: 0

Preço atual do ativo alvo

strike
number
Default: 0

Valor do strike da opção. Obrigatório se o código de negociação for de uma ação

premium
number
Default: 0

Valor do prêmio da opção

dtm
integer
Default: 0

Dias faltantes para o vencimento da opção

vol
number
Default: 0

Volatilidade implícita da opção

duedate
string <date>

Data de vencimento da opção. Obrigatório se o código de negociação for de uma ação

amount
integer
Default: 0

Quantidade de ativos

Responses

Response Schema: application/json
moneyness
string
Enum: "OTM" "ITM" "ATM"

Distância medida entre a razão do strike com o spot_price

price
number or null

Preço teórico da opção baseado no modelo Black and Scholes

delta
number

Indica quanto o prêmio pode variar a cada 1 unidade de variação do preço do ativo alvo

gamma
number

Indica quanto irá variar o delta a cada 1 unidade de variação do preço do ativo alvo (aceleração do delta da opção)

vega
number

Indica quanto o prêmio pode variar a cada 1% de variação da volatilidade

theta
number

Indica quanto o prêmio pode variar com a passagem de 1 dia

rho
number

Indica quanto o premio pode variar para cada variação de 1% na taxa de juros

volatility
number

Volatilidade implícita da opção

poe
number or null

Probabilidade de exercício segundo a fórmula do BS

spotprice
number

Preço atual do ativo alvo

strike
number

Valor de exercício da opção

margin
number

Valor do strike multiplicado pelo amount informado

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/options/bs?symbol={symbol}&irate={irate}&type={type}&spotprice={spot_price}&strike={strike}&premium={premium}&dtm={dtm}&vol={vol}&duedate={due_date}&amount={amount}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "moneyness": "OTM",
  • "price": 0.0317,
  • "delta": 0.03,
  • "gamma": 0.0254,
  • "vega": 0.0033,
  • "theta": -0.0096,
  • "rho": 0.0003,
  • "volatility": 0,
  • "poe": 2.37,
  • "spotprice": 24.06,
  • "strike": 30,
  • "margin": 3000
}

Listar principais pozinhos

Obtém uma lista com os principais pozinhos

Authorizations:
Access-Token

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação da opção

close
number

Último preço

strike
number

Valor de exercício da opção

variation
number

Variação percentual de preço no dia

volume
integer

Volume de negócios do dia

financial-volume
integer

Volume financeiro do dia

spot-symbol
string

Código de negociação do ativo alvo

spot-price
number

Preço atual do ativo alvo

spot-volatility
number

Volatilidade histórica atual da opção

bid
number

Melhor oferta de compra

bid-volume
integer

Volume da melhor oferta de compra

ask
number

Melhor oferta de venda

ask-volume
number

Volume da melhor oferta de venda

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

series_id
string

ID da série de opções

series_name
string

Nome da série de opções

due-date
string <date>

Data de vencimento do instrumento

days-to-maturity
integer

Dias faltantes para o vencimento da opção

type
string
Enum: "CALL" "PUT"

Tipo de opção

maturity-type
string
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

interest-rate
number

Taxa de juros SELIC atual (%)

market-maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

ewma_current
number

Volatilidade EWMA atual

contract_size
integer

Tamanho do contrato mínimo

polynomials_3
object

Metodologia do OpLab para calcular o preço de um ativo

last_trade_at
integer or null

Timestamp do último negócio

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/options/powders' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Instrumentos

Consultar cotações de uma lista de instrumentos

Obtém uma lista com a cotação de um ou mais instrumentos

Authorizations:
Access-Token
query Parameters
tickers
required
string
Example: tickers=PETR4,PETRE100

Código de negociação dos instrumentos separados por vírgula

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação do instrumento

close
number

Último preço

strike
number

Valor de exercício da opção

variation
number

Variação de preço no dia (%)

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/quote?tickers={tickers}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar instrumentos

Obtém uma lista de instrumentos

Authorizations:
Access-Token
query Parameters
expr
required
string
Example: expr=PETR3,ABEV,MGL

Códigos de negociação ou nomes da companhia para pesquisa separados por vírgula, podem ser informados valores parciais

limit
number
Default: 10

Quantidade máxima de itens na lista

type
string
Default: "STOCK,OPTION"
Enum: "STOCK" "OPTION" "INDEX" "REAL_ESTATE_FUND" "INDICATOR" … 2 more

Tipos de instrumento para pesquisa separados por vírugla

has_options
boolean
Default: false

Indica se o instrumento deve ter opções listadas na B3

category
string
Enum: "CALL" "PUT"

Tipo de opção a ser filtrada, só é considerado se o type for OPTION

add_info
boolean

Indica se o retorno deve incluir as informações adicionais, que são: close, variation, volume, iv_current, iv_1y_rank e iv_1y_percentile

Responses

Response Schema: application/json
Array
Any of
symbol
string

Código de negociação do instrumento

full_name
string

Código de negociação do instrumento

description
string

Nome da companhia

exchange
string
Enum: "BCB" "BOVESPA" "TESOURO"

Sigla da responsável pela negociação

ticker
string

Código de negociação do instrumento

type
string
Enum: "VISTA" "CALL" "PUT" "IVX" "EWMAB3"

Categoria do instrumento

contract_size
integer

Tamanho do contrato mínimo

financial_volume
integer

Volume financeiro do dia

parent_symbol
string

Código de negociação do ativo alvo

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/instruments/search?expr={expr}&limit={limit}&type={type}&has_options={has_options}&category={category}&add_info={add_info}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
[
  • {
    },
  • {
    },
  • {
    }
]

Listar séries de opções de um instrumento

Obtém um objeto com os dados do instrumento e todas as séries de opções

Authorizations:
Access-Token
path Parameters
symbol
required
string

Código de negociação do instrumento

query Parameters
bs
boolean

Um parâmetro booleano para ativar ou desativar o black and scholes. Se fornecido, irate também deve ser especificado.

irate
number <float>

Um valor percentual necessário que representa a taxa de juros usada quando bs é fornecido.

Responses

Response Schema: application/json
symbol
string

Código de negociação do instrumento

name
string

Nome da ação listada na B3

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

variation
number

Variação de preço no dia (%)

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
string <date-time>

Data e hora da última atualização

last_trade_at
string or null <date-time>

Data e hora do último negócio

contract_size
integer

Tamanho do contrato mínimo

short_term_trend
integer

Tendência de curto prazo de acordo com o indicador DMI

middle_term_trend
integer

Tendência de médio prazo de acordo com o indicador DMI

stdv_1y
number or null

Desvio padrão dos retornos no período de 1 ano

ewma_current
number

Volatilidade EWMA atual

iv_current
number

Volatilidade implícita atual

beta_ibov
number

Volatilidade do ativo em relação ao mercado

Array of objects

Lista com as séries de opções do instrumento

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/instruments/series/{symbol}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "symbol": "PETR4",
  • "name": "PETROBRAS PN N2",
  • "open": 27.96,
  • "high": 28.3,
  • "low": 27.07,
  • "close": 27.15,
  • "variation": -4.06,
  • "volume": 117206600,
  • "financial_volume": 3239278195,
  • "bid": 27.14,
  • "ask": 27.15,
  • "bid_volume": 2900,
  • "ask_volume": 200,
  • "time": "2022-11-08T11:00:33.076Z",
  • "last_trade_at": null,
  • "contract_size": 100,
  • "short_term_trend": -1,
  • "middle_term_trend": 1,
  • "stdv_1y": 0.024787457563999263,
  • "ewma_current": 59.57,
  • "iv_current": 54.08,
  • "beta_ibov": 1.1282387362064599,
  • "series": [
    ]
}

Consultar um instrumento

Obtém um objeto com os dados do instrumento especificado

Authorizations:
Access-Token
path Parameters
symbol
required
string

Código de negociação do instrumento

Responses

Response Schema: application/json
Any of
symbol
string

Código de negociação do ativo alvo

type
string
Value: "STOCK"

Tipo do instrumento

name
string

Nome da ação listada na B3

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

category
string
Value: "VISTA"

Categoria do instrumento

contract_size
integer

Tamanho do contrato mínimo

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

ewma_1y_max
number or null

Volatilidade EWMA histórica máxima no período de 1 ano

ewma_1y_min
number or null

Volatilidade EWMA histórica mínima no período de 1 ano

ewma_1y_percentile
number or null

Percentil da volatilidade EWMA histórica em 1 ano

ewma_1y_rank
number or null

Classificação da volatilidade EWMA histórica em 1 ano

ewma_6m_max
number or null

Volatilidade EWMA histórica máxima no período de 6 meses

ewma_6m_min
number or null

Volatilidade EWMA histórica mínima no período de 6 meses

ewma_6m_percentile
number or null

Percentil da volatilidade EWMA histórica em 6 meses

ewma_6m_rank
number or null

Classificação da volatilidade EWMA histórica em 6 meses

ewma_current
number

Volatilidade EWMA atual

has_options
boolean

Indica se esta ação tem opções listadas na B3

iv_1y_max
number or null

Volatilidade implícita máxima no período de 1 ano

iv_1y_min
number or null

Volatilidade implícita mínima no período de 1 ano

iv_1y_percentile
number or null

Percentil da volatilidade implícita em 1 ano

iv_1y_rank
number or null

Classificação da volatilidade implícita em 1 ano

iv_6m_max
number or null

Volatilidade implícita máxima no período de 6 meses

iv_6m_min
number or null

Volatilidade implícita mínima no período de 6 meses

iv_6m_percentile
number or null

Percentil da volatilidade implícita em 6 meses

iv_6m_rank
number or null

Classificação da volatilidade implícita em 6 meses

iv_current
number

Volatilidade implícita atual

middle_term_trend
integer

Tendência de médio prazo de acordo com o indicador DMI

semi_return_1y
number or null

Semi-retorno no período de 1 ano

short_term_trend
integer

Tendência de curto prazo de acordo com o indicador DMI

stdv_1y
number or null

Desvio padrão dos retornos no período de 1 ano

stdv_5d
number

Desvio padrão dos retornos no período de 5 dias

beta_ibov
number

Volatilidade do ativo em relação ao mercado

due_date
string or null <date-time>

Data de vencimento do instrumento

maturity_type
string or null

Tipo de opção

parent_symbol
string or null

Código de negociação do ativo alvo

spot_price
number or null

Preço atual do ativo alvo

strike
number or null

Valor de exercício da opção

garch11_1y
number or null

Volatilidade conforme modelo GARCH no período de 1 ano

isin
string

Código ISIN do ativo

cnpj
string

CNPJ da companhia

correl_ibov
number

Valor da correlação com o índice IBOV

object

Média móvel de 9 e 21 de dias

entropy
number

Medida de incerteza do ativo

object

Score do OpLab baseado em indicadores fundamentalistas

security_category
integer or null
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

polynomials_2
object

Metodologia do OpLab para calcular o preço de um ativo

polynomials_3
object

Metodologia do OpLab para calcular o preço de um ativo

sector
string or null

Setor da companhia

quotation_form
integer

Tipo de cotação

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

highest_options_volume_rank
integer

Classificação do maior volume de opções do dia anterior

days_to_maturity
integer

Dias faltantes para o vencimento da opção

object

Diferença da tendência de curto e médio prazo

last_trade_at
integer or null

Timestamp do último negócio

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

block_date
string or null

Data de bloqueio do instrumento

previous_close
number

Fechamento do dia anterior

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/instruments/{symbol}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "symbol": "XBOV11",
  • "type": "STOCK",
  • "name": "CAIXAETFXBOVCI",
  • "open": 119.06,
  • "high": 119.24,
  • "low": 118.75,
  • "close": 119.24,
  • "volume": 20,
  • "financial_volume": 2381.6,
  • "trades": 0,
  • "bid": 119.24,
  • "ask": 120,
  • "category": "VISTA",
  • "contract_size": 100,
  • "created_at": "2021-05-13T22:02:28.219Z",
  • "updated_at": "2021-05-13T22:02:28.219Z",
  • "variation": 0.88,
  • "ewma_1y_max": 0,
  • "ewma_1y_min": 0,
  • "ewma_1y_percentile": 0,
  • "ewma_1y_rank": 0,
  • "ewma_6m_max": 0,
  • "ewma_6m_min": 0,
  • "ewma_6m_percentile": 0,
  • "ewma_6m_rank": 0,
  • "ewma_current": 0,
  • "has_options": true,
  • "iv_1y_max": 0,
  • "iv_1y_min": 0,
  • "iv_1y_percentile": 0,
  • "iv_1y_rank": 0,
  • "iv_6m_max": 0,
  • "iv_6m_min": 0,
  • "iv_6m_percentile": 0,
  • "iv_6m_rank": 0,
  • "iv_current": 0,
  • "middle_term_trend": 0,
  • "semi_return_1y": 1.12,
  • "short_term_trend": 0,
  • "stdv_1y": 0.014618020836620966,
  • "stdv_5d": 0.015270556184849331,
  • "beta_ibov": 0.9835461496033165,
  • "due_date": null,
  • "maturity_type": null,
  • "parent_symbol": null,
  • "spot_price": null,
  • "strike": null,
  • "garch11_1y": 23.15,
  • "isin": "BRXBOVCTF005",
  • "cnpj": "14120533000111",
  • "correl_ibov": 0.9901213597986458,
  • "m9_m21": {
    },
  • "entropy": 0.3564843588419101,
  • "oplab_score": {
    },
  • "security_category": 3,
  • "polynomials_2": {
    },
  • "polynomials_3": {
    },
  • "sector": null,
  • "quotation_form": 1,
  • "market_maker": false,
  • "highest_options_volume_rank": 0,
  • "days_to_maturity": 0,
  • "mshort_mlong": {
    },
  • "last_trade_at": 1621038635404,
  • "bid_volume": 2,
  • "ask_volume": 5,
  • "time": 1621023340000,
  • "block_date": null,
  • "previous_close": 118.98
}

Consultar detalhes de uma lista de instrumentos

Obtém uma lista com os detalhes de um ou mais instrumentos

Authorizations:
Access-Token
query Parameters
tickers
required
string
Example: tickers=PETR4,ABEV3

Código de negociação dos instrumentos separados por vírgula

Responses

Response Schema: application/json
Array
Any of
symbol
string

Código de negociação do ativo alvo

type
string
Value: "STOCK"

Tipo do instrumento

name
string

Nome da ação listada na B3

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

trades
integer

Quantidade de trades no dia

bid
number

Melhor oferta de compra

ask
number

Melhor oferta de venda

category
string
Value: "VISTA"

Categoria do instrumento

contract_size
integer

Tamanho do contrato mínimo

created_at
string <date-time>

Data que o objeto foi criado

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

ewma_1y_max
number or null

Volatilidade EWMA histórica máxima no período de 1 ano

ewma_1y_min
number or null

Volatilidade EWMA histórica mínima no período de 1 ano

ewma_1y_percentile
number or null

Percentil da volatilidade EWMA histórica em 1 ano

ewma_1y_rank
number or null

Classificação da volatilidade EWMA histórica em 1 ano

ewma_6m_max
number or null

Volatilidade EWMA histórica máxima no período de 6 meses

ewma_6m_min
number or null

Volatilidade EWMA histórica mínima no período de 6 meses

ewma_6m_percentile
number or null

Percentil da volatilidade EWMA histórica em 6 meses

ewma_6m_rank
number or null

Classificação da volatilidade EWMA histórica em 6 meses

ewma_current
number

Volatilidade EWMA atual

has_options
boolean

Indica se esta ação tem opções listadas na B3

iv_1y_max
number or null

Volatilidade implícita máxima no período de 1 ano

iv_1y_min
number or null

Volatilidade implícita mínima no período de 1 ano

iv_1y_percentile
number or null

Percentil da volatilidade implícita em 1 ano

iv_1y_rank
number or null

Classificação da volatilidade implícita em 1 ano

iv_6m_max
number or null

Volatilidade implícita máxima no período de 6 meses

iv_6m_min
number or null

Volatilidade implícita mínima no período de 6 meses

iv_6m_percentile
number or null

Percentil da volatilidade implícita em 6 meses

iv_6m_rank
number or null

Classificação da volatilidade implícita em 6 meses

iv_current
number

Volatilidade implícita atual

middle_term_trend
integer

Tendência de médio prazo de acordo com o indicador DMI

semi_return_1y
number or null

Semi-retorno no período de 1 ano

short_term_trend
integer

Tendência de curto prazo de acordo com o indicador DMI

stdv_1y
number or null

Desvio padrão dos retornos no período de 1 ano

stdv_5d
number

Desvio padrão dos retornos no período de 5 dias

beta_ibov
number

Volatilidade do ativo em relação ao mercado

due_date
string or null <date-time>

Data de vencimento do instrumento

maturity_type
string or null

Tipo de opção

parent_symbol
string or null

Código de negociação do ativo alvo

spot_price
number or null

Preço atual do ativo alvo

strike
number or null

Valor de exercício da opção

garch11_1y
number or null

Volatilidade conforme modelo GARCH no período de 1 ano

isin
string

Código ISIN do ativo

cnpj
string

CNPJ da companhia

correl_ibov
number

Valor da correlação com o índice IBOV

object

Média móvel de 9 e 21 de dias

entropy
number

Medida de incerteza do ativo

object

Score do OpLab baseado em indicadores fundamentalistas

security_category
integer or null
Enum: 0 1 2 3 4 … 45 more
enumDescriptions: {"0":"undefined","1":"BDR","2":"COMMON EQUITIES FORWARD","3":"ETF EQUITIES","4":"FORWARD POINTS","5":"FORWARD RATE AGREEMENT","6":"FUNDS","7":"OPTION ON EQUITIES","8":"OPTION ON INDEX","9":"RECEIPTS","10":"ROLLOVER","11":"SHARES","12":"RIGHTS","13":"UNIT","14":"UNIT RECEIPTS","15":"VOLATILITY","16":"INDEX","17":"EXERCISE","18":"FORW/FUT GOLD","20":"FX SWAP","21":"ETF FOREIGN INDEX","22":"ETF FIXED INCOME","23":"WARRANT","25":"IPO - FOLLOW ON","26":"AUCTIONS","30":"BANK CD","31":"LETTER OF CREDIT","32":"CPR","33":"BONDS","34":"PURE GOLD","35":"FIC","36":"INTERNATIONAL BONDS","37":"CASH","38":"DEBENTURES","39":"ADR","40":"CRI (Real state receivable certificates)","41":"CRA (Agribusiness receivable certificates)","42":"LETRAS FINANCEIRAS","43":"PROMISSORY NOTES","50":"ECONOMIC INDICATORS","51":"PRICING CURVES","52":"PRICING SURFACES","53":"Tradable Sec Lending","54":"Sec lending OTC","55":"ETF GOVT BONDS","56":"ETF PRIMARY MARKET GROSS SETTLEMENT","57":"ETF PRIMARY MARKET NET SETTLEMENT","60":"FLEXIBLE EQUITIES FORWARD","70":"FIXED INCOME TRADABLE INSTRUMENT T0","71":"FIXED INCOME TRADABLE INSTRUMENT T1"}

Categoria do instrumento

polynomials_2
object

Metodologia do OpLab para calcular o preço de um ativo

polynomials_3
object

Metodologia do OpLab para calcular o preço de um ativo

sector
string or null

Setor da companhia

quotation_form
integer

Tipo de cotação

market_maker
boolean

Indica se o intrumento possui market-maker (ação de formador de mercado)

highest_options_volume_rank
integer

Classificação do maior volume de opções do dia anterior

days_to_maturity
integer

Dias faltantes para o vencimento da opção

object

Diferença da tendência de curto e médio prazo

last_trade_at
integer or null

Timestamp do último negócio

bid_volume
integer

Volume da melhor oferta de compra

ask_volume
integer

Volume da melhor oferta de venda

time
integer

Timestamp da última atualização

block_date
string or null

Data de bloqueio do instrumento

previous_close
number

Fechamento do dia anterior

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/instruments?tickers={tickers}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
{
  • "symbol": "XBOV11",
  • "type": "STOCK",
  • "name": "CAIXAETFXBOVCI",
  • "open": 119.06,
  • "high": 119.24,
  • "low": 118.75,
  • "close": 119.24,
  • "volume": 20,
  • "financial_volume": 2381.6,
  • "trades": 0,
  • "bid": 119.24,
  • "ask": 120,
  • "category": "VISTA",
  • "contract_size": 100,
  • "created_at": "2021-05-13T22:02:28.219Z",
  • "updated_at": "2021-05-13T22:02:28.219Z",
  • "variation": 0.88,
  • "ewma_1y_max": 0,
  • "ewma_1y_min": 0,
  • "ewma_1y_percentile": 0,
  • "ewma_1y_rank": 0,
  • "ewma_6m_max": 0,
  • "ewma_6m_min": 0,
  • "ewma_6m_percentile": 0,
  • "ewma_6m_rank": 0,
  • "ewma_current": 0,
  • "has_options": true,
  • "iv_1y_max": 0,
  • "iv_1y_min": 0,
  • "iv_1y_percentile": 0,
  • "iv_1y_rank": 0,
  • "iv_6m_max": 0,
  • "iv_6m_min": 0,
  • "iv_6m_percentile": 0,
  • "iv_6m_rank": 0,
  • "iv_current": 0,
  • "middle_term_trend": 0,
  • "semi_return_1y": 1.12,
  • "short_term_trend": 0,
  • "stdv_1y": 0.014618020836620966,
  • "stdv_5d": 0.015270556184849331,
  • "beta_ibov": 0.9835461496033165,
  • "due_date": null,
  • "maturity_type": null,
  • "parent_symbol": null,
  • "spot_price": null,
  • "strike": null,
  • "garch11_1y": 23.15,
  • "isin": "BRXBOVCTF005",
  • "cnpj": "14120533000111",
  • "correl_ibov": 0.9901213597986458,
  • "m9_m21": {
    },
  • "entropy": 0.3564843588419101,
  • "oplab_score": {
    },
  • "security_category": 3,
  • "polynomials_2": {
    },
  • "polynomials_3": {
    },
  • "sector": null,
  • "quotation_form": 1,
  • "market_maker": false,
  • "highest_options_volume_rank": 0,
  • "days_to_maturity": 0,
  • "mshort_mlong": {
    },
  • "last_trade_at": 1621038635404,
  • "bid_volume": 2,
  • "ask_volume": 5,
  • "time": 1621023340000,
  • "block_date": null,
  • "previous_close": 118.98
}

Mercado

Consultar status do mercado

Obtém um objeto com o status atual do mercado, sendo o retorno uma das siglas abaixo

  • P = Pré abertura
  • A = Abertura (sessão normal)
  • PN = Pré fechamento
  • N = Fechamento
  • E = Pré abertura do after
  • R = Abertura After
  • NE = Fechamento do after
  • F = Final
Authorizations:
Access-Token

Responses

Response Schema: application/json
server_time
string <date-time>

Data e hora atual do servidor

market_status
string
Enum: "P" "A" "PN" "N" "E" … 3 more

Sigla referente ao status

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/status' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "server_time": "2021-05-07T17:49:07-03:00",
  • "market_status": "N"
}

Consultar uma lista de companhias

Obtém uma lista com uma ou mais companhias. Além do schema de resposta abaixo, o retorno irá conter os atributos do parâmetro includes

Authorizations:
Access-Token
query Parameters
symbols
required
string
Example: symbols=PETR4,ABEV3

Códigos de negociação das ações separados por vírgula

includes
string
Enum: "type" "name" "open" "high" "low" … 47 more
Example: includes=type,name

Atributos para adicionar no retorno separados por vírgula. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação do ativo alvo

cnpj
string

CNPJ da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/companies?symbols={symbols}&includes={includes}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Rankings

Listar maiores volumes em opções

Obtém uma lista com os ativos com maiores volumes financeiros negociados em opções

Authorizations:
Access-Token
query Parameters
order_by
string
Default: "total"
Enum: "call" "put" "total"

Propriedade pela qual a lista será ordenada (ordenação descrescente). O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

limit
integer
Default: 20

Quantidade máxima de itens na lista

Responses

Response Schema: application/json
Array
call
number

Volume financeiro de opções de Compra (CALL)

put
number

Volume financeiro de opções de Venda (PUT)

total
number

Volume financeiro de opções de Compra e Venda (CALL + PUT)

symbol
string

Código de negociação do ativo alvo

name
string

Nome da companhia

sector
string

Setor da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/realtime/highest_options_volume?order_by={order_by}&limit={limit}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar opções com as maiores taxas de lucro

Obtém uma lista com as opções com as maiores taxas de lucro, considerando apenas opções PUT OTM e CALL ITM

Authorizations:
Access-Token
path Parameters
type
required
string
Enum: "CALL" "PUT"

Tipo da opção

query Parameters
limit
integer
Default: 20

Quantidade máxima de itens na lista

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação da opção

due_date
string <date-time>

Data de vencimento do instrumento

financial_volume
number

Volume financeiro da opção

profit_rate_if_excercised
number

Taxa de lucro da opção se for exercido (%)

type
string
Enum: "CALL" "PUT"

Tipo da opção

underlying
string

Código de negociação do ativo alvo

updated_at
string <date-time>

Data da última atualização dos dados

ve_over_strike
number

Valor extrínseco da opção

days_to_maturity
integer

Dias faltantes para o vencimento da opção

strike
number

Valor de exercício da opção

spot_strike_ratio
number

Valor intrínseco da opção

name
string

Nome da companhia

sector
string

Setor da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/realtime/best_covered_options_rates/{type}?limit={limit}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar opções com as maiores variações

Obtém uma lista com as opções com as maiores variações de preço

Authorizations:
Access-Token
path Parameters
type
required
string
Enum: "CALL" "PUT"

Tipo da opção

query Parameters
limit
integer
Default: 20

Quantidade máxima de itens na lista

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação da opção

due_date
string <date-time>

Data de vencimento do instrumento

financial_volume
number

Volume financeiro da opção

profit_rate_if_excercised
number

Taxa de lucro da opção se for exercido (%)

type
string
Enum: "CALL" "PUT"

Tipo da opção

underlying
string

Código de negociação do ativo alvo

updated_at
string <date-time>

Data da última atualização dos dados

variation
number

Variação percentual de preço no dia

ve_over_strike
number

Valor extrínseco da opção

days_to_maturity
integer

Dias faltantes para o vencimento da opção

strike
number

Valor de exercício da opção

name
string

Nome da companhia

sector
string

Setor da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/realtime/highest_options_variation/{type}?limit={limit}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar opções com as maiores tendências de alta/baixa

Obtém uma lista com as opções com as maiores tendências de alta ou de baixa, considerando a relação entre a média de 9 e 21 dias

Authorizations:
Access-Token
query Parameters
limit
integer
Default: 20

Quantidade máxima de itens na lista

sort
string
Default: "asc"
Enum: "asc" "desc"

Ordenação da lista, determina se retornará as tendências de alta ou de baixa. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

financial_volume_start
integer
Default: 0

Volume financeiro mínimo

days
integer
Default: 3650

Máximo de dias a partir da última atualização

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação do ativo alvo

updated_at
string <date-time>

Data da última atualização dos dados

cnpj
string

CNPJ da companhia

object

Média móvel de 9 e 21 de dias

attribute_name
string

Nome do atributo

short_name
string

Nome curto da companhia

name
string

Nome da companhia

sector
string

Setor da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/ranking/m9_m21?limit={limit}&sort={sort}&financial_volume_start={financial_volume_start}&days={days}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar opções ordenadas pela correlação com IBOV

Obtém uma lista com as opções com as maiores ou menores correlações com o IBOV

Authorizations:
Access-Token
query Parameters
limit
integer
Default: 20

Quantidade máxima de itens na lista

sort
string
Default: "asc"
Enum: "asc" "desc"

Ordenação da lista, determina se retornará as maiores ou as menores correlações. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

financial_volume_start
integer
Default: 0

Volume financeiro mínimo

days
integer
Default: 3650

Máximo de dias a partir da última atualização

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação do ativo alvo

updated_at
string <date-time>

Data da última atualização dos dados

cnpj
string

CNPJ da companhia

attribute
number

Valor da correlação com o índice IBOV

attribute_name
string

Nome do atributo

short_name
string

Nome curto da companhia

name
string

Nome da companhia

sector
string

Setor da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/ranking/correl_ibov?limit={limit}&sort={sort}&financial_volume_start={financial_volume_start}&days={days}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Listar companhias ordenadas por um atributo fundamentalista

Obtém uma lista com as companhias com os maiores ou menores índices do atributo fundamentalista especificado, podendo ser agrupado e retornar os setores com as maiores ou menores médias de índices do atributo fundamentalista especificado

Authorizations:
Access-Token
path Parameters
attribute
required
string
Enum: "date" "cash_and_equivalents" "ebit" "earnings" "market_cap" … 15 more

Atributo fundamentalista. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

query Parameters
group_by
string
Value: "sector"

Agrupa a classificação pela propriedade informada. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

limit
integer
Default: 20

Quantidade máxima de itens na lista

sort
string
Default: "asc"
Enum: "asc" "desc"

Ordenação da lista, determina se retornará os maiores ou menores índices. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

financial_volume_start
integer
Default: 0

Volume financeiro mínimo

Responses

Response Schema: application/json
Array
Any of
sector
string

Setor da companhia

name
string

Nome da companhia

cnpj
string

CNPJ da companhia

date
string <date>

Data da última divulgação de resultados da companhia

short_name
string

Nome curto da companhia

symbol
Array of strings

Lista de códigos de ações da companhia

symbol_prefix
string

Prefixo dos códigos de ações da companhia

attribute
string or number

Valor do atributo selecionado

attribute_name
string

Nome do atributo selecionado

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/ranking/{attribute}?group_by={group_by}&limit={limit}&sort={sort}&financial_volume_start={financial_volume_start}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
[
  • {
    }
]

Listar ações ordenadas pelo OpLab score

Obtém uma lista com as ações com os maiores ou menores OpLab scores, podendo ser agrupado e retornar os setores com as maiores ou menores médias do OpLab score

Authorizations:
Access-Token
query Parameters
score_start
integer
Default: 0

OpLab score mínimo

financial_volume_start
integer
Default: 0

Volume financeiro mínimo

group_by
string
Value: "sector"

Agrupa a classificação pela propriedade informada. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

sort
string
Default: "asc"
Enum: "asc" "desc"

Ordenação da lista, determina se retornará os maiores ou menores OpLab scores. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

limit
integer
Default: 20

Quantidade máxima de itens na lista

Responses

Response Schema: application/json
Array
Any of
symbol
string

Código de negociação da opção

name
string

Nome da companhia

financial_volume
number

Volume financeiro do dia

updated_at
string <date-time>

Data da última atualização dos dados

cnpj
string

CNPJ da companhia

object

Score do OpLab baseado em indicadores fundamentalistas

sector
string

Setor da companhia

stdv_5d
number

Desvio padrão dos retornos no período de 5 dias

short_name
string

Nome curto da companhia

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/statistics/ranking/oplab_score?score_start={score_start}&financial_volume_start={financial_volume_start}&group_by={group_by}&sort={sort}&limit={limit}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
Example
[
  • {
    }
]

Dados Históricos

Consultar dados históricos de um instrumento

Obtém um objeto com a série histórica de um determinado instrumento no período especificado

Authorizations:
Access-Token
path Parameters
symbol
required
string

Código de negociação do instrumento

resolution
required
string
Default: "1d"
Example: 10, 8h, 20d, 4w, 3m, 1y

Tempo de intervalo entre os dados contendo um número e uma letra. As letras reconhecidas são: h = hora, d = dia, w = semana, m = mês, y = ano; caso não seja informada nenhuma letra, considera-se minuto

query Parameters
from
required
string <date-time>

Data de início da consulta

to
required
string <date-time>

Data de fim da consulta

amount
integer

Quantidade de itens de acordo com o período (hora, dia, semana, mês ou ano)

raw
boolean
Default: false

Indica se deve ignorar os dados financeiros, trazendo valores zerados

smooth
boolean
Default: false

Indica se deve preencher valores de close zerados com o valor do dia anterior

df
string
Default: "timestamp"
Enum: "timestamp" "iso"

Formatação da data. O parâmetro é case sensitive, insira o nome do atributo exatamente como está na lista enum

Responses

Response Schema: application/json
symbol
string

Código de negociação do instrumento

name
string

Código de negociação do instrumento

resolution
string

Tempo de intervalo entre os dados, determinado pelo parâmetro resolution

Array of objects

Lista com série histórica do instrumento

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/historical/{symbol}/{resolution}?from={from}&to={to}&amount={amount}&raw={raw}&smooth={smooth}&df={df}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
{
  • "symbol": "ABEV3",
  • "name": "ABEV3",
  • "resolution": "1d",
  • "data": [
    ]
}

Consultar histórico das opções de um ativo

Obtém uma lista com as atualizações das opções do ativo especificado em um determinado período

Authorizations:
Access-Token
path Parameters
spot
required
string

Código de negociação do ativo alvo

from
required
string <date>

Data de início da consulta

to
required
string <date>

Data de fim da consulta

query Parameters
symbol
string

Código de negociação da opção a ser listada

Responses

Response Schema: application/json
Array
symbol
string

Código de negociação da opção

time
string <date-time>

Data de referência dos dados

object

Informações do ativo alvo

type
string
Enum: "CALL" "PUT"

Tipo de opção

due_date
string <date>

Data de vencimento do instrumento

strike
number

Valor de exercício da opção

premium
number

Valor do prêmio da opção

maturity_type
string
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

days_to_maturity
integer

Dias faltantes para o vencimento da opção

moneyness
string
Enum: "OTM" "ITM" "ATM"

Distância medida entre a razão do strike com o spot_price

delta
number

Indica quanto o prêmio pode variar a cada 1 unidade de variação do preço do ativo alvo

gamma
number

Indica quanto irá variar o delta a cada 1 unidade de variação do preço do ativo alvo (aceleração do delta da opção)

vega
number

Indica quanto o prêmio pode variar a cada 1% de variação da volatilidade

theta
number

Indica quanto o prêmio pode variar com a passagem de 1 dia

rho
number

Indica quanto o premio pode variar para cada variação de 1% na taxa de juros

volatility
number

Volatilidade implícita da opção

poe
number

Probabilidade de exercício segundo a fórmula do BS

bs
number

Preço teórico da opção baseado no modelo Black and Scholes

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/historical/options/{spot}/{from}/{to}?symbol={symbol}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    }
]

Consultar dados dos instrumentos em determinada data

Obtém uma lista com dados dos instrumentos na data especificada

Authorizations:
Access-Token
query Parameters
tickers
required
string
Example: tickers=VALEB101,ABEV3

Código de negociação dos instrumentos separados por vírgula

date
required
string <date>

Data da consulta

Responses

Response Schema: application/json
Array
Any of
symbol
string

Código de negociação do ativo

time
string <date-time>

Data de referência dos dados

open
number

Abertura do dia

high
number

Máxima do dia

low
number

Mínima do dia

close
number

Último preço do dia

volume
integer

Volume de negócios do dia

financial_volume
number

Volume financeiro do dia

ewma_current
number or null

Volatilidade EWMA na data

parent_symbol
string

Código de negociação do ativo alvo

spot_price
number

Preço do ativo alvo no momento da última negociação da opção

categoty
string
Enum: "CALL" "PUT"

Tipo de opção

due_date
string <date>

Data de vencimento do instrumento

days_to_maturity
integer

Dias faltantes para o vencimento da opção

strike
number

Valor de exercício da opção

premium
number

Valor do prêmio da opção

maturity_type
string
Enum: "AMERICAN" "EUROPEAN"

Tipo de opção

Request samples

curl -i -X GET \
  'https://api.oplab.com.br/v3/market/historical/instruments?tickers={tickers}&date={date}' \
  -H 'Access-Token: {access-token}'

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]