Project: Dashboard

15-Nov-2022

dashboard

Built with Svelte and Go, I use this application to manage my various trading algorithms.

I used to manage all my algorithms via a docker compose file. As I wrote more and more trading algorithms, it became difficult to manage the different algorithms and the different variations of a similar algorithm. On top of that, I would need terminal access whenever I wanted to modify the parameters to an algorithm and it's a real pain to use terminal on the phone when on-the-go. It was also difficult to compare the performance of each algorithm.

Hence, Dashboard was built!

Here's how it works, I have various trading algorithms written mostly in Python and built as Docker images.

Dashboard is then used to configure various parameters of the algorithms, these configurations are unique to each algorithm but could range from ciphered API keys to leverage setting to pairs to trade.

Dashboard also manages these algorithms, starting and restarting them as necessary (e.g. when an exception occurs, scheduled restarts and parameter changes).

Finally and most importantly, I try to take a quantitative approach to the models and with that, performance tracking is important. (1) the algorithms trades are recorded, (2) the real-time balance is streamed via WS and also recorded and (3) the live stdout from the algorithm is also relayed to the browser front-end for me to have a one-place manage all approach to managing these various algorithms.

Made with ♡. Frontend on Svelte. Real-time data powered by Go microservices.

Josh Teng