Calculadora de futuros
Dos contratos largos de tamaño 50, comprados a 4.500 y cerrados a 4.512,25, ganan 1.225: un movimiento de 12,25 puntos por 50 y por 2. Indique el tamaño, los dos precios, los contratos y el lado y obtenga el resultado de la operación cerrada. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Tamaño del contrato
- 50
- Precio de entrada
- 4 500
- Precio de salida
- 4 512,25
- Contratos
- 2
- Posición
- Long
- Variación de precio
- 12,25
- Ganancia o pérdida por contrato
- 612,5
- Ganancia o pérdida
- 1 225
- Valor nominal de entrada
- 450 000
Un contrato de futuros cotizado es un acuerdo estandarizado para comprar o vender una cantidad fija de un subyacente en una fecha posterior, y el resultado en efectivo de mantenerlo no es la variación bruta de precio. Es esa variación multiplicada por el tamaño del contrato y por cuántos contratos hay en el libro. Esta calculadora de contratos de futuros toma el tamaño (el valor en efectivo de un punto de movimiento), el precio de entrada, el precio de salida y el número de contratos, y devuelve la ganancia o la pérdida con signo de la posición. Una posición larga gana cuando la salida queda por encima de la entrada; una corta gana cuando la salida queda por debajo.
Qué mide de verdad el beneficio o la pérdida de un contrato de futuros
Un contrato de futuros no es un lote de acciones al contado. Un punto impreso de índice, petróleo o metal se traduce en un importe fijo definido por la bolsa: ese importe es el tamaño del contrato, también llamado multiplicador o valor del punto. El E-mini S&P 500 multiplica cada punto de índice por cincuenta dólares; un contrato típico de crudo multiplica cada dólar por barril por mil barriles; un contrato de oro de cien onzas multiplica cada dólar por onza por cien.
El resultado en efectivo de una posición cerrada es, por tanto, la variación de precio por ese multiplicador por el número de contratos, con el signo del lado. El tenedor largo está comprado en el subyacente, así que una subida de la entrada a la salida es ganancia y una bajada es pérdida. El tenedor corto es la otra cara del mismo ticket estandarizado, así que una bajada de la entrada a la salida es ganancia y una subida es pérdida.
La fórmula se limita a las dos ejecuciones: no descuenta vida residual, no toma una marca en vivo y no resta comisión ni tasas de bolsa. Responde a la pregunta del blotter cuando el ticket ya está cerrado, que es también la de toda hoja introductoria de futuros. Los precios pueden ser negativos, porque algunos contratos de materias primas han cotizado por debajo de cero; la aritmética sigue valiendo.
El desenlace se informa como profit, loss o breakeven para que un cliente ramifique sin volver a comprobar el signo del efectivo. Combine las cifras con su propia hoja de margen si necesita el margen de variación de una sesión; este extremo solo devuelve el PyG en efectivo de la operación cerrada.
Qué puede hacer con ella
Recapitulación de blotter con ticket ya cerrado
Convierta un par de ejecuciones de futuros en PyG en efectivo multiplicando la variación de precio por el tamaño del contrato y por el número de contratos, con el signo largo o corto, sin abrir una hoja de mesa.
Calificación en aula y en exámenes
Puntúe ítems de PyG de futuros con un oráculo determinista que rechaza un tamaño de contrato cero o negativo y nunca trata un punto de índice crudo como un dólar.
Preguntas frecuentes
¿Cómo se calcula el beneficio o la pérdida de un contrato de futuros?
En una corta, la diferencia de precio se invierte. El resultado es efectivo, no puntos crudos.
¿En qué se diferencian las posiciones largas y cortas de futuros?
Una posición larga gana cuando la salida queda por encima de la entrada. Una corta gana cuando la salida queda por debajo. Omita position para que el valor por defecto sea long.
¿Qué es el tamaño de contrato en un futuro?
El tamaño de contrato es el valor en efectivo de un punto de movimiento de precio en un contrato, también llamado multiplicador o valor del punto. Ejemplo: 50 dólares por punto de índice en el E-mini S&P 500.
¿Se descuentan las comisiones y las tasas del mercado?
No. El resultado es la ganancia o la pérdida bruta entre sus dos precios de ejecución. No se restan comisiones, tasas del mercado ni costes de garantía, y no se usa ningún precio en vivo, así que reste sus costes después.
¿Puede ser negativo el precio de un futuro?
Sí. Algunos contratos de materias primas han cotizado por debajo de cero, de modo que el precio de entrada y el de salida pueden ser negativos. La cuenta sigue valiendo: la variación de precio por el tamaño y por los contratos da el resultado en efectivo.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
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)Ejemplo de solicitud
{
"contract_size": 50,
"entry_price": 4500,
"exit_price": 4512.25,
"contracts": 2
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.futures_contract",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Si el tamaño del contrato es cero o negativo, la tarea falla con invalid_input y no se factura, porque un multiplicador no positivo no describe un contrato listado.
Contrato de entrada, forma de la respuesta y conducta ante errores
Ejemplo: dos contratos largos de tamaño cincuenta, abiertos a cuatro mil quinientos y cerrados a cuatro mil quinientos doce con un cuarto, producen un beneficio de mil doscientos veinticinco, porque doce puntos y un cuarto por cincuenta por dos es ese efectivo. Envíe por POST un cuerpo JSON con cuatro campos obligatorios y un lado opcional. contract_size es el multiplicador y debe ser un número finito estrictamente mayor que cero; los alias multiplier, size, point_value y contract_multiplier apuntan al mismo campo. Un tamaño de contrato cero o negativo falla con invalid_input nombrando contract_size, porque un contrato listado no puede tener un valor de punto no positivo y esos fallos no se facturan. entry_price es la ejecución con la que se abrió la posición y debe ser un número finito; alias entry y open_price. exit_price es la ejecución con la que se cerró y debe ser un número finito; alias exit y close_price. Ambos precios pueden ser negativos para que una materia prima que imprime por debajo de cero siga teniendo un resultado bien definido. contracts es el número de contratos y debe ser un número finito estrictamente mayor que cero; alias quantity, n y num_contracts. position es el enumerado cerrado long o short y vale long si se omite; alias side y direction. Cualquier otra cadena falla con invalid_input nombrando position. Cada campo numérico puede llegar como número JSON o como cadena numérica. Campos ausentes, cadenas vacías y valores no finitos fallan con invalid_input nombrando el campo. Si la validación pasa, el cuerpo repite las cinco entradas, informa price_change como salida menos entrada, profit_loss_per_contract, el profit_loss completo, notional_entry y notional_exit, outcome como profit, loss o breakeven, y una cadena breve de fórmula.
Dónde aporta valor una calculadora de PyG de contratos de futuros
Las mesas y los operadores independientes usan una calculadora de contratos de futuros para recapitular un ticket cerrado sin abrir una hoja que silencie el multiplicador. Los diarios de operaciones y las tuberías de backtest necesitan un contrato parse pequeño que nunca invente una comisión, nunca llame a un proveedor de cotizaciones y nunca derive si más adelante alguien reescribe un producto de cuatro factores. La validación fallida no consume saldo. Las plataformas de aula y de preparación de exámenes envían tamaño de contrato, entrada, salida y contratos, y fijan profit_loss para que un corrector puntúe tanto la aritmética como el signo largo frente a corto, en lugar de aceptar una diferencia de precio cruda como si fuera efectivo. Como la implementación es parse pura de nivel A, cada llamada correcta cuesta el precio base publicado $0.002 sin tokens de modelo ni red saliente. Mantenga el tamaño de contrato estrictamente positivo, el número de contratos estrictamente positivo, position en el enumerado cerrado, fije el profit_loss redondeado en las pruebas y obtendrá un resultado de futuros reproducible para deberes, controles de blotter y workers de borde sin montar un motor de compensación propio.
Casos de integración
Diarios y fixtures de backtest
Fije profit_loss de tickets de futuros cerrados en un diario de operaciones o en un fixture de integración continua sin pedir una cotización en vivo ni una biblioteca de compensación.
Preguntas técnicas
¿Qué ocurre si el tamaño del contrato es cero o negativo?
La tarea falla con invalid_input. Un contrato de futuros listado no puede tener un multiplicador no positivo, así que un contract_size cero o negativo se rechaza y no se factura.
¿Cuánto cuesta la calculadora de contratos de futuros?
La herramienta del navegador es gratuita. Las peticiones API usan saldo prepago KIT a $0.002 por llamada correcta; la entrada inválida no se factura.