|
1 |
| -__all__ = ['CostCalculator', 'EodMarketData', 'MarketDataColumns', 'TxnColumns', 'PositionColumns', 'PlColumns'] |
| 1 | +__all__ = ['CostCalculator', 'EodMarketData', 'MarketDataColumns', 'TxnColumns', 'PositionColumns', 'PlColumns', |
| 2 | + 'TxnPlColumns'] |
2 | 3 |
|
3 | 4 |
|
4 | 5 | class CostCalculator(object):
|
@@ -53,7 +54,31 @@ class TxnColumns(object):
|
53 | 54 | }
|
54 | 55 |
|
55 | 56 |
|
| 57 | + |
56 | 58 | class PlColumns(object):
|
| 59 | + DT = 'date' |
| 60 | + DVDS = 'dvds' |
| 61 | + FEES = 'fees' |
| 62 | + RPL_GROSS = 'rpl_gross' |
| 63 | + RPL = 'rpl' |
| 64 | + UPL = 'upl' |
| 65 | + PL = 'pl' |
| 66 | + |
| 67 | + DESCRIPTIONS = { |
| 68 | + DT: 'p/l date', |
| 69 | + DVDS: 'dividends', |
| 70 | + FEES: 'fees', |
| 71 | + RPL_GROSS: 'realized gross p/l (TOT_VAL - OPEN_VAL)', |
| 72 | + RPL: 'realized pl (RPL_GROSS + FEES + DVDS)', |
| 73 | + UPL: 'unrealized pl (MKT_VAL + OPEN_VAL)', |
| 74 | + PL: 'Total p/l (UPL + RPL)' |
| 75 | + } |
| 76 | + |
| 77 | + ALL = [DT, DVDS, FEES, RPL_GROSS, RPL, UPL, PL] |
| 78 | + LTDS = [DVDS, FEES, RPL_GROSS, RPL, UPL, PL] |
| 79 | + |
| 80 | + |
| 81 | +class TxnPlColumns(object): |
57 | 82 | DT = 'date'
|
58 | 83 | PID = TxnColumns.PID
|
59 | 84 | TID = TxnColumns.TID
|
@@ -87,13 +112,9 @@ class PlColumns(object):
|
87 | 112 | RPL_GROSS: 'realized gross p/l (TOT_VAL - OPEN_VAL)',
|
88 | 113 | RPL: 'realized pl (RPL_GROSS + FEES + DVDS)',
|
89 | 114 | UPL: 'unrealized pl (MKT_VAL + OPEN_VAL)',
|
90 |
| - PL: 'p/l (UPL + RPL)' |
| 115 | + PL: 'Total p/l (UPL + RPL)' |
91 | 116 | }
|
92 | 117 |
|
93 |
| - PL_COLUMNS = [DT, POS, OPEN_VAL, MKT_VAL, TOT_VAL, DVDS, FEES, RPL_GROSS, RPL, UPL, PL] |
94 |
| - TXN_PL_COLUMNS = [DT, PID, TID, TXN_QTY, TXN_PX, TXN_FEES, TXN_PREMIUM, TXN_INTENT, TXN_ACTION, POS, CLOSE_PX, |
95 |
| - OPEN_VAL, MKT_VAL, TOT_VAL, DVDS, FEES, RPL_GROSS, RPL, UPL, PL] |
96 |
| - |
97 | 118 |
|
98 | 119 | class PositionColumns(object):
|
99 | 120 | PID = 'pid'
|
|
0 commit comments