Terminal utilities, shell functions, and command-line tools for a systematic trader on Arch Linux with fish shell.
#Terminal Stock Tickers and Portfolio Trackers
| Tool |
Language |
Stars |
Install |
What It Does |
| ticker |
Go |
6.1k |
yay -S ticker |
Real-time stock/crypto/derivatives prices with position management and live P&L tracking |
| tickrs |
Rust |
1.6k |
yay -S tickrs |
Portfolio tracking with holdings config, vim-style keybindings |
| stonks |
Go |
564 |
yay -S stonks |
ASCII stock graphs in terminal, multi-symbol |
| cointop |
Go |
4.3k |
yay -S cointop |
Interactive crypto tracker (htop-style, vim keybindings) |
| mop |
Go |
2.1k |
AUR or build |
Stock market tracker with expression-based filtering (price > 100 AND change > 2%) |
#Terminal Charting (Candlesticks in Terminal)
| Tool |
Language |
Stars |
Install |
What It Does |
| tstock |
Rust |
~400 |
yay -S tstock |
tstock aapl gives 3-month candlestick chart. Stocks, crypto, forex auto-detection. |
| cli-candlestick-chart |
Rust |
309 |
cargo install cli-candlestick-chart |
Candlestick charts from CSV/JSON input, custom colors, Binance API examples |
| Tool |
Language |
What It Does |
| alpaca-cli |
Go |
Official Alpaca CLI. Submit orders, pull market data, manage account. OAuth auth. Paper trading default. |
| ibkr-cli |
Python |
Local-first CLI for Interactive Brokers via ib_async. Account management, trading, market data, Flex Queries. |
#Financial Data CLI
| Tool |
Language |
Stars |
What It Does |
| yfinance |
Python |
13k+ |
Download market data from Yahoo Finance, no API key. Prototyping only. |
| tiingo-python |
Python |
200+ |
Python client for Tiingo (stock tickers, news, real-time data). Better quality than yfinance. |
| polygon-python |
Python |
400+ |
Complete Polygon.io wrapper (stocks, options, streaming, forex, crypto). Paid API key. |
| cryptofeed |
Python |
2k+ |
Crypto exchange websocket feed handler. 30+ exchanges, normalized feeds, multiple backends (Redis, Postgres, etc.). |
#Accounting and Tax
| Tool |
Language |
Stars |
What It Does |
| Beancount + Fava |
Python |
2.5k + 1.2k |
Plain-text double-entry accounting with cost basis tracking and capital gains. Fava provides web UI. Superior for crypto lot-tracking. |
| hledger |
Haskell |
2.8k |
pacman -S hledger. Plain-text accounting, converts to/from Beancount. |
#Dashboard
| Tool |
Language |
Stars |
What It Does |
| wtfutil |
Go |
15k+ |
Personal terminal dashboard with Yahoo Finance module, Finnhub stocks, Git, GitHub, and 50+ other modules. YAML config. |
#Fish Shell Functions
No pre-existing collection exists. Build these in ~/.config/fish/functions/:
# Quick price check (requires ticker)
function price
ticker -c $argv
end
# Crypto prices
function crypto
cointop
end
# Quick chart (requires tstock)
function chart
tstock $argv
end
# Market screener
function screen
mop
end
# Beancount trade log
function trade-log
bean-query ~/trading/accounts.beancount "SELECT date, narration, cost, price WHERE meta_type='trade'"
end
#Recommended Workflow
- Real-time monitoring:
ticker (stocks) + cointop (crypto) in tmux panes
- Technical analysis:
tstock aapl for quick charts before entry
- Order placement:
alpaca-cli (Alpaca) or ibkr-cli (Interactive Brokers)
- Data backfill:
yfinance (free) or tiingo-python (better data)
- Accounting: Beancount + Fava for post-trade reconciliation and tax tracking
- Dashboard:
wtfutil config with yfinance module for all-in-one monitoring