2
Seguir
1
Seguidores

Los futuros de OKEX utilizan el modo de mercado WebSocket y las funciones asincrónicas de Go. ¿Hay algún impacto al cambiar los tipos de contrato?

Creado el: 2019-09-14 18:06:24, Actualizado el:
comments   1
hits   1849

Supongamos que queremos hacer un arbitraje de BTC a largo plazo en los futuros de OKEX, los tipos de contrato son this_week y quarter, y queremos usar el modelo de mercado websocket. Ahora solo se puede agregar un objeto de intercambio, cada vez que GetTicker, exchange.Go, debe ser llamado una vez SetContractType.

El código de ejemplo y el problema de websocket son los siguientes:

exchange.IO(“websocket”); exchange.SetContractType(“this_week”); var tickerA = exchange.GetTicker(); exchange.SetContractType(“quarter”); var tickerB = exchange.GetTicker();

Pregunta: ¿Se vuelve a conectar el websocket cada vez que se llama a exchange.SetContractType?

El código de ejemplo y el problema de la función Go son los siguientes:

exchange.SetContractType(“this_week”); var orderA = exchange.Go(“Sell”,tickerA.Last, 1); exchange.SetContractType(“quarter”); var orderB = exchange.Go(“Buy”,tickerB.Last, 1);

Pregunta: Por razones de asíncrono, ¿es posible que el tipo de contrato que se utiliza en la ejecución de order A sea quarter?

Otras preguntas:

  1. Si los problemas mencionados son reales, ¿hay alguna manera de evitarlos?
  2. ¿Puede un par de transacciones de la misma bolsa crear dos objetos de intercambio sin que se afecten entre sí? Por ejemplo, los dos objetos de intercambio tienen sus propias conexiones websocket y no se afectan entre sí.