-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Combine CA peers to smiliar command * crypto/disc/top into one sdk function * Exchanges into sdk function * delete wrong platforms trail * #3478 sdk crypto load * Options hist 1 sdk function * SDK functions Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
- Loading branch information
1 parent
659c214
commit cfe41ef
Showing
11 changed files
with
264 additions
and
194 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
"""SDK Helper Functions.""" | ||
__docfromat__ = "numpy" | ||
|
||
import pandas as pd | ||
from openbb_terminal.cryptocurrency.discovery import ( | ||
coinmarketcap_model, | ||
pycoingecko_model, | ||
) | ||
|
||
|
||
def top_coins(source: str = "CoinGecko", limit: int = 10) -> pd.DataFrame: | ||
"""Get top cryptp coins. | ||
Parameters | ||
---------- | ||
source : str, optional | ||
Source of data, by default "CoinGecko" | ||
limit : int, optional | ||
Number of coins to return, by default 10 | ||
Returns | ||
------- | ||
pd.DataFrame | ||
DataFrame with top coins | ||
Examples | ||
-------- | ||
>>> from openbb_terminal.sdk import openbb | ||
>>> top_coins = openbb.crypto.disc.top_coins() | ||
To get 30 results from coinmarketcap, use the source parameter and the limit parameter: | ||
>>> top_coins = openbb.crypto.disc.top_coins(source="CoinMarketCap", limit=30) | ||
""" | ||
if source.lower() == "coingecko": | ||
df = pycoingecko_model.get_coins(limit=limit) | ||
return df | ||
if source.lower() == "coinmarketcap": | ||
df = coinmarketcap_model.get_cmc_top_n() | ||
return df | ||
return pd.DataFrame() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
"""Crypto OV SDK Helper Functions.""" | ||
__docformat__ = "numpy" | ||
|
||
import pandas as pd | ||
from openbb_terminal.cryptocurrency.overview import pycoingecko_model, coinpaprika_model | ||
from openbb_terminal.cryptocurrency.dataframe_helpers import ( | ||
lambda_long_number_format_with_type_check, | ||
) | ||
|
||
|
||
def globe(source: str = "CoinGecko") -> pd.DataFrame: | ||
"""Get global crypto market data. | ||
Parameters | ||
---------- | ||
source : str, optional | ||
Source of data, by default "CoinGecko" | ||
Returns | ||
------- | ||
pd.DataFrame | ||
DataFrame with global crypto market data | ||
Examples | ||
-------- | ||
>>> from openbb_terminal.sdk import openbb | ||
>>> global_market_data = openbb.crypto.ov.globals() | ||
To get data from CoinPaprika, use the source parameter: | ||
>>> global_market_data = openbb.crypto.ov.globals(source="coinpaprika") | ||
""" | ||
if source.lower() == "coingecko": | ||
df = pycoingecko_model.get_global_info() | ||
return df | ||
if source.lower() == "coinpaprika": | ||
df = coinpaprika_model.get_global_info() | ||
return df | ||
return pd.DataFrame() | ||
|
||
|
||
def exchanges(source: str = "CoinGecko") -> pd.DataFrame: | ||
"""Show top crypto exchanges. | ||
Parameters | ||
---------- | ||
source : str, optional | ||
Source to get exchanges, by default "CoinGecko" | ||
Returns | ||
------- | ||
pd.DataFrame | ||
DataFrame with top crypto exchanges | ||
Examples | ||
-------- | ||
>>> from openbb_terminal.sdk import openbb | ||
>>> exchanges = openbb.crypto.ov.exchanges() | ||
""" | ||
if source.lower() == "coingecko": | ||
df = pycoingecko_model.get_exchanges().sort_values(by="Rank", ascending=True) | ||
return df | ||
if source.lower() == "coinpaprika": | ||
df = coinpaprika_model.get_list_of_exchanges("USD") | ||
cols = [col for col in df.columns if col != "Rank"] | ||
df[cols] = df[cols].applymap( | ||
lambda x: lambda_long_number_format_with_type_check(x) | ||
) | ||
return df.sort_values(by="Rank", ascending=True).reset_index(drop=True).head(20) | ||
return pd.DataFrame() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.