matbarofex / pyRofex

Python library to connect with Matba Rofex's Rest and Websocket APIs. Market Data and Order Routing are supported.
MIT License
83 stars 56 forks source link

Invalid WebSocket Header #30

Closed twissell- closed 1 year ago

twissell- commented 1 year ago

Buenas!

Hace unos dias nos topamos con error. No estamos pudiendo establecer la conexion al websocket de remarkets. Lo investigamos un poco pero estamos desorientados. No sabemos si es un error del codigo o si cambio algo del lado de Primary.

Podran darnos una mano para descular esto?

Describe the bug Al correr init_websocket_connection recibimos la siguiente excepcion:

DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.remarkets.primary.com.ar:443
DEBUG:urllib3.connectionpool:https://api.remarkets.primary.com.ar:443 "POST /auth/getToken HTTP/1.1" 200 0
ERROR:root:EXH> Invalid WebSocket Header
ERROR:root:EXH> Connection could not be established.

To Reproduce

import pyRofex
import logging

logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger("")

pyRofex.initialize(
    user="...",
    password="...",
    account="...",
    environment=pyRofex.Environment.REMARKET,
)

def market_data_handler(message):
    logger.info("MDH> " + str(message))

def error_handler(message):
    logger.error("ERH> " + str(message))

def exception_handler(message):
    logger.error("EXH> " + str(message))

pyRofex.init_websocket_connection(
    market_data_handler=market_data_handler,
    error_handler=error_handler,
    exception_handler=exception_handler,
)

requirements.txt

websocket-client==0.57.0
git+https://github.com/matbarofex/pyRofex.git@master#egg=pyRofex
# pyRofex==0.5.0rc1 # < Mismo error con esta version 

Expected behavior La conexion deberia iniciarse.

Desktop (please complete the following information):

wolf-lucas commented 1 year ago

Estoy en la misma, mismo error de "Invalid WebSocket Header". Creo que el viernes me salió el primer error y desde entonces no encontré la forma.

@juliansodo tu soporte en esto, por favor.

twissell- commented 1 year ago

Tampoco estamos pudiendo traernos el trade history:

th = pyRofex.get_trade_history(
    ticker="GGAL/ABR23",  # mismo error con GGAL/JUN23, RFX20/ABR23, RFX20/JUN23
    start_date=date.today() - timedelta(days=1),
    end_date=date.today(),
)

logger.info(th)

Nos da:

DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.remarkets.primary.com.ar:443
DEBUG:urllib3.connectionpool:https://api.remarkets.primary.com.ar:443 "POST /auth/getToken HTTP/1.1" 200 0
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.remarkets.primary.com.ar:443
DEBUG:urllib3.connectionpool:https://api.remarkets.primary.com.ar:443 "GET /rest/data/getTrades?marketId=ROFX&symbol=GGAL/ABR23&dateFrom=2023-04-16&dateTo=2023-04-17 HTTP/1.1" 200 None
INFO:root:{'status': 'ERROR', 'message': None, 'description': 'Internal Error'}
franluiscarrillo commented 1 year ago

Buenos días, en las fechas que reportaron el problema tuvimos un mal funcionamiento de la API websocket. Actualmente se estabilizo el funcionamiento de la misma, ¿podrían validarnos si siguen teniendo este problema que reportaron?
Muchas gracias

wolf-lucas commented 1 year ago

Buenas tardes Fran, en mi caso ya pude conectarme.

twissell- commented 1 year ago

Buenas! A nosotros nos sigue dando:

DEBUG:urllib3.connectionpool:https://api.remarkets.primary.com.ar:443 "GET /rest/data/getTrades?marketId=ROFX&symbol=GGAL/JUN23&dateFrom=2023-04-23&dateTo=2023-04-24 HTTP/1.1" 200 None
INFO:root:{'status': 'ERROR', 'message': None, 'description': 'Internal Error'}

Lo que si cambio es el pyRofex.init_websocket_connection. Donde antes not toraba Invalid WebSocket Header, ahora no nos tira nada. Se queda colgado. Probamos desde varios equipos con conecciones diferentes y el resultado fue el mismo.

Edit: La coneccion al websocket parece estar andando ahora. Pero seguimos sin poder traernos el historico de trades.

twissell- commented 1 year ago

Buenas! Estoy ya fue fixeado por la gente de primary. Muchas gracias!