aboutsummaryrefslogtreecommitdiffstats
path: root/python/trade_dataclasses.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/trade_dataclasses.py')
-rw-r--r--python/trade_dataclasses.py8
1 files changed, 5 insertions, 3 deletions
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())