The issue was that with some shares, there is a currency with lowercase letters with means they are just a fraction of the all-uppercase equivalent (e.g. with AZN.L: GBp is 1/1000 of GBP). Now this is fixed, and newly discovered lowercase exceptions can be added in the init function by adding it to the currency_exceptions dictionary.