aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics/portfolio.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/analytics/portfolio.py')
-rw-r--r--python/analytics/portfolio.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/python/analytics/portfolio.py b/python/analytics/portfolio.py
new file mode 100644
index 00000000..00ab09b1
--- /dev/null
+++ b/python/analytics/portfolio.py
@@ -0,0 +1,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])