A command-line tool for Robinhood portfolio management and AI-powered stock analysis.
ββββββββββββββββββββββββββββββββββββββ
β Portfolio β
ββββββββββββββββββββββββββββββββββββββ€
β Total $125,432.00 β
β Cash $8,234.00 β
β Invested $117,198.00 β
ββββββββββββββββββββββββββββββββββββββ
βΆ π View positions with ratings
π Increase all positions by %
π Decrease all positions by %
π Analyze a ticker
ββββββββββββββββββββββββββββββββββ
β Exit
Run rob with no arguments to launch the interactive dashboard:
robThis gives you a visual portfolio summary and menu to:
- View positions with ratings and allocation %
- Increase or decrease all positions by a percentage
- Analyze any ticker with AI
- Navigate with arrow keys, no commands to remember
Increase or decrease all your Robinhood positions by a percentage with a single command. Perfect for systematic rebalancing or scaling in/out of your entire portfolio.
# Increase all positions by 5%
rob adjust --action increase --percentage 5
# Decrease all positions by 10% (taking profits)
rob adjust -a decrease -p 10
# Preview what would happen (no trades executed)
rob adjust -a increase -p 3 --dry-runFeatures:
- Cost estimation before executing any trades
- Balance checking to prevent insufficient funds errors
- Interactive confirmation for each trade (or
--no-confirmfor automation) - Position-by-position control with skip/abort options
Get comprehensive analysis on any stock using earnings data, transcripts, and real-time web search.
rob analyze AAPLThe analyzer:
- Fetches latest ticker data (price, market cap, etc.)
- Fetches latest earnings report (revenue, EPS, margins)
- Fetches earnings call transcript (management commentary)
- Runs analysis through GPT-5.2 with web search to:
- Find comparable companies and relative valuation
- Check recent news and analyst sentiment
- Evaluate management credibility
- Identify headwinds and tailwinds
- Generate a 1-5 buy score with rationale
Results are cached per quarter - if you've already analyzed a stock for the current quarter, it shows the cached analysis instantly. Use --refresh to force a new analysis.
# Force fresh analysis even if cached
rob analyze AAPL --refreshShows a compact summary first, then an interactive menu to drill into sections:
============================================================
AAPL ANALYSIS SUMMARY
============================================================
Rating: β
β
β
β
β BUY
Outlook: Long-term BULLISH | Short-term NEUTRAL
Valuation: FAIRLY VALUED vs peers
News: POSITIVE
Management: 4/5
β Top Risk: Smartphone market saturation in developed markets...
β¦ Top Catalyst: Services revenue growing at 15% annually...
============================================================
AAPL β
β
β
β
β BUY
Strong services growth offsetting hardware maturity...
ββ Navigate β Enter Select β q Quit
βΆ π Summary & Rationale
π Long-term Outlook
π Short-term Outlook
π’ Comparables & Valuation
π° Recent News
β οΈ Risks & Headwinds
π Growth & Tailwinds
π Management Assessment
π Show All
β Done
rob positionsBrowse all your positions sorted by value with allocation percentages and analysis ratings:
Positions β Select to analyze β q Quit
βΆ NVDA $ 45,200 35.2% β
β
β
β
β
BUY
AAPL $ 32,500 25.3% β
β
β
β
β BUY
MSFT $ 28,400 22.1% β
β
β
β
β BUY
GOOGL $ 12,100 9.4% β
β
β
ββ HOLD
AMZN $ 10,200 7.9%
ββββββββββββββββββββββββββββββββββββββββ
β Done
Features:
- Positions sorted by value (largest first)
- Shows allocation percentage of total portfolio
- Displays cached buy/sell ratings (if analyzed)
- Select any position to view or run analysis
- Offer to refresh stale analyses
rob portfolioQuick view of:
- Total portfolio value
- Available cash
- Each position with current price and value
git clone <repository-url>
cd rob
./install.shrob configYou'll be prompted for:
Robinhood Credentials:
- Username (email)
- Password
- TOTP secret (optional, for automatic 2FA)
API Keys (for analyze command):
- API Ninjas key - for fetching earnings data and transcripts
- OpenAI key - for AI-powered analysis with GPT-5.2
All credentials are stored securely in ~/.config/rob/.env with proper permissions (readable only by you).
| Service | Get Key | Notes |
|---|---|---|
| API Ninjas | https://api-ninjas.com/ | Free tier: 10,000 requests/month |
| OpenAI | https://platform.openai.com/api-keys | Pay-per-use, ~$0.05 per analysis |
You can also pass keys directly via CLI options:
rob config --api-ninjas YOUR_KEY --openai YOUR_KEYOr set individual keys without re-entering everything (just press Enter to keep existing values).
| Command | Description |
|---|---|
rob |
Interactive mode with portfolio dashboard and menus |
rob positions |
Interactive position viewer with analysis ratings |
rob portfolio |
Show portfolio summary and positions (text output) |
rob adjust |
Bulk adjust positions by percentage |
rob analyze TICKER |
AI analysis of a stock |
rob config |
Configure Robinhood credentials and API keys |
rob --help |
Show help |
| Option | Short | Description |
|---|---|---|
--action |
-a |
increase or decrease (required) |
--percentage |
-p |
Percentage to adjust (0-100, required) |
--confirm/--no-confirm |
Prompt before each trade (default: confirm) | |
--dry-run |
Preview trades without executing |
| Option | Short | Description |
|---|---|---|
--refresh |
-r |
Force new analysis even if cached |
| Option | Description |
|---|---|
--username |
Robinhood username (email) |
--password |
Robinhood password |
--totp-secret |
TOTP secret for automatic 2FA |
--api-ninjas |
API Ninjas key (for earnings data) |
--openai |
OpenAI API key (for AI analysis) |
All options are interactive if not provided - just run rob config and follow the prompts.
# Interactive dashboard - best for daily use
rob
# Or jump straight to positions with ratings
rob positions
# Quick text summary (no interactivity)
rob portfolio# Preview first
rob adjust -a increase -p 5 --dry-run
# Execute with confirmation on each trade
rob adjust -a increase -p 5
# Execute without prompts (be careful!)
rob adjust -a increase -p 5 --no-confirmrob analyze NVDAfor ticker in AAPL MSFT GOOGL; do
rob analyze $ticker
doneInstead of manually entering your 2FA code each time, configure automatic code generation:
Option 1: Setting up 2FA for the first time
- When Robinhood shows you the QR code during 2FA setup
- Look for "Can't scan? Enter manually"
- Copy the secret key (looks like:
ABCD1234EFGH5678...) - Run
rob configand paste it when prompted
Option 2: Already have 2FA enabled
- Temporarily disable 2FA in Robinhood security settings
- Re-enable 2FA and grab the secret key when shown
- Add it via
rob config
Option 3: From Google Authenticator
- Transfer accounts β Export accounts β Select Robinhood
- Read QR code to get
otpauth-migration://offline?data={code} - Use otpauth to decode the secret
- Authenticates with Robinhood (uses saved token if available)
- Fetches your current portfolio and positions
- Calculates shares to trade for each position based on percentage
- Shows estimated total cost and checks available cash
- Iterates through each position:
- Shows current position details
- Calculates and displays proposed trade
- Waits for confirmation (unless
--no-confirm) - Executes market order
- Logs out
- Checks for cached analysis from current quarter
- If no cache or
--refresh:- Fetches ticker data from API Ninjas
- Fetches latest earnings transcript
- Fetches earnings data for that quarter
- Sends all data to GPT-5.2 with web search enabled
- AI searches for comparables, recent news, analyst opinions
- Generates structured analysis with buy score
- Caches result for the quarter
- Displays interactive analysis with drill-down menu
- Credentials:
~/.config/rob/.env - Auth token:
./robinhood.pickle(in current directory) - Analysis data:
~/.config/rob/data/{TICKER}/ticker_data.json- Price, market cap, etc.earnings_YYYY_QN.json- Quarterly earningstranscript_YYYY_QN.json- Earnings call transcriptanalysis_YYYYMMDD.json- AI analysis results
| Variable | Description |
|---|---|
ROBINHOOD_USERNAME |
Robinhood email |
ROBINHOOD_PASSWORD |
Robinhood password |
ROBINHOOD_TOTP_SECRET |
TOTP secret for automatic 2FA |
API_NINJAS_KEY |
API Ninjas API key (for analysis) |
OPENAI_KEY |
OpenAI API key (for analysis) |
ROB_DEBUG |
Set to 1 for debug output |
If you see this error, the config directory was created with root ownership during installation. Fix it with:
sudo chown -R $USER ~/.config/robThen run rob config to set up your credentials.
- Always review each trade carefully before confirming
- Use
--dry-runto preview trades first - The authors are not responsible for any financial losses
- AI analysis is for informational purposes only - not financial advice
MIT