Robinhood on Rails is a simple web-based dashboard for the free stock trading phone app Robinhood. Users can buy, sell, and research stocks, all for no charge. You're presented with your autorefreshing portfolio after logging in: (more screenshots here.)
I am not affiliated with Robinhood or its associates. I am in no way responsible for any losses incurred through using this code or application. This app relies on the private API as found here (special thanks to sanko for providing documentation). It isn't recommended to use this since the API is private and can change unexpectedly at any time, and is not officially supported. Using any kind of unpublished API for investing is risky, and you should thoroughly review any code involving any kind of money or investment published on the web to ensure the creator isn't doing something malicious. It's your money, after all. Your safest bet is to use the sanctioned phone app. Having said that, creating this app has been a lot of fun and I use it a lot more than I use the phone app.
- Made it easier to log in with 2FA enabled
- Fixed login bug with challenge authentication
- Fixed another login bug
- Added support for new challenge login authentication
- Fixed login bug
- Started cryptocurrency watchlist support
- Added rough API explorer portal
- Updated token to Oauth2
- Bug fix for correcting the buying power for instant accounts
- Bug fix for displaying correct numbers in the "Return" column when the return is > $1000
- Added support for splits
- Added additional order support
- Market order
- Limit order
- Stop loss order
- Stop limit order
- Added details to order history page
- Various refactor improvements and bugfixes
- Added Stocktwits integration
- Added historical (week, year, all) porfolio price charts
- Realtime, auto-refreshing portfolio dashboard
- Custom "folder" labels (stock organizing dividers)
- Watchlist
- Add and remove stocks
- Custom "folders" labels (stock organizing dividers)
- Reorganizing/ordering stocks via drag 'n drop automatically syncs with Robinhood phone app
- Price charts for stocks and portfolio history
- Fundamentals tooltips
- Stocktwits integration
- Orders
- Supports market, limit, stop loss, and stop limit orders for buying and selling
- Cancel pending orders
- Transfers
- Basic deposit and withdraw from existing ACH accounts
- View history
- Dividends
- Notifications
- View and dismiss
- Cryptocurrency
- Search and view prices for cryptocurrencies
- Watchlist management
- Security
- 2FA support
- Challenge authentication support
- Estimates
- Settings
- Custom stock alerts
- Future dividends
- Volume charts
- Improving performance of Orders page
- Automated, complex trading rules
You have the choice of a basic installation or Docker (see instructions below).
This is a basic Rails project. You can install Ruby on Rails (and RVM) by visiting the RVM install page. If you already have ruby on rails set up, simply clone this project. Then run the basic steps to run the project like you would any other rails project:
rvm install 2.3.5
rvm use 2.3.5
bundle update
bundle install
bundle exec rake db:create db:migrate
bundle exec rails server
- navigate to http://localhost:3000/ in whatever webrowser you use (I use chrome, for instance), and you should see a login screen:
- Enter your log in info, and you'll be presented with your Robinhood dashboard.
This repository comes with a Dockerfile to easily set up a server with minimal configuration. To build the image, run:
$ git clone https://github.com/bcwik9/robinhood-on-rails.git
$ cd robinhood-on-rails
$ docker build --tag robinhood-on-rails .
Then you can run the server:
$ docker run -dt -p 3000:3000 robinhood-on-rails
This will run the server on your host-machine's port 3000.
I am not affiliated with Robinhood or any of its associates. This is just a project I find fun. More info at bencwik.com
Thanks to Jeffrey Smith for his designs which I based a lot of the front end work off of. Thanks to sanko for their work documenting Robinhood's API. Last but not least thanks to Robinhood for their app!