Spaces:
Sleeping
Sleeping
| import ccxt | |
| class CcxtRag: | |
| def __init__(self, exchange_name: str = "kraken"): | |
| """ | |
| Initializes the CCXT crypto exchange RAG. | |
| Defaults to 'kraken' as per finance_langgraph_app.py. | |
| """ | |
| try: | |
| exchange_class = getattr(ccxt, exchange_name) | |
| self.exchange = exchange_class() | |
| except AttributeError: | |
| raise ValueError(f"Exchange {exchange_name} is not supported by ccxt.") | |
| def get_crypto_details(self, symbol: str) -> dict: | |
| """ | |
| Retrieves crypto ticker details from the exchange. | |
| Automatically appends '/USDT' base pair if not specified. | |
| """ | |
| symbol_upper = symbol.upper() | |
| if "/" not in symbol_upper: | |
| symbol_upper += "/USDT" | |
| try: | |
| ticker = self.exchange.fetch_ticker(symbol_upper) | |
| return ticker | |
| except Exception as e: | |
| return {"error": f"Could not retrieve details for {symbol}: {e}"} | |