summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBim Phomthong <118195204+bimbolimbo@users.noreply.github.com>2023-11-08 23:50:55 +0100
committerGitHub <noreply@github.com>2023-11-08 17:50:55 -0500
commitacf8b0668977b2fd783d55ab787f04cec029be8d (patch)
treeaabd7983f577302f1f07e0d4efef5276f6b4b76a
parentcfc40e7cc46ed8d5a0269f29e777cfb7e6732f69 (diff)
improved market cap value extraction (#5169)
* improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com>
-rw-r--r--openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py19
1 files changed, 10 insertions, 9 deletions
diff --git a/openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py b/openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py
index ac24ef14dde..0508d704a0e 100644
--- a/openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py
+++ b/openbb_terminal/portfolio/portfolio_optimization/optimizer_model.py
@@ -343,18 +343,19 @@ def get_market_cap(symbol) -> float:
latest_year = market_cap.index[-1]
value = market_cap.loc[latest_year]["Market capitalization"]
-
- if "M" in value:
- updated_value = float(value.split(" M")[0]) * 1000000
- elif "B" in value:
- updated_value = float(value.split(" B")[0]) * 1000000000
- elif "T" in value:
- updated_value = float(value.split(" T")[0]) * 1000000000000
+ values_str = str(value)
+
+ # use values_str in string operations
+ if values_str.endswith("M"):
+ updated_value = float(values_str.split(" M", maxsplit=1)[0]) * 1000000
+ elif values_str.endswith("B"):
+ updated_value = float(values_str.split(" B", maxsplit=1)[0]) * 1000000000
+ elif values_str.endswith("T"):
+ updated_value = float(values_str.split(" T", maxsplit=1)[0]) * 1000000000000
else:
- updated_value = float(value)
+ updated_value = float(values_str)
else:
updated_value = 0
-
return updated_value