Nombre:  Capturar 1.PNG
Visitas: 84
Tamaño: 336.9 KB


A partir de ahora, según CoinMarketCap, el mercado global de criptomonedas vale más de $ 1.5T. La reciente aprobación de un par de bancos y compañías de tarjetas de crédito para incluir las criptomonedas como uno de sus productos financieros indica un futuro brillante para el mercado de las criptomonedas. En los últimos años, más personas comenzaron a comerciar con criptomonedas y hay muchos intercambios en todo el mundo que admiten diferentes criptomonedas. En este artículo, nos centraremos en el intercambio de Binance, que es el intercambio número uno del mundo en la actualidad. Es compatible con casi todas las criptomonedas y está disponible en muchos países.
En este artículo, discutiremos cómo acceder a los datos de la API de Binance y crear un tablero con Plotly.
Esto es lo que cubriremos:
• Cómo configurar la API de Binance
• Cómo obtener datos usando la API de Binance
• Construyendo un tablero con Plotly
1. Cómo configurar la API de Binance
Binance proporciona dos tipos de acceso a la API: 1) API de Binance real y 2) API de Binance de prueba.
1.1 Configuración de la API de Binance real
La API real proporciona acceso directo a su cuenta real, y cualquier operación realizada con esta API se reflejará en su cuenta real. Eso significa que debemos tener cuidado al usar esta API.
Primero, debes registrarte en Binance


Nombre:  Capturar 2.PNG
Visitas: 86
Tamaño: 59.1 KB


Después de registrarse, se le pedirá (o puede hacerlo desde la configuración de seguridad) que configure la autenticación de dos factores para mayor seguridad. Recomendaré elegir Google Authenticator.
Una vez que 2FA está configurado, puede ir a la pestaña de administración de API en la configuración. Se le pedirá que proporcione una etiqueta para sus claves API (esto será útil cuando tenga varias claves asociadas con una sola cuenta).


Nombre:  Capturar 3.PNG
Visitas: 83
Tamaño: 100.8 KB


Haga clic en crear API después de proporcionar una etiqueta para sus claves de API. Se le pedirá que se autentique una vez más, y luego podrá ver su "Clave API" y "Clave secreta". Esta es la única vez que lo verá, así que copie sus llaves en un lugar seguro. Por defecto, las claves tendrán el siguiente acceso, que se puede cambiar.

Nombre:  Capturar 4.PNG
Visitas: 36
Tamaño: 58.9 KB

Usaremos tanto API reales como claves de API de prueba para entender cómo trabajar con ellas. Por esto, no queremos estropear nuestra cuenta real, por lo que cambiaremos el permiso de las claves API reales a solo lectura.

Nombre:  Capturar 5.PNG
Visitas: 84
Tamaño: 102.2 KB



Guardaremos nuestras claves API reales en el archivo secret.cfg como se menciona a continuación (recuerde, nunca comparta ni publique su archivo secret.cfg)
1.2 Configuración de prueba de la API de Binance
Test Binance API le proporciona la misma sensación que interactúa con la API real. Recomendaría comenzar con esto (para operar) hasta que esté seguro de que su aplicación funciona bien.


Después de iniciar sesión, haga clic en "Generar clave HMAC_SHA256" y se le pedirá nuevamente que proporcione una etiqueta para las claves. Después de proporcionar la etiqueta, haga clic en generar y debería poder ver sus claves de API. Cópielos en un lugar seguro. Además, lea todos los detalles en la página principal sobre la API de prueba.
Ahora, modificaremos el archivo secret.cfg para incluir claves de API de prueba como se menciona a continuación
Hemos configurado con éxito las claves API reales y de prueba y las hemos guardado en el archivo secret.cfg. En la siguiente sección, nos centraremos en obtener datos utilizando estas claves API.
2. Cómo obtener datos usando la API de Binance
2.1 Instalar la biblioteca python-binance
Binance no proporciona una biblioteca de Python para interactuar con la API, pero hay una biblioteca de terceros muy famosa llamada python-binance, que usaremos para interactuar con la API.
Para instalar la biblioteca python-binance
$ pip instalar python-binance
2.2 Obtener información de la cuenta
De forma predeterminada, obtendrá algo de saldo en su cuenta de prueba en forma de diferentes criptomonedas, y usaremos la API de prueba para esta sección (ya que no quiero compartir la información de mi cuenta). Además, python-binance no tiene acceso a la API de prueba, por lo que debemos cambiar la URL del extremo.
Aquí está el código para obtener la información de la cuenta de prueba


Como puede ver en el resultado anterior, muestra cosas importantes como tipo de cuenta, saldos, permisos, etc.
Ahora, obtengamos el saldo de ETH.


Puedes hacer muchas cosas con la biblioteca python-binance
2.3 Obtener datos históricos
Según mi observación, la API de prueba no proporciona datos históricos reales; en su lugar, proporciona datos ficticios. Entonces, para acceder a datos reales, usaremos API reales y claves API reales.
Obtener el precio ETH desde la fecha más temprana disponible (en Binance) hasta el día de hoy


La salida anterior representa los siguientes parámetros como se menciona en el documento de la API de Binance


Convertir la salida a un marco de datos y guardarla como un archivo CSV

Ahora, para detener la transmisión de datos y cerrar WebSocket
Parece que hemos descubierto diferentes formas de obtener datos e información. Hay muchas otras cosas que puede hacer con la biblioteca python-binance y la API de Binance. Te animo a que eches un vistazo a esto y a esto. Ahora podemos pasar a construir un tablero de Plotly en la siguiente sección.
3. Creación de un panel con Plotly
En esta sección, crearemos un tablero con Plotly que rastreará nuestra cartera de la cuenta de prueba en tiempo real y cambiará el valor total de la cuenta en función de los datos de transmisión en vivo.
Así es como se verá nuestro panel de control final (no te preocupes por la estética, ya que puedes cambiarlo más tarde)


GIF: Tablero final
Como puede ver, hemos incluido las siguientes funciones en el panel de control.
• Indicador: valor total de la cartera en USDT
• Indicador: valor total de la cartera en BTC
• Indicador - Conversión BNB / USDT
• Gráfico circular: distribución de la cartera (en USDT)
• Gráfico de barras: distribución de tokens
Veamos el código.
Primero, importaremos todas las bibliotecas necesarias.
En segundo lugar, leeremos nuestras claves, estableceremos la conexión y obtendremos la información de la cuenta.
En tercer lugar, definiremos algunas funciones para cuidar la transmisión de datos y calcular métricas basadas en datos en vivo.
En cuarto lugar, comenzaremos a transmitir datos.
En quinto lugar, definiremos el diseño de nuestro panel, los gráficos y lo alojaremos.


Eso es todo, y debería poder realizar un seguimiento de su cartera de cuentas de prueba. Puede configurarlo fácilmente para una cuenta real utilizando claves reales sin cambiar la URL del punto final.
Esto nos lleva al final de este artículo. Puede acceder a todo el código en este repositorio de GitHub. Siéntase libre de marcar o marcar como favorito para su futura referencia.
Recientemente, comencé a escribir una serie sobre comercio algorítmico con Python y aprendizaje automático. Puede encontrar el primer artículo a continuación.