aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics/portfolio.py
blob: 00ab09b1621165bd9c4b6d8afe9836265ba2925d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Portfolio:
    def __init__(self, trades):
        self.trades = trades

    @property
    def pnl(self):
        return sum(t.pnl for t in self.trades)

    def make_original(self):
        for t in self.trades:
            t.make_original()

    @property
    def ref(self):
        return self.trades[0].ref

    @ref.setter
    def ref(self, val):
        for t in self.trades:
            t.ref = val

    def delta(self, val):
        sum([getattr(t, 'delta', 1) * t.notional for t in self.trades])