Un framework de trabajo y ejecución para Trading Algorítmico.
Documentación »
Ver Curso
·
Reportar Bug
·
Solicitar Feature
PyPro Bot es un framework de trabajo y ejecución para estrategias de trading algoritmico.
En la parte principal del motor de ejecución se usa Apache Airflow para orquestar las funciones que representan estrategias de trading. Dichas estrategias de trading siguen una serie de pasos tales como: extracción de datos, generación de señales, validación de señales, reglas de posición, ejecución de ordenes en exchange, registro de datos.
Estructura dentro del folder dags (que es el directorio raíz):
-- api -- settings -- strategies -- trading_bot
![Product Name Screen Shot][product-screenshot]
Para instalar el proyecto solo hay que seguir los siguientes pasos.
Necesitaras tener los siguientes softwares instalados
- Git: https://git-scm.com/downloads
- Docker: https://docs.docker.com/docker-for-windows/install/
- VsCode: https://code.visualstudio.com/download
- DBBeaver: https://dbeaver.io/download/
- OR Other DB Explorer
- MySQL Workbench: https://dev.mysql.com/downloads/workbench/
- Anaconda: https://www.anaconda.com/products/individual
Ya que tengas instalados todos los requerimientos necesarios puedes seguir los siguientes pasos para ejecutar el Framework de Trabajo.
Por el momento se encuentra código y librerias para el exchange de ByBit
- Bybit: https://rb.gy/ovjvny
- Clona el repositorio
git clone https://github.com/memonkey01/trading_bot_pypro
- Ejecuta Docker-Compose
docker-compose up
- Ve a http://localhost:8080 para visualizar el administrador de tareas (Apache Airflow)
Una vez descargado usar docker-compose para levantar el ambiente de desarrollo.
docker-compose up
docker-compose down
Despues podremos modificar el archivo config.py con nuestras variables iniciales (Api Keys y Montos)
Finalmente dentro de la interfaz podemos activar nuestros DAGs que representan la ejecución de nuestra estrategia.
Para modificar las estrategias solamente tienes que agregar tus estrategias en las carpetas adecuadas de la estructura de trabajo, seguido tendrás que crear el archivo de ejecución siguiendo los pasos recomendados (extracción de datos, generación de señales, validación de señales, reglas de posición, ejecución de ordenes en exchange, registro de datos).
Como paso final para agregar tu estrategia deberás crear un archivo llamado dag_nombre_estrategia, para que este pueda ser leido por Apache Airflow.
Para contribuir en el proyecto debes de realizar los siguientes pasos para que tu request sea propiamente manejado.
- Haz un Fork del proyecto
- Crea una Branch con tu Feature(
git checkout -b feature/AmazingFeature
) - Haz Commit a tus cambios(
git commit -m 'Add some AmazingFeature'
) - Haz Push al Branch correspondiente (
git push origin feature/AmazingFeature
) - Abre un Pull Request
Guillermo Izquierdo - @cryptomonkey01 - [email protected]
Project Link: https://github.com/memonkey01/trading_bot_pypro
Un agradecimiento a todos los miembros de PyPro que con su membresia han apoyado la creación de este contenido y a todos los miembros de Youtube.
También un enorme agradecimiento a Puckel por su imagen de Apache Airflow que ha servido como base para la estructura de este repositorio.