aboutsummaryrefslogtreecommitdiffstats
path: root/python/report_ops/__main__.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/report_ops/__main__.py')
-rw-r--r--python/report_ops/__main__.py33
1 files changed, 32 insertions, 1 deletions
diff --git a/python/report_ops/__main__.py b/python/report_ops/__main__.py
index 2f49169c..fcf909c6 100644
--- a/python/report_ops/__main__.py
+++ b/python/report_ops/__main__.py
@@ -4,7 +4,17 @@ from serenitas.utils.db import dbconn
import logging
import argparse
import datetime
-from .sma import IsoselSMA, BowdstSMA
+from .sma import (
+ IsoselSMA,
+ BowdstSMA,
+ PositionReport,
+ BondPosition,
+ FuturePosition,
+ TranchePosition,
+ CDXPosition,
+ IRSwaptionPosition,
+ CDXSwaptionPosition,
+)
from .cash import NTCashReport, UMBCashReport, BNYCashReport
from .admin import AccruedReport, AllReport
from .wires import BowdstWire, NTWire
@@ -38,6 +48,13 @@ parser.add_argument(
action="store_true",
help="upload trade files to notify custodians",
)
+
+parser.add_argument(
+ "-sp",
+ "--send_positions",
+ action="store_true",
+ help="upload position files to fund admins",
+)
parser.add_argument(
"-n", "--no-upload", action="store_true", help="do not upload, just create files"
)
@@ -100,3 +117,17 @@ if args.send_to_custodians:
upload_to_custodian(account, args.date, conn, not args.no_upload, em)
except ValueError as e:
logger.info(e)
+
+if args.send_positions:
+ conn = dbconn("dawndb")
+ for fund in ("ISOSEL", "BOWDST"):
+ for position_report in (
+ BondPosition,
+ FuturePosition,
+ TranchePosition,
+ CDXPosition,
+ IRSwaptionPosition,
+ CDXSwaptionPosition,
+ ):
+ position_report.stage_positions(cob, fund)
+ PositionReport.build_buffer(cob, fund, not args.no_upload)