SmithBot

Client:
SmithBot
Tag:
Crypto – Trading

This web application serves as a bridge connecting the client’s server, which operates advanced automated cryptocurrency trading agents, with cryptocurrency exchanges and end users who wish to subscribe to these trading bots.

Our team consulted with the client to determine their precise needs. Learning about the client’s intended features and functions, as well as any unique integration needs with bitcoin exchanges and trading bots, was also a crucial first step.

SmithBot
Challenges We Encounter

A user interface that enables the customer care staff to quickly manage and track client subscriptions was required.

We had to get acquainted with a variety of crypto currency trading principles.

Coped with a variety of exchanges that were not API implementations.

We had to make orders for users at the same time.

We worked creatively with crypto exchange APIs to avoid blocking our server by IP address or even banning user keys.

Logs kept in AWS cloudwatch made it impossible for clients to examine the system; they needed to be streamed someplace and made more understandable to customers.

Solutions

We applied multiple tenancy structure to database, server and client code

  • AWS-based automated deployment
  • Integrated with other services to automate the setup procedure

Each user’s trade signal is processed in parallel.

Caching essential exchange data so that we did not have to contact the exchange too often

Configured a nginx gateway to handle the customer’s server’s fallback.

Streamed required logs to elastic-search for customer review

Features
Technologies

The appropriate technology for the SmithBot project was identified through the use of fundamental techniques. Specifically, the STS Software team utilized the following technologies for the this project:

  • React JS
  • Node JS
  • AWS S3
  • AWS Lambda Serverless
  • AWS API Gateway
  • AWS Cognito
  • AWS ElasticSearch cloud
  • AWS Postgres DB

Let’s Talk

Together with our developers and analysts, we begin by discussing and analysing our client’s needs, sketching the outline