diff options
Diffstat (limited to 'python/Dawn/models.py')
| -rw-r--r-- | python/Dawn/models.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/python/Dawn/models.py b/python/Dawn/models.py index b46b96f8..2c4acb27 100644 --- a/python/Dawn/models.py +++ b/python/Dawn/models.py @@ -59,6 +59,9 @@ CASH_STRAT = ENUM('M_CSH_CASH', 'MBSCDSCSH', 'SER_IGCVECSH', 'SER_ITRXCVCSH', 'C 'IRDEVCSH', name='cash_strat') +SPOT_STRAT = ENUM('M_STR_MAV', 'M_STR_MEZZ', 'SER_ITRXCURVE', 'M_CSH_CASH', + name='spot_strat') + OPTION_TYPE = ENUM('PAYER', 'RECEIVER', name='option_type') @@ -303,6 +306,30 @@ class CashFlowDeal(db.Model): trade_date = db.Column(db.Date, nullable=False) account = db.relationship(Accounts) + +class SpotDeal(db.Model): + __tablename__ = "spots" + id = db.Column('id', db.Integer, primary_key=True) + dealid = db.Column(db.String(28)) + lastupdate = db.Column(db.DateTime, server_default=db.func.now(), onupdate=db.func.now()) + action = db.Column(ACTION) + folder = db.Column(SPOT_STRAT, nullable=False) + custodian = db.Column(db.String(12), default='INTBR', nullable=False) + cashaccount = db.Column(db.String(10), default='IANSCLMAFU', nullable=False) + cp_code = db.Column(db.String(12), db.ForeignKey('counterparties.code'), + info={'choices': [('IBKRNY', 'Interactive Brokers')], + 'label': 'counterparty'}, nullable=False) + trade_date = db.Column(db.Date, nullable=False) + settlement_date = db.Column(db.Date, nullable=False) + spot_rate = db.Column(db.Float, nullable=False) + buy_currency = db.Column(CCY, nullable=False) + buy_amount = db.Column(db.Float, nullable=False) + sell_currency = db.Column(CCY, nullable=False) + sell_amount = db.Column(db.Float, nullable=False) + commission_currency = db.Column(CCY, nullable=False) + commission = db.Column(db.Float, nullable=False) + counterparty = db.relationship(Counterparties) + class CapFloorDeal(db.Model): __tablename__ = 'capfloors' id = db.Column('id', db.Integer, primary_key=True) |
