Read the statement by Michael Teeuw here.
MMM-Fintech - Multi-Asset Portfolio Display (Crypto, Stocks, ETFs, Forex)
-
Hi everyone,
I’d like to share a module I’ve been working on: MMM-Fintech – a portfolio display module that shows your financial holdings with real-time pricing. I built it to fill my needs. I took a modular approach that would allow writing additional connectors for other data sources.
Screenshot

Features
- Multi-Asset Support: Crypto, stocks, ETFs, mutual funds, and forex rates in one unified display
- Coinbase Integration: Automatically fetches crypto holdings via CDP API
- Twelve Data Integration: Real-time pricing for stocks, ETFs, mutual funds, and forex
- Manual Holdings: Add staked assets or brokerage positions that APIs can’t see
- Market Hours Scheduling: Limits stock/forex polling to trading hours to conserve API calls
- Privacy Mode: Hide quantities and values – show only symbols, prices, and changes
- Currency Conversion: Display values in USD, EUR, GBP, PHP, or other currencies
- Encrypted Credentials: AES-256-GCM encryption for your API keys
Links
- GitHub: https://github.com/sonnyb9/MMM-Fintech
- Installation & Setup: See the README for step-by-step instructions
Requirements
- Coinbase CDP API key (free, for crypto)
- Twelve Data API key (free tier: 800 calls/day, for stocks/forex)
License
MIT
Feedback Welcome
This is my first MagicMirror module. I’d appreciate any feedback, bug reports, or feature suggestions. Feel free to open issues on GitHub or reply here.
Thanks!
-
Was looking at your roadmap, a suggestion:
In addition to syncing with brokers, you could also look at portfolio tracking products like https://www.sharesight.com/nz/ -
@scottwalsh Interesting idea, I’ll have a look at that. I was thinking about using Plaid, but it would cost money and I’m frugal :)
-
I’m working on a patch to add snap trade support. A snaptrade branch should appear in my repo in the next day or two. Thanks for the suggestion!
-
@ArnoldoB Noted the screenshot seems to be a broken file on GitHub (and in the post here).
-
@scottwalsh I fixed the screenshot.
I also released a new v0.6.0 of MMM-Fintech with Snaptrade support. It can replace the Coinbase free API and TwelveData API while providing better holdings data. Coinbase was reporting staked crypto holdings as $0 balance forcing the use of a manual_holdings.json file. Snaptrade is pay as you go, so I left coinbase, TwelveData, and the manual holding options in place as free options. I’m still using TwelveData for pricing updates since it’s free for up to 800 queries per day.
