diff options
Diffstat (limited to 'python/api_quotes')
| -rw-r--r-- | python/api_quotes/api.py | 7 | ||||
| -rw-r--r-- | python/api_quotes/quotes.py | 32 |
2 files changed, 23 insertions, 16 deletions
diff --git a/python/api_quotes/api.py b/python/api_quotes/api.py index ef6f228b..a328d619 100644 --- a/python/api_quotes/api.py +++ b/python/api_quotes/api.py @@ -4,6 +4,7 @@ import posixpath from urllib.parse import urljoin from typing import ClassVar import requests +import pandas as pd def load_api_key(): @@ -35,3 +36,9 @@ class MarkitAPI: url = urljoin(cls.base_url, path) r = requests.get(url, params) return json.loads(r.text) + + @staticmethod + def read_api(r): + df = pd.DataFrame.from_dict(json.loads(r.text)) + df.column = df.columns.lower() + return df diff --git a/python/api_quotes/quotes.py b/python/api_quotes/quotes.py index 0c33faed..43585814 100644 --- a/python/api_quotes/quotes.py +++ b/python/api_quotes/quotes.py @@ -17,30 +17,30 @@ class QuoteDetails(Deal, table="markit_quote_details", deal_type=None): @dataclass class Quote(Deal, table="markit_quotes", deal_type=None): - quote_id: int - asset_class: asset_class + quoteid: int + assetclass: asset_class redcode: str ticker: str maturity: datetime.date tenor: int - running_coupon: int - bid_spread: float - bid_upfront: float - bid_size: float - ask_spread: float - ask_upfront: float - ask_size: float - quote_firness: firmness - msg_id: str + runningcoupon: int + bidspread: float + bidupfront: float + bidsize: float + askspread: float + askupfront: float + asksize: float + quotefirness: firmness + msgid: str quotedate: datetime - quote_source: str + quotesource: str @classmethod - def from_markit_line(cls, line): + def from_markit_line(cls, d): return cls( - quote_id=line["quoteId"], - asset_class=line["assetClass"], - redcode=line["redCode"], + quote_id=line["quoteid"], + asset_class=line["assetclass"], + redcode=line["redcode"], ticker=line["ticker"], maturity=datetime.date( line["maturityYear"], line["maturityMonth"], line["maturityDay"] |
