diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/book_bbg.py | 4 | ||||
| -rw-r--r-- | python/trade_dataclasses.py | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/python/book_bbg.py b/python/book_bbg.py index 369251b1..09d0437c 100644 --- a/python/book_bbg.py +++ b/python/book_bbg.py @@ -123,8 +123,8 @@ if __name__ == "__main__": ): if "BOND" in f.filename: bbg_id = get_bbg_id(f.filename) - if bbg_id in BondDeal._cache.keys(): + if bbg_id in BondDeal._cache: continue else: - bond_booking_process(sftp.client.open(f"/{f.filename}"), bbg_id) + bond_booking_process(sftp.client.open(f.filename), bbg_id) time.sleep(60) diff --git a/python/trade_dataclasses.py b/python/trade_dataclasses.py index ead0774d..ce7a519c 100644 --- a/python/trade_dataclasses.py +++ b/python/trade_dataclasses.py @@ -121,6 +121,8 @@ class Deal: _sql_insert: ClassVar[str] _sql_select: ClassVar[str] _insert_queue: ClassVar[list] = [] + _bbg_sql_insert: ClassVar[str] + _bbg_insert_queue: ClassVar[list] = [] _cache: ClassVar[LRU] = LRU(128) def __init_subclass__(cls, table_name: str): @@ -143,6 +145,7 @@ class Deal: def commit(cls): with cls._conn.cursor() as c: c.executemany(cls._sql_insert, cls._insert_queue) + c.executemany(cls._bbg_sql_insert, cls._bbg_insert_queue) cls._conn.commit() cls._insert_queue.clear() @@ -274,6 +277,5 @@ class BondDeal(Deal, table_name="bonds"): def insert_bbg_line(self, line: dict): bond_ticket_columns = ",".join(c for c in line.keys()) bond_place_holders = ",".join(["%s"] * len(line.keys())) - sql_str = f"INSERT INTO bond_tickets({bond_ticket_columns}) VALUES({bond_place_holders})" - with self._conn() as c: - c.execute(sql_str, line.values()) + self._bbg_sql_insert = f"INSERT INTO bond_tickets({bond_ticket_columns}) VALUES({bond_place_holders})" + self._bbg_insert_queue.append(line.values()) |
