Calculadora de futuros
Dois contratos comprados de tamanho 50, abertos a 4.500 e encerrados a 4.512,25, rendem 1.225: um movimento de 12,25 pontos vezes 50 vezes 2. Informe o tamanho, os dois preços, os contratos e o lado para obter o resultado da operação encerrada. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Tamanho do contrato
- 50
- Preço de entrada
- 4.500
- Preço de saída
- 4.512,25
- Contratos
- 2
- Posição
- Long
- Variação de preço
- 12,25
- Lucro ou prejuízo por contrato
- 612,5
- Lucro ou prejuízo
- 1.225
- Valor nocional de entrada
- 450.000
Um contrato futuro listado é um acordo padronizado para comprar ou vender uma quantidade fixa de um subjacente em data posterior, e o resultado em caixa de mantê-lo não é a variação bruta de preço. É essa variação multiplicada pelo tamanho do contrato e por quantos contratos estão no livro. Esta calculadora de contratos futuros recebe o tamanho (o valor em caixa de um ponto de movimento), o preço de entrada, o preço de saída e o número de contratos, e devolve o ganho ou o prejuízo com sinal da posição. Uma posição comprada lucra quando a saída fica acima da entrada; uma vendida lucra quando a saída fica abaixo.
O que o lucro ou prejuízo de um contrato futuro realmente mede
Um contrato futuro não é um lote de ações à vista. Um ponto impresso de índice, petróleo ou metal vira um valor fixo definido pela bolsa: esse valor é o tamanho do contrato, também chamado de multiplicador ou valor do ponto. O E-mini S&P 500 multiplica cada ponto de índice por cinquenta dólares; um contrato típico de petróleo multiplica cada dólar por barril por mil barris; um contrato de ouro de cem onças multiplica cada dólar por onça por cem.
O resultado em caixa de uma posição fechada é, portanto, a variação de preço vezes esse multiplicador vezes o número de contratos, com o sinal do lado. O titular comprado está longo no subjacente, então uma alta da entrada até a saída é ganho e uma queda é prejuízo. O titular vendido é o outro lado do mesmo ticket padronizado, então uma queda da entrada até a saída é ganho e uma alta é prejuízo.
A fórmula fica só nas duas execuções: não desconta vida residual, não puxa uma marcação ao vivo e não subtrai comissão nem taxas de bolsa. Responde à pergunta do blotter depois que o ticket fechou, que também é a da planilha de todo primer de futuros. Os preços podem ser negativos, porque alguns contratos de commodity já imprimiram abaixo de zero; a aritmética continua válida.
O desfecho é informado como profit, loss ou breakeven para o cliente ramificar sem retestar o sinal do caixa.
Casos de uso
Recapitulação de blotter com ticket já fechado
Transforme um par de negócios de futuros em P&L em caixa multiplicando a variação de preço pelo tamanho do contrato e pelo número de contratos, com o sinal comprado ou vendido, sem abrir uma planilha de mesa.
Correção em sala de aula e em exames
Pontue itens de P&L de futuros com um oráculo determinístico que rejeita tamanho de contrato zero ou negativo e nunca trata um ponto de índice cru como um dólar.
Perguntas frequentes
Como se calcula o lucro ou o prejuízo de um contrato futuro?
Numa vendida, a diferença de preço se inverte. O resultado é caixa, não pontos crus.
Como posições compradas e vendidas de futuros diferem?
Uma posição comprada ganha quando a saída fica acima da entrada. Uma vendida ganha quando a saída fica abaixo. Omita position para o padrão ser long.
O que é o tamanho do contrato num futuro?
O tamanho do contrato é o valor em caixa de um ponto de movimento de preço em um contrato, também chamado de multiplicador ou valor do ponto. Exemplo: 50 dólares por ponto de índice no E-mini S&P 500.
As corretagens e taxas da bolsa estão incluídas?
Não. O resultado é o lucro ou prejuízo bruto entre os seus dois preços de execução. Corretagem, taxas da bolsa e custos de margem não são descontados, e nenhum preço ao vivo é usado; desconte os seus custos depois.
O preço de um contrato futuro pode ser negativo?
Sim. Alguns contratos de commodities já foram negociados abaixo de zero, então o preço de entrada e o de saída podem ser negativos. A conta continua valendo: a variação de preço vezes o tamanho e o número de contratos dá o resultado em dinheiro.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/fin/futures-contract \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"contract_size":50,"entry_price":4500,"exit_price":4512.25,"contracts":2}'const res = await fetch("https://api.kit.forhosting.com/fin/futures-contract", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/futures-contract",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/futures-contract", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"contract_size":50,"entry_price":4500,"exit_price":4512.25,"contracts":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"contract_size":50,"entry_price":4500,"exit_price":4512.25,"contracts":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/futures-contract", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.futures_contract",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Se o tamanho do contrato for zero ou negativo, a tarefa falha com invalid_input e não é cobrada, porque um multiplicador não positivo não descreve um contrato listado.
O que o lucro ou prejuízo de um contrato futuro realmente mede
Combine os números com a própria planilha de margem se precisar da variação de margem de uma sessão; este endpoint devolve só o P&L em caixa da operação fechada.
Contrato de entrada, forma da resposta e comportamento de erro
Exemplo: dois contratos comprados de tamanho cinquenta, abertos a quatro mil e quinhentos e fechados a quatro mil quinhentos e doze com um quarto, geram lucro de mil duzentos e vinte e cinco, porque doze pontos e um quarto vezes cinquenta vezes dois é esse caixa. Envie por POST um corpo JSON com quatro campos obrigatórios e um lado opcional. contract_size é o multiplicador e deve ser um número finito estritamente maior que zero; os alias multiplier, size, point_value e contract_multiplier apontam para o mesmo campo. Tamanho de contrato zero ou negativo falha com invalid_input nomeando contract_size, porque um contrato listado não pode ter valor de ponto não positivo e essas falhas não são cobradas. entry_price é o negócio em que a posição foi aberta e deve ser um número finito; alias entry e open_price. exit_price é o negócio em que a posição foi fechada e deve ser um número finito; alias exit e close_price. Ambos os preços podem ser negativos para que uma commodity que imprime abaixo de zero ainda tenha resultado bem definido. contracts é o número de contratos e deve ser um número finito estritamente maior que zero; alias quantity, n e num_contracts. position é o enumerado fechado long ou short e vale long se omitido; alias side e direction. Qualquer outra cadeia falha com invalid_input nomeando position. Cada campo numérico pode chegar como número JSON ou como cadeia numérica. Campos ausentes, cadeias vazias e valores não finitos falham com invalid_input nomeando o campo. Se a validação passa, o corpo ecoa as cinco entradas, informa price_change como saída menos entrada, profit_loss_per_contract, o profit_loss completo, notional_entry e notional_exit, outcome como profit, loss ou breakeven, e uma cadeia curta de fórmula.
Onde uma calculadora de P&L de contrato futuro se justifica
Mesas e traders independentes usam uma calculadora de contrato futuro para recapitular um ticket fechado sem abrir uma planilha que silencie o multiplicador. Diários de trade e pipelines de backtest precisam de um contrato parse pequeno que nunca invente comissão, nunca chame um fornecedor de cotação e nunca derive se mais tarde alguém reescrever um produto de quatro fatores. Validação falha não consome saldo. Plataformas de sala de aula e de preparação para exame enviam tamanho do contrato, entrada, saída e contratos, e fixam profit_loss para um corretor pontuar tanto a aritmética quanto o sinal comprado versus vendido, em vez de aceitar uma diferença de preço crua como se fosse caixa. Como a implementação é parse pura de nível A, cada chamada bem-sucedida custa o preço-base publicado US$ 0,002 sem tokens de modelo e sem rede de saída. Mantenha o tamanho do contrato estritamente positivo, o número de contratos estritamente positivo, position no enumerado fechado, fixe o profit_loss arredondado nos testes e você terá um resultado de futuros reproduzível para dever de casa, checagens de blotter e workers de borda sem montar um motor de compensação próprio.
Casos de integração
Diários e fixtures de backtest
Fixe profit_loss de tickets de futuros fechados num diário de operações ou num fixture de integração contínua sem puxar cotação ao vivo nem biblioteca de compensação.
Perguntas técnicas
O que acontece se o tamanho do contrato for zero ou negativo?
A tarefa falha com invalid_input. Um contrato futuro listado não pode ter multiplicador não positivo, então contract_size zero ou negativo é rejeitado e não é cobrado.
Quanto custa a calculadora de contrato futuro?
A ferramenta do navegador é gratuita. Pedidos API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.