• Stars
    star
    683
  • Rank 66,158 (Top 2 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 6 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Scrapes the Robinhood API to retrieve + store popularity and price data.

Robintrack

https://robintrack.net/

Robintrack is a tool for viewing data about the popularity of various stocks on the Robinhood brokerage. It allows users to view information about which are the most (and least) popular stocks held by its users and view trends over time. When combined with price history and other forms of data, this can be a useful tool for analyzing market sentiment.

Components

Scraper

The scraper periodically scrapes the Robinhood API to pull popularity and price data for all of the stocks that it offers. A server/worker model is used, with RabbitMQ being used a work queue. Once scraped, the data is stored in MongoDB.

Backend

The backend is a Rails application that mainly serves as a shim to the MongoDB database. It serves the API used by the frontend.

Frontend

The frontend is a single-page React application that provides users with access to the site's data via data tables and visualizations.

Installation

You'll need a MongoDB instance running and a RabbitMQ instance for the scraper. Configuration for the backend is handled via environment variables; the MONGO_HOST and MONGO_PORT variables are read at runtime. The scraper takes the same environment variables for MongoDB and everything else via command line arguments. Use the --help flag for both the master and worker scripts to view available config options.

There also must be a Redis instance accessible to the instance with an address defined in the REDIS_HOST environment variable. This is used for caching API requests that do not change between runes of the scraper.

Docker

There is a Dockerfile provided for the backend. To use it, just run docker build -t robinhood-backend and then docker run -it --net host -p 4000:4000 -e SECRET_KEY_BASE=some_secret_key -e MONGO_HOST=example.com -e MONGO_PORT=27017 robinhood-backend. (--net host is only necessary if you have MongoDB or RabbitMQ running locally, and it doesn't work on Mac).

More Repositories

1

tickgrinder

Low-latency algorithmic trading platform written in Rust
Rust
522
star
2

web-synth

A web-based sound synthesis, music production, and audio experimentation platform
TypeScript
350
star
3

three-good-godrays

Screen-space raymarched godrays for three.js using the pmndrs postprocessing library
TypeScript
152
star
4

neural-network-from-scratch

A neural network library written from scratch in Rust along with a web-based application for building + training neural networks + visualizing their outputs
Rust
110
star
5

cryptoviz

A web-based Depth-Of-Market visualization for data of the Poloniex cryptocurrency exchange.
JavaScript
73
star
6

spotifytrack

A personal homepage showing users' top songs and artists, providing a shareable link that they can use to show it off to friends.
TypeScript
65
star
7

rust-cloud-run-demo

A demo project showing off a Google Cloud Run-compatible web server using Rust, Rocket, Diesel, and MySQL
Rust
34
star
8

svelte-todo

Full-stack to-do app to try out SvelteKit. Minimal with SQLite database + HTTP basic auth
TypeScript
25
star
9

osutrack-api

API for osu!track https://ameobea.me/osutrack/
TypeScript
21
star
10

sketches

Various coding experiments and artsy things
Rust
17
star
11

phost

Small project hoster. Can deploy static websites + Dockerfiles and provide a management TUI client.
Python
17
star
12

polotrack

A web-based dashboard for analyzing Poloniex portfolio holdings + trade history to provide useful insights
JavaScript
15
star
13

io-game

A .io game written using Elixir/Phoenix and WebAssembly
Rust
12
star
14

rocket_async_compression

Implements response compression with gzip and brotli via the `async-compression` crate
Rust
11
star
15

noise-asmjs

Uses `noise-rs` library rendered to render noise to a canvas, allowing users to select and configure the utilized noise functions.
JavaScript
11
star
16

rnn-viz

Interactive visualizations and demos that are used in a blog post I wrote about logic in the context of neural networks
Jupyter Notebook
11
star
17

minutiae

Simulation engine involving a 2D universe populated by cells and entities
Rust
10
star
18

osutrack_irc_v2

Utility to provide osu! players with access to osu!track via in the in-game chat system.
JavaScript
7
star
19

FXCMDataDownloader

A Node/Java utility that downloads and stores historical price data from the FXCM API
Java
6
star
20

homepage

My personal website
JavaScript
6
star
21

algobot3

Third iteration of the algorithmic trading bot I've been working on.
JavaScript
5
star
22

ameotrack

Personal data storage and utility platform.
JavaScript
5
star
23

sprout

AI-powered anime recommendation website for MyAnimeList + AniList with other tools, visualizations, and profile analytics
Jupyter Notebook
5
star
24

sketches-3d

Experiments and demos of 3D game-like things. Mostly using Blender + Three.JS with custom shaders and interactive bits.
TypeScript
5
star
25

jantix

A fully-featured TypeScript library defining a modular, self-contained, 100% type-safe Redux architecture
TypeScript
4
star
26

GAWTrack

Events history tracker for GAW cloud miners.
PHP
4
star
27

algobot_elixir

Second iteration of the forex trader bot implemented in elixir
Elixir
4
star
28

advent-of-code-2018

https://adventofcode.com/
Rust
3
star
29

bot4

REPOSITORY MOVED -> https://github.com/ameobea/tickgrinder
2
star
30

paper_parser

Processes scientific papers and determines regions of interest in them.
Python
2
star
31

rust-stackdriver-logging-utils

Utilities and functions that make logging to Google Stackdriver from Rust using fern easier.
Rust
2
star
32

network_research

Misc. files and scripts used for network research
Python
2
star
33

snapmeo

A screenshotter and image uploader for my personal file hosting platform.
Rust
1
star
34

kouffee-bot

Bot for the discord server
TypeScript
1
star
35

hazbin

Website that randomly picks images from my personal collection of screenshots from the pilot episode of Hazbin Hotel. I have hundreds.
JavaScript
1
star
36

amc-web-ui

Main repository for the AutoMultipleChoice-based application being built for CS358
Python
1
star
37

bittrex-orderbook-importer

imports orderbook updates from bittrex
JavaScript
1
star
38

mysql-log-visualization

Tool for creating a live, web-based visualization of a MySQL server's activity.
Rust
1
star
39

Calculator-Programs

A collection of TI graphing calculator programs made by me during my early years of programming.
1
star
40

quavertrack

Quavertrack is a tool for tracking your stats progression in the rhythm game Quaver, allowing you to see how you and other players improve over time.
TypeScript
1
star
41

algobot

Algorithmic trading platform
JavaScript
1
star