scarlett: Robinhood analytics and algorithmic trading |
---|
scarlett is a project to obtain stock data, create trading strategies, test against historical data (backtesting), and deploy strategies for algorithmic trading.
You will need Python 3.8+ and a Robinhood account.
Place your credentials in a file named .env
in the project root directory.
Follow this structure:
RH_USERNAME=...
RH_PASSWORD=...
RH_2FA=...
IEXCLOUD=...
To install the necessary packages, run
pip install -r requirements.txt
To make a script, create a new .py file in the scripts/
dir with the following code:
import sys
sys.path.append('src')
from Algotrader import Scarlett # noqa autopep8
sl = Scarlett()
- Broker authentication
- Automated data storage
- Backtesting engine
- Monte Carlo simulations
- Plotting and technical analysis
- Model training
- Strategy definition (start with buy and hold)
- Buy and sell functionality
- Live trading
- Documentation
Check out the Roadmap for progress ...
Using Robinhood 2FA, we can simply provide our MFA one-time password in the .env
file to login to Robinhood (via pyotp
).
-
Price and Volume
-
Actions
-
Sentiment
- News Sentiment
- Social Sentiment
- Analyst Recommendations
-
Company / Micro
- Profile (Sector, # of Employees)
- Earnings
- Cash Flow
- CEO Compensation
-
Government / Macro
- Unemployment Rate
- Real GDP
- US Recession Probabilities
-
Market
- General Volatility (VIX)
- Sector Performance