Robo-Advisor Data API
This interface for robo-advisors implements the data processes of a generic robo-advisor for data collection, data preparation, data storage and, to some extent, data security.
The implementation can be cloned using the git clone git@github.com:cu2koo/go-ra-data.git command
Requirements:
The interface has a modular structure so that the requirements are interchangeable except Go.
You will need:
- Go
- Database for storing user data
- Data provider for collecting market data
The following technologies and providers are used in this implementation:
- MariaDB as a database for the user data
- FactSet as a data provider for the market data
Configuration
In this example, the MariaDB is installed via Docker and then configured. A Docker installation is required for this. This is done in the following steps:
- Creation of the MariaDB container with the command:
docker run --detach --network bridge --name mariadb --env MARIADB_ROOT_PASSWORD=secret -p 3306:3306 mariadb:latest
- Open the MariaDB console and enter the password defined in the previous command via
docker exec -it mariadb bash and mariadb -p.
- Running the SQL commands found at data/mariadb/setup.sql, for creating the database and tables.
The following files are required for the configuration:
Execution
The application can be compiled and executed via Go. This following command can be used in the project directory for execution: go run ./cmd/main.go.
Documentation
The documentation is available as swagger.yaml. This file can be opened via the Swagger Editor, for example.