MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-Fintech - Multi-Asset Portfolio Display (Crypto, Stocks, ETFs, Forex)

    Scheduled Pinned Locked Moved Showcase
    financialstock marketcryptocurrency
    7 Posts 2 Posters 376 Views 2 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A Offline
      ArnoldoB
      last edited by

      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

      MMM-Fintech Example

      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!​​​​​​​​​​​​​​​​

      S 2 Replies Last reply Reply Quote 1
      • S Offline
        scottwalsh @ArnoldoB
        last edited by

        @ArnoldoB

        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/

        A 1 Reply Last reply Reply Quote 0
        • A Offline
          ArnoldoB @scottwalsh
          last edited by

          @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 :)

          A 1 Reply Last reply Reply Quote 0
          • A Offline
            ArnoldoB @ArnoldoB
            last edited by

            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!

            1 Reply Last reply Reply Quote 0
            • S Offline
              scottwalsh @ArnoldoB
              last edited by

              @ArnoldoB Noted the screenshot seems to be a broken file on GitHub (and in the post here).

              A 1 Reply Last reply Reply Quote 0
              • A Offline
                ArnoldoB @scottwalsh
                last edited by

                @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.

                1 Reply Last reply Reply Quote 0
                • A Offline
                  ArnoldoB
                  last edited by

                  I’ve released v0.8.0. Here’s the release notes:

                  [0.8.0] - 2026-01-09

                  Added

                  • Portfolio Performance Charts: Visual tracking of portfolio value over time
                    • Area chart with gradient fill
                    • Hourly snapshots (rolling 48 hours) for 1D view
                    • Daily snapshots for 1W, 1M, 3M, 1Y, All views
                    • Chart.js integration via CDN
                  • Chart Configuration Options:
                    • showCharts - Enable chart display (default: false)
                    • chartMode - “combined” / “separate” / “exclude-crypto”
                    • chartPeriod - “1D” / “1W” / “1M” / “3M” / “1Y” / “All”
                    • showPeriodSelector - Show period buttons for touch devices (default: false)
                    • historyRetention - Days to retain daily history (default: 1825 / 5 years)
                  • History Storage: Local history.json file for snapshot data
                    • ~600 bytes per snapshot (10 holdings)
                    • ~250 KB after 1 year, ~1.1 MB after 5 years

                  Changed

                  • Price updates now record hourly snapshots for chart data
                  • Holdings sync now records daily snapshots for chart data
                  1 Reply Last reply Reply Quote 1

                  Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                  Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                  With your input, this post could be even better 💗

                  Register Login
                  • 1 / 1
                  • First post
                    Last post
                  Enjoying MagicMirror? Please consider a donation!
                  MagicMirror created by Michael Teeuw.
                  Forum managed by Sam, technical setup by Karsten.
                  This forum is using NodeBB as its core | Contributors
                  Contact | Privacy Policy