diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/markit/__main__.py | 75 |
1 files changed, 38 insertions, 37 deletions
diff --git a/python/markit/__main__.py b/python/markit/__main__.py index cfe6e510..48db1c0c 100644 --- a/python/markit/__main__.py +++ b/python/markit/__main__.py @@ -11,78 +11,79 @@ from .rates import downloadMarkitIRData from .import_quotes import insert_cds, insert_index, insert_tranche from sqlalchemy import create_engine from .utils import default_date +from utils import SerenitasFileHandler from utils.db import dbconn # parse arguments parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group(required=True) -group.add_argument("-l", "--loans", action="store_true", - help="download markit loan data") -group.add_argument("-c", "--cds", action="store_true", - help="download markit cds data") -group.add_argument("-r", "--rates", action="store_true", - help="download markit IR data") -parser.add_argument("-i", "--insert-only", action="store_true", - help="do not re-download data") -parser.add_argument('workdate', nargs='?', - type=lambda s: pd.datetime.strptime(s, "%Y-%m-%d").date()) +group.add_argument( + "-l", "--loans", action="store_true", help="download markit loan data" +) +group.add_argument("-c", "--cds", action="store_true", help="download markit cds data") +group.add_argument("-r", "--rates", action="store_true", help="download markit IR data") +parser.add_argument( + "-i", "--insert-only", action="store_true", help="do not re-download data" +) +parser.add_argument( + "workdate", nargs="?", type=lambda s: pd.datetime.strptime(s, "%Y-%m-%d").date() +) args = parser.parse_args() historical = True -if args.workdate is None: +if args.workdate is None and not arg.rates: historical = False workdate = default_date() +elif arg.rates: + workdate = datetime.date.today() else: workdate = args.workdate if args.loans: - log_file = os.path.join(os.environ['LOG_DIR'], 'markit_loans.log') + fh = SerenitasFileHandler("markit_loans.log") elif args.cds: - log_file = os.path.join(os.environ['LOG_DIR'], 'markit_cds.log') + fh = SerenitasFileHandler("markit_cds.log") elif args.rates: - log_file = os.path.join(os.environ['LOG_DIR'], 'markit_rates.log') + fh = SerenitasFileHandler("markit_rates.log") # set up logging -logger = logging.getLogger('markit') -fh = logging.FileHandler(filename=log_file) -formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') -fh.setFormatter(formatter) +logger = logging.getLogger("markit") logger.addHandler(fh) logger.setLevel(logging.INFO) if args.loans: - payload = {'LEGALENTITY': 'lmcg', - 'USERNAME': 'serecapuser', - 'PASSWORD': 'Welcome1'} + payload = {"LEGALENTITY": "lmcg", "USERNAME": "serecapuser", "PASSWORD": "Welcome1"} download_facility(workdate, payload) - logger.info('facility downloaded') + logger.info("facility downloaded") insert_facility(workdate) - logger.info('facility inserted') - payload.update({'RELATIVEVERSION': np.busday_count(default_date(), workdate)}) + logger.info("facility inserted") + payload.update({"RELATIVEVERSION": np.busday_count(default_date(), workdate)}) download_marks(workdate, payload) - logger.info('marks downloaded') - payload.pop('RELATIVEVERSION') + logger.info("marks downloaded") + payload.pop("RELATIVEVERSION") update_facility(workdate, payload) - logger.info('facility updated') + logger.info("facility updated") elif args.cds: - payload = {'user': 'GuillaumeHorel', - 'password': 'password', - 'version': '5', - 'format': 'csv', - 'report': 'FIXED_COUPON', - 'date': workdate.strftime("%Y%m%d"), - 'type': 'CDS'} + payload = { + "user": "GuillaumeHorel", + "password": "password", + "version": "5", + "format": "csv", + "report": "FIXED_COUPON", + "date": workdate.strftime("%Y%m%d"), + "type": "CDS", + } if not args.insert_only: download_cds_data(payload) - payload.update({'type': 'CredIndex', 'version': 4}) + payload.update({"type": "CredIndex", "version": 4}) download_composite_data(payload, historical) - serenitasdb = dbconn('serenitasdb') + serenitasdb = dbconn("serenitasdb") insert_cds(serenitasdb, workdate) serenitasdb.close() if not args.insert_only: - engine = create_engine('postgresql://serenitas_user@debian/serenitasdb') + engine = create_engine("postgresql://serenitas_user@debian/serenitasdb") insert_index(engine, workdate) insert_tranche(engine, workdate) |
