mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-27 04:31:13 +00:00
Fix Bugs (#1432)
* Fixed stocks/ca bugs * Fixed stocks/fa * Fixed stocks/ins * Fixed stocks/screener bugs * removed http file and added http files to gitignore * Fixed small issues Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -25,6 +25,7 @@ gamestonk_terminal/jupyter/reports/stored/*
|
||||
gamestonk_terminal/portfolio/portfolios/*
|
||||
.ipynb_checkpoints/*
|
||||
*.swp
|
||||
*.http
|
||||
|
||||
# Jupyter Lab Extension build files
|
||||
jupyterlab/*/*.bundle.*
|
||||
|
||||
@@ -85,4 +85,8 @@ def get_comparison_data(data_type: str, similar: List[str]):
|
||||
return pd.DataFrame()
|
||||
|
||||
screen.set_filter(ticker=",".join(similar))
|
||||
return screen.ScreenerView(verbose=0)
|
||||
try:
|
||||
return screen.ScreenerView(verbose=0)
|
||||
except IndexError:
|
||||
console.print("[red]Invalid data from website[red]")
|
||||
return pd.DataFrame()
|
||||
|
||||
@@ -28,7 +28,7 @@ def screener(similar: List[str], data_type: str, export: str = ""):
|
||||
"""
|
||||
df_screen = finviz_compare_model.get_comparison_data(data_type, similar)
|
||||
|
||||
if df_screen.empty:
|
||||
if df_screen is None or df_screen.empty:
|
||||
console.print("No screened data found.")
|
||||
else:
|
||||
print_rich_table(
|
||||
|
||||
@@ -57,7 +57,7 @@ def display_profile(ticker: str):
|
||||
console.print(f"\nDescription: {profile.loc['description'][0]}")
|
||||
else:
|
||||
logger.error("Could not get data")
|
||||
console.print("[red]Unable to get data[/red]")
|
||||
console.print("[red]Unable to get data[/red]\n")
|
||||
|
||||
console.print()
|
||||
|
||||
@@ -73,8 +73,11 @@ def display_quote(ticker: str):
|
||||
"""
|
||||
|
||||
quote = fmp_model.get_quote(ticker)
|
||||
print_rich_table(quote, headers=[""], title=f"{ticker} Quote", show_index=True)
|
||||
console.print()
|
||||
if quote.empty:
|
||||
console.print("[red]Data not found[/red]\n")
|
||||
else:
|
||||
print_rich_table(quote, headers=[""], title=f"{ticker} Quote", show_index=True)
|
||||
console.print()
|
||||
|
||||
|
||||
@log_start_end(log=logger)
|
||||
@@ -96,14 +99,19 @@ def display_enterprise(
|
||||
"""
|
||||
df_fa = fmp_model.get_enterprise(ticker, number, quarterly)
|
||||
df_fa = df_fa[df_fa.columns[::-1]]
|
||||
print_rich_table(
|
||||
df_fa,
|
||||
headers=list(df_fa.columns),
|
||||
title=f"{ticker} Enterprise",
|
||||
show_index=True,
|
||||
)
|
||||
console.print()
|
||||
export_data(export, os.path.dirname(os.path.abspath(__file__)), "enterprise", df_fa)
|
||||
if df_fa.empty:
|
||||
console.print("[red]No data available[/red]\n")
|
||||
else:
|
||||
print_rich_table(
|
||||
df_fa,
|
||||
headers=list(df_fa.columns),
|
||||
title=f"{ticker} Enterprise",
|
||||
show_index=True,
|
||||
)
|
||||
console.print()
|
||||
export_data(
|
||||
export, os.path.dirname(os.path.abspath(__file__)), "enterprise", df_fa
|
||||
)
|
||||
|
||||
|
||||
@log_start_end(log=logger)
|
||||
@@ -125,10 +133,14 @@ def display_discounted_cash_flow(
|
||||
"""
|
||||
dcf = fmp_model.get_dcf(ticker, number, quarterly)
|
||||
dcf = dcf[dcf.columns[::-1]]
|
||||
print_rich_table(dcf, headers=[""], title="Discounted Cash Flow", show_index=True)
|
||||
|
||||
console.print()
|
||||
export_data(export, os.path.dirname(os.path.abspath(__file__)), "dcf", dcf)
|
||||
if dcf.empty:
|
||||
console.print("[red]No data available[/red]\n")
|
||||
else:
|
||||
print_rich_table(
|
||||
dcf, headers=[""], title="Discounted Cash Flow", show_index=True
|
||||
)
|
||||
console.print()
|
||||
export_data(export, os.path.dirname(os.path.abspath(__file__)), "dcf", dcf)
|
||||
|
||||
|
||||
@log_start_end(log=logger)
|
||||
|
||||
@@ -159,8 +159,7 @@ def print_insider_data(type_insider: str, limit: int = 10, export: str = ""):
|
||||
res.append(row)
|
||||
|
||||
df = pd.DataFrame(res).dropna().head(n=limit)
|
||||
|
||||
df.columns = [
|
||||
columns = [
|
||||
"X",
|
||||
"Filing Date",
|
||||
"Trade Date",
|
||||
@@ -176,6 +175,11 @@ def print_insider_data(type_insider: str, limit: int = 10, export: str = ""):
|
||||
"Value",
|
||||
]
|
||||
|
||||
if df.shape[1] == 13:
|
||||
df.columns = columns
|
||||
else:
|
||||
df.columns = columns[1:]
|
||||
|
||||
df["Filing Date"] = df["Filing Date"].apply(
|
||||
lambda x: "\n".join(textwrap.wrap(x, width=10)) if isinstance(x, str) else x
|
||||
)
|
||||
@@ -203,11 +207,12 @@ def print_insider_data(type_insider: str, limit: int = 10, export: str = ""):
|
||||
|
||||
export_data(export, os.path.dirname(os.path.abspath(__file__)), type_insider, df)
|
||||
|
||||
l_chars = [list(chars) for chars in df["X"].values]
|
||||
l_uchars = np.unique(list(itertools.chain(*l_chars)))
|
||||
if df.shape[1] == 13:
|
||||
l_chars = [list(chars) for chars in df["X"].values]
|
||||
l_uchars = np.unique(list(itertools.chain(*l_chars)))
|
||||
|
||||
for char in l_uchars:
|
||||
console.print(d_notes[char])
|
||||
for char in l_uchars:
|
||||
console.print(d_notes[char])
|
||||
console.print("")
|
||||
|
||||
|
||||
|
||||
@@ -97,10 +97,14 @@ def get_screener_data(preset_loaded: str, data_type: str, limit: int, ascend: bo
|
||||
if preset_loaded in d_signals:
|
||||
screen.set_filter(signal=d_signals[preset_loaded])
|
||||
|
||||
if limit > 0:
|
||||
df_screen = screen.ScreenerView(limit=limit, ascend=ascend)
|
||||
else:
|
||||
df_screen = screen.ScreenerView(ascend=ascend)
|
||||
try:
|
||||
if limit > 0:
|
||||
df_screen = screen.ScreenerView(limit=limit, ascend=ascend)
|
||||
else:
|
||||
df_screen = screen.ScreenerView(ascend=ascend)
|
||||
except IndexError:
|
||||
console.print("[red]Invalid data provided by the website[/red]\n")
|
||||
return pd.DataFrame()
|
||||
|
||||
else:
|
||||
preset_filter = configparser.RawConfigParser()
|
||||
|
||||
Reference in New Issue
Block a user