jalibu / MMM-Jast

A minimalistic stock ticker based on Yahoo's finance API for the MagicMirror² platform.
MIT License
70 stars 22 forks source link

Static portfolio value #33

Closed MasonR1209 closed 2 years ago

MasonR1209 commented 2 years ago

Hey, I wanted to know if it’s possible to make a static always there Portfolio Value… that changes as the stocks listed change in price, but is always shown, and have the stocks ticker above / below the portfolio value, and not scroll to the portfolio value as it would be permanently shown… e.g

Scrolling stocks ticker Portfolio Value: xxxx

Possibly also add a static always shown portfolio change value / change percentage that isn’t included in the scroll.

I would opt for the Static option for all as you can in the config but it takes up too much room on the mirror and I was wondering if what i’ve stated is configurable? Thanks

jalibu commented 2 years ago

I like your idea. How about that? We add a new option "includePortfolioToTicker" which is true by default -> users get the current behaviour. If it is set to false, a new line is added and the portfolio entry is moved from the ticker, into this new line and is fixed there.

Does that meet your requirements/ideas?

jalibu commented 2 years ago

@MasonR1209

MasonR1209 commented 2 years ago

@jalibu Hey! Yes "IncludePortfolioToTicker" Sounds good, in turn, would that being set to true by default mean that it wont appear in the scrolling stock ticker? Also Maybe "IncludeChangeToTicker" As a seperate line so there is a permanent "day change + portfolio value" always shown?

Even if the latter isn't something you're interested in, a static portfolio value which is always there would be great!

jalibu commented 2 years ago

@MasonR1209 any idea how that could look like in the horizontal scrolling mode? Your request refers to vertical scrolling, right?

jalibu commented 2 years ago

Hi @MasonR1209

you can get your expected result with the latest version on the development branch. This latest version allows to set a "hidden" property for each stock. The following sample config.js should reflect your demand by using a second module instance with different configuration (but shared stocks definitions):

let stocks = [
    { name: "BASF", symbol: "BAS.DE", quantity: 1, hidden: true },
    { name: "SAP", symbol: "PBTS", quantity: 1, hidden: true },
    { name: "Henkel", symbol: "HEN3.DE", hidden: true },
    { name: "AbbVie", symbol: "4AB.DE", hidden: true },
    { name: "Bitcoin", symbol: "BTC-EUR", quantity: 0, hidden: true },
    { name: "Alibaba", symbol: "BABA", quantity: 1, hidden: true }
];

let config = {
    modules: [
        {
            module: "MMM-Jast",
            position: "top_left",
            config: {
                stocks,
                scroll: "vertical",
                showHiddenStocks: true,
                showChangeValue: true
            }
        },
        {
            module: "MMM-Jast",
            position: "top_left",
            config: {
                updateIntervalInSeconds: 32000,
                stocks,
                scroll: "none",
                showHiddenStocks: false,
                showPortfolioValue: true,
                showPortfolioGrowth: true,
                showPortfolioGrowthPercent: true,
                showLastUpdate: true
            }
        }
    ]
};