pyquotex is a Python library designed to easily integrate with the Quotex API, enabling automated trading operations. Fully open-source and licensed under MIT, the library provides features like order execution, balance checking, real-time market data collection, and more. Perfect for traders and developers looking to build efficient and customized solutions.
Para comenzar a utilizar PyQuotex, primero necesitas inicializar el cliente con tus credenciales:
from quotexapi.stable_api import Quotex
cliente = Quotex(
email="tu_correo@gmail.com",
password="tu_contraseña",
lang="es", # Idioma por defecto (es=Español, en=Inglés, pt=Portugués)
)
# Opcional: Habilitar logs de debugging
cliente.debug_ws_enable = True
user_agent
: Personalizar el User-Agent (por defecto usa uno predefinido)root_path
: Directorio raíz para almacenar archivosuser_data_dir
: Directorio para datos del usuarioasset_default
: Par de divisas por defecto (ej: “EURUSD”)period_default
: Periodo por defecto en segundos (ej: 60)La conexión se realiza de forma asíncrona. Aquí hay dos formas de establecer la conexión:
import asyncio
async def conectar():
check_connect, mensaje = await cliente.connect()
if check_connect:
print("¡Conexión exitosa!")
# Tu código aquí
else:
print(f"Error de conexión: {mensaje}")
# Ejecutar
asyncio.run(conectar())
async def conectar_con_reintentos(intentos=5):
check_connect, mensaje = await cliente.connect()
if not check_connect:
intento = 0
while intento <= intentos:
if not await cliente.check_connect():
check_connect, mensaje = await cliente.connect()
if check_connect:
print("¡Reconexión exitosa!")
break
else:
intento += 1
print(f"Reintentando conexión {intento} de {intentos}")
await asyncio.sleep(5)
return check_connect, mensaje
PyQuotex maneja automáticamente las sesiones y guarda los datos en un archivo session.json
. Puedes configurar manualmente los datos de sesión:
cliente.set_session(
user_agent="Mozilla/5.0...",
cookies="tus_cookies", # Opcional
ssid="tu_ssid" # Opcional
)
# Cambiar a cuenta de práctica
cliente.set_account_mode("PRACTICE")
# Cambiar a cuenta real
cliente.set_account_mode("REAL")
El sistema implementa una reconexión automática cuando detecta desconexiones. Sin embargo, también puedes manejarla manualmente:
async def mantener_conexion():
while True:
try:
if not await cliente.check_connect():
print("Detectada desconexión, intentando reconectar...")
check_connect, mensaje = await cliente.connect()
if check_connect:
print("Reconexión exitosa")
else:
print(f"Error en reconexión: {mensaje}")
await asyncio.sleep(5)
await asyncio.sleep(1)
except Exception as e:
print(f"Error: {e}")
await asyncio.sleep(5)
Es importante cerrar la conexión cuando termines:
cliente.close()
import asyncio
from quotexapi.stable_api import Quotex
async def ejemplo_completo():
# Inicialización
cliente = Quotex(
email="tu_correo@gmail.com",
password="tu_contraseña",
lang="es"
)
try:
# Conexión con reintentos
check_connect, mensaje = await conectar_con_reintentos()
if check_connect:
# Verificar balance
balance = await cliente.get_balance()
print(f"Balance actual: {balance}")
# Realizar operaciones...
except Exception as e:
print(f"Error: {e}")
finally:
cliente.close()
# Ejecutar
asyncio.run(ejemplo_completo())
async/await
.