aboutsummaryrefslogtreecommitdiffstats
path: root/python/parse_gs_exchange.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/parse_gs_exchange.py')
-rw-r--r--python/parse_gs_exchange.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/python/parse_gs_exchange.py b/python/parse_gs_exchange.py
index 9150f273..f0e49702 100644
--- a/python/parse_gs_exchange.py
+++ b/python/parse_gs_exchange.py
@@ -1,3 +1,4 @@
+from pathlib import Path
from exchange import get_msgs
from pytz import timezone
from parse_emails import write_todb
@@ -71,7 +72,8 @@ def parse_email(email, fwd_index):
'expiry': date,
'index': indextype,
'series': series,
- 'ref': refspread if indextype == "IG" else ref}
+ 'ref': refspread if indextype == "IG" else ref,
+ 'msg_id': get_msg_id(email)}
if indextype == "IG":
d['fwdspread'] = float(fwspread)
else:
@@ -103,11 +105,22 @@ def clean_df(all_df):
del all_df['Sprd']
return all_df
+def get_msg_id(msg):
+ return msg.message_id[1:17].lower()
+
+def save_email(msg, path):
+ fname = path / ("{:%Y-%m-%d %H-%M-%S}_{}".
+ format(msg.datetime_sent,
+ get_msg_id(msg)))
+ with fname.open("w") as fh:
+ fh.write(msg.text_body)
if __name__ == "__main__":
fwd_index = []
swaption_quotes = {}
+ save_path = Path(os.environ["DATA_DIR"]) "swaptions" / "exchange"
for email in get_msgs(count=20):
+ save_email(email, save_path)
try:
quotedate, indextype, series, df = parse_email(email, fwd_index)
except ParseError as e: