What is Ghostfolio?

The official description is pretty and precise and is:

Ghostfolio is an open source wealth management software built with web technology.

The application empowers busy people to keep track of stocks, ETFs or cryptocurrencies and make solid, data-driven investment decisions.

The software is designed for personal use in continuous operation.

You can self-hosted it or if you prefer you can use the cloud version (it has also a free plan), more info on the Official Website or Ghostfolio Github.

Why you need it?

I’m not a finance advisor and this post is not intended to be in any way a suggestion for investments but i strongly suggest to you to study the personal finance basic even you use a personal private banker or a investment advisor.

As you should know, the long-term investment is very important and you probably want to track it.

Ghostfolio can be very useful for it, it can be self-hosted and fully privacy focussed.

Screenshot

Activity tracker

On this page, you can add your investment activity, which can be ETF, Crypto, Stocks, and so on. That can be imported from JSON or CSV

Activity Tracker

Overall Performance

That can be per-account (like specific bank or platform) or general.

You can also import a benchmark index in the Compare with... dropdown.

Performance

Portfolio Evolution

You can checkout the evolution of your investiment, more specifically focussed on the investiment deposit vs currently countervalues.

Evolution

Allocation Overview

You can checkout the allocation based on different groupings, such as:

Allocation first image
Allocation second image

Install / Try it

You can easly try the live demo going to LiVE DEMO or follow the instruction below to try it locally with docker.

  1. You need this packages installed:
  • Docker
  • Docker Compose
  1. Clone the Ghostfolio repo

    git clone https://github.com/ghostfolio/ghostfolio.git
    cd ghostfolio

  2. Create .env file with this content

COMPOSE_PROJECT_NAME=ghostfolio

# CACHE
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=redispass

# POSTGRES
POSTGRES_DB=ghostfolio-db
POSTGRES_USER=user
POSTGRES_PASSWORD=psql-miotest

# VARIOUS
ACCESS_TOKEN_SALT=testtoken
DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@localhost:5432/${POSTGRES_DB}?connect_timeout=300&sslmode=prefer
JWT_SECRET_KEY=testtoken
  1. Run this docker compose command
docker compose --env-file ./.env -f docker/docker-compose.yml up -d
  1. Open the browser and go to http://127.0.0.1:3333/

  2. Click on Get Started on the right top corner

  3. Create Account

  4. Save the Security Token generated, it will be used as login token

  5. Try it