Si ya lograste iniciar sesión en IQ Option con la iqoptionapi y obtener velas, el siguiente paso natural es el que más dudas genera: cómo enviar una orden y después saber si ganaste o perdiste. En esta guía directa y honesta de 2026 verás los métodos buy() (opciones binarias) y buy_digital_spot() (opciones digitales), cómo capturar el id de la operación y cómo seguir el resultado con check_win_v4() — siempre en cuenta demo, que es donde este tipo de pruebas debe vivir.
¿Quieres saltarte la parte tediosa de configurar todo a mano y ver un flujo de automatización ya montado para IQ Option?
Ver la guía de automatización de IQ Option en Python →Qué es realmente la iqoptionapi (y qué no es)
La iqoptionapi es una librería no oficial mantenida por la comunidad que se comunica con los servidores de IQ Option por WebSocket. No es un producto del bróker, puede romperse cuando la plataforma cambia algo internamente y no tiene ninguna garantía de funcionamiento. Úsala como herramienta de estudio de automatización — no como una «máquina de dinero».
pip install -U iqoptionapi, usa una cuenta PRACTICE y nunca ejecutes código de terceros con las credenciales de tu cuenta real sin entender cada línea.
Paso 1 — Conectar y elegir la cuenta demo
Todo empieza con el login y el cambio a la cuenta de práctica. Confirma que la conexión funcionó antes de enviar cualquier orden:
from iqoptionapi.stable_api import IQ_Option
import time
api = IQ_Option("tu_email", "tu_contrasena")
status, reason = api.connect()
print("Conectado?", status, reason)
# SIEMPRE en demo para probar
api.change_balance("PRACTICE")
print("Saldo demo:", api.get_balance())
Paso 2 — Enviar una orden binaria con buy()
El método buy() sirve para opciones binarias clásicas. La firma es buy(valor, ativo, direcao, expiracao), donde direcao es "call" (alza) o "put" (baja) y expiracao está en minutos. Devuelve una tupla (status, id):
valor = 1 # monto de la entrada
ativo = "EURUSD" # par
direcao = "call" # "call" o "put"
expiracao = 1 # minutos
ok, order_id = api.buy(valor, ativo, direcao, expiracao)
if ok:
print("Orden enviada. ID:", order_id)
else:
print("Fallo al enviar la orden")
order_id. Sin él no puedes consultar el resultado después. Si ok llega como False, normalmente es un activo cerrado, payout no disponible o monto por debajo del mínimo.
Paso 3 — Seguir el resultado con check_win_v4()
Después de enviar, esperas a que la vela cierre y consultas el desenlace. check_win_v4() es el método recomendado en las versiones actuales: devuelve el estado de la operación y la ganancia/pérdida. Hazlo de forma bloqueante solo en fase de estudio:
resultado, lucro = api.check_win_v4(order_id)
if lucro > 0:
print(f"WIN — ganancia de {lucro:.2f}")
elif lucro == 0:
print("EMPATE (devolucion)")
else:
print(f"LOSS — perdida de {abs(lucro):.2f}")
El valor de lucro ya viene neto: positivo es ganancia, cero es empate (stake devuelto) y negativo es pérdida. En loops reales, prefiere verificar de forma asíncrona en lugar de bloquear el programa esperando cada vela.
¿Y las opciones digitales? Usa buy_digital_spot()
Las digitales tienen un flujo separado. La entrada se hace con buy_digital_spot(ativo, valor, direcao, expiracao) y el resultado se consulta con check_win_digital_v2(id):
ok, order_id = api.buy_digital_spot("EURUSD", 1, "call", 1)
if ok:
# espera a que cierre y consulta
fechado = False
while not fechado:
fechado, lucro = api.check_win_digital_v2(order_id)
time.sleep(1)
print("Resultado digital:", lucro)
buy() + check_win_v4() para binarias; buy_digital_spot() + check_win_digital_v2() para digitales. Intercambiarlos es la causa n.º 1 del «id no encontrado».
Errores comunes al enviar órdenes
Los tropiezos más frecuentes son: intentar comprar con la sesión desconectada (revisa el status del connect()), usar un activo cerrado en ese horario, un monto por debajo del mínimo permitido, y olvidar cambiar a PRACTICE — lo que haría que la orden fuera a la cuenta real. Valida siempre el retorno booleano antes de continuar.
FAQ
¿La iqoptionapi es oficial? No. Es un proyecto de la comunidad, sin soporte del bróker, y puede dejar de funcionar en cualquier momento.
¿Se pueden garantizar ganancias automatizando? No. La automatización solo ejecuta reglas; no cambia el hecho de que las opciones binarias tienen valor esperado negativo para el trader en la mayoría de los escenarios.
¿Puedo probar sin arriesgar dinero? Sí, y debes hacerlo. Usa change_balance("PRACTICE") y mantén todo en cuenta demo.
¿Cuál es la diferencia entre buy() y buy_digital_spot()? El primero envía opciones binarias; el segundo, opciones digitales. Cada uno tiene su propio método de verificación de resultado.
Aviso: las opciones binarias y digitales son productos de altísimo riesgo y la mayoría de los inversores minoristas pierde dinero. Este contenido es educativo y técnico, no constituye recomendación de inversión, oferta ni promesa de retorno. Las librerías no oficiales pueden violar los términos de uso de la plataforma y dejar de funcionar sin aviso. Prueba siempre en cuenta demo antes de cualquier uso con dinero real.
