/Bitcoin-Arbitrage-Bot

Arbitrage bot WebApp using Go, Node, React

Primary LanguageJavaScript

Bitcoin-Arbitrage-Bot

Single Page App using Go, Node, React

combination of synch and asynch, real-time and event service systems.

  • C/S High performance provided by Golang to handle concurrent, real-time synch RESTful price ticker from 10 bitcoin exchange markets
  • B/S Asynch data communication and visualization by Node and React

Project Architecture

image

usage

  • in subproject "GoBot", run makefile script
    • "make all": rebuild then run
    • "make run": executing go bot
  • in subproject "Mern", run npm script
    • "npm run start-db": start mongod service
    • "npm run init-db" : init/ empty mongo
    • "npm run dev-all" : start webpack devServer
    • "npm run compile-react" : building react production
    • "npm run compile-node" : building node production
  • client port :
    • devServer: localhost:8000
    • server: localhost:3000

Roadmap

  • Go bot
    • 9 exchanges RESTful APIs
    • pull price ticker
    • synch architecture design
    • send data to Node by RESTful Post
    • simulator trade logic (delay hardcoded)
  • Node server
    • REST APIs design
    • MongoDB
    • Webpack: devServer, app and vendor bindles
    • pull data from node using whatwg-fetch
  • React
    • Rechart for chart UI
    • React-Boostrap Grid
    • React boostrap Navbar: play, pause control button
    • React boostrap Modal for Rechart's click zoom-in
    • React boostrap Navbar: menu popover for help messages
    • react gauge for profit monitor UI
  • todo
    • Websocket for pushing ticker from node to client
    • GraphQL for various exchange REST APIs

React Single Page App screenshot

charts grid big chart modal
chart_grid big chart on modal
navbar menu trade monitor gauges
navbar_menulist trade analysis gauges
real-time trade list mongo document
real-time trade list mongodb
react-tree null
react-tree react-tree

Part of Tech Probes

" " " "
image image
image image
image image
image image
image image