wbportfolio 1.52.0__py2.py3-none-any.whl → 1.52.2__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of wbportfolio might be problematic. Click here for more details.
- wbportfolio/admin/__init__.py +1 -1
- wbportfolio/admin/transactions/__init__.py +0 -1
- wbportfolio/admin/transactions/dividends.py +40 -4
- wbportfolio/admin/transactions/fees.py +24 -14
- wbportfolio/admin/transactions/trades.py +34 -12
- wbportfolio/defaults/fees/default.py +7 -15
- wbportfolio/factories/__init__.py +0 -1
- wbportfolio/factories/dividends.py +8 -3
- wbportfolio/factories/fees.py +8 -4
- wbportfolio/factories/trades.py +10 -3
- wbportfolio/filters/transactions/__init__.py +1 -2
- wbportfolio/filters/transactions/fees.py +5 -10
- wbportfolio/filters/transactions/trades.py +17 -8
- wbportfolio/filters/transactions/utils.py +42 -0
- wbportfolio/import_export/handlers/dividend.py +7 -7
- wbportfolio/import_export/handlers/fees.py +11 -21
- wbportfolio/import_export/handlers/trade.py +5 -7
- wbportfolio/import_export/parsers/jpmorgan/fees.py +2 -2
- wbportfolio/import_export/parsers/leonteq/customer_trade.py +5 -5
- wbportfolio/import_export/parsers/leonteq/fees.py +11 -7
- wbportfolio/import_export/parsers/leonteq/trade.py +0 -5
- wbportfolio/import_export/parsers/natixis/d1_fees.py +2 -2
- wbportfolio/import_export/parsers/natixis/dividend.py +4 -9
- wbportfolio/import_export/parsers/natixis/fees.py +7 -9
- wbportfolio/import_export/parsers/sg_lux/customer_trade_pending_slk.py +1 -1
- wbportfolio/import_export/parsers/sg_lux/fees.py +2 -2
- wbportfolio/import_export/parsers/sg_lux/perf_fees.py +2 -2
- wbportfolio/import_export/parsers/sg_lux/utils.py +2 -2
- wbportfolio/import_export/parsers/ubs/api/fees.py +2 -2
- wbportfolio/import_export/parsers/vontobel/customer_trade.py +2 -3
- wbportfolio/import_export/parsers/vontobel/historical_customer_trade.py +0 -1
- wbportfolio/import_export/parsers/vontobel/management_fees.py +7 -7
- wbportfolio/import_export/parsers/vontobel/performance_fees.py +3 -3
- wbportfolio/jinja2/wbportfolio/sql/aum_nnm.sql +2 -2
- wbportfolio/migrations/0059_fees_unique_fees.py +1 -1
- wbportfolio/migrations/0077_remove_transaction_currency_and_more.py +622 -0
- wbportfolio/models/mixins/liquidity_stress_test.py +3 -3
- wbportfolio/models/transactions/__init__.py +0 -2
- wbportfolio/models/transactions/claim.py +1 -1
- wbportfolio/models/transactions/dividends.py +41 -5
- wbportfolio/models/transactions/fees.py +55 -22
- wbportfolio/models/transactions/trade_proposals.py +26 -6
- wbportfolio/models/transactions/trades.py +111 -50
- wbportfolio/models/transactions/transactions.py +60 -156
- wbportfolio/serializers/signals.py +15 -10
- wbportfolio/serializers/transactions/__init__.py +0 -5
- wbportfolio/serializers/transactions/dividends.py +37 -9
- wbportfolio/serializers/transactions/fees.py +39 -10
- wbportfolio/serializers/transactions/trades.py +56 -16
- wbportfolio/tasks.py +2 -2
- wbportfolio/tests/conftest.py +2 -8
- wbportfolio/tests/models/test_imports.py +2 -7
- wbportfolio/tests/models/transactions/test_fees.py +7 -13
- wbportfolio/tests/models/transactions/test_trade_proposals.py +4 -2
- wbportfolio/urls.py +3 -6
- wbportfolio/viewsets/configs/buttons/__init__.py +1 -0
- wbportfolio/viewsets/configs/buttons/mixins.py +2 -2
- wbportfolio/viewsets/configs/buttons/trades.py +8 -0
- wbportfolio/viewsets/configs/display/__init__.py +2 -3
- wbportfolio/viewsets/configs/display/fees.py +3 -3
- wbportfolio/viewsets/configs/endpoints/__init__.py +3 -4
- wbportfolio/viewsets/configs/endpoints/fees.py +2 -2
- wbportfolio/viewsets/configs/menu/__init__.py +0 -1
- wbportfolio/viewsets/configs/titles/__init__.py +2 -3
- wbportfolio/viewsets/configs/titles/fees.py +4 -8
- wbportfolio/viewsets/mixins.py +5 -1
- wbportfolio/viewsets/products.py +6 -6
- wbportfolio/viewsets/transactions/__init__.py +2 -7
- wbportfolio/viewsets/transactions/fees.py +22 -22
- wbportfolio/viewsets/transactions/trade_proposals.py +1 -0
- wbportfolio/viewsets/transactions/trades.py +2 -0
- {wbportfolio-1.52.0.dist-info → wbportfolio-1.52.2.dist-info}/METADATA +1 -1
- {wbportfolio-1.52.0.dist-info → wbportfolio-1.52.2.dist-info}/RECORD +75 -84
- wbportfolio/admin/transactions/transactions.py +0 -38
- wbportfolio/factories/transactions.py +0 -22
- wbportfolio/filters/transactions/transactions.py +0 -99
- wbportfolio/models/transactions/expiry.py +0 -7
- wbportfolio/serializers/transactions/expiry.py +0 -18
- wbportfolio/serializers/transactions/transactions.py +0 -85
- wbportfolio/viewsets/configs/display/transactions.py +0 -55
- wbportfolio/viewsets/configs/endpoints/transactions.py +0 -14
- wbportfolio/viewsets/configs/menu/transactions.py +0 -9
- wbportfolio/viewsets/configs/titles/transactions.py +0 -9
- wbportfolio/viewsets/transactions/transactions.py +0 -122
- {wbportfolio-1.52.0.dist-info → wbportfolio-1.52.2.dist-info}/WHEEL +0 -0
- {wbportfolio-1.52.0.dist-info → wbportfolio-1.52.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -3,10 +3,10 @@ wbportfolio/apps.py,sha256=tybcoLFiw5tLdGHYV68X96n6jNZqx4BYx7Ao8mPflH8,749
|
|
|
3
3
|
wbportfolio/dynamic_preferences_registry.py,sha256=SV-4JWBZBYhXt5cNMglx-yRJhxpejP_jo157ghjq2q0,2294
|
|
4
4
|
wbportfolio/permissions.py,sha256=F147DXfitbw6IdMQGEFfymCJkiG5YGkWKsLdVVliPyw,320
|
|
5
5
|
wbportfolio/preferences.py,sha256=JpowIFTrnjfomogJNrYmmfv7V35bRZNNGL_zooKzEhc,465
|
|
6
|
-
wbportfolio/tasks.py,sha256=
|
|
7
|
-
wbportfolio/urls.py,sha256=
|
|
6
|
+
wbportfolio/tasks.py,sha256=619LS4AN1-5RqdtwwLODdXA-IJKs5OA93JyLEnIJy4g,1969
|
|
7
|
+
wbportfolio/urls.py,sha256=TFO5juco7IFgizHNvRktM8wnkorsjTLr8bT0bLufWJ0,10539
|
|
8
8
|
wbportfolio/utils.py,sha256=QZ4t0j2NwKYmgWJM77yvXSp-8wVcZmFvNi5_v7YA3ac,750
|
|
9
|
-
wbportfolio/admin/__init__.py,sha256=
|
|
9
|
+
wbportfolio/admin/__init__.py,sha256=nqoBHOLnQ-pnJG793B7ngqCVFNmzCx9-mXVUWEAvR4g,572
|
|
10
10
|
wbportfolio/admin/asset.py,sha256=Nukw4axCnctQFlAtPkPJyalEga7RtTp7jr138MOdWSM,1254
|
|
11
11
|
wbportfolio/admin/custodians.py,sha256=rJ9wFdiFM5t3WrmAfNXWzjxDAWrbnlSstfNjQxSmTNE,332
|
|
12
12
|
wbportfolio/admin/indexes.py,sha256=Psn6yd8ceBySSKWQlbwBq0Y6Jkxg1e1HcMrpO0Wirl8,406
|
|
@@ -17,13 +17,12 @@ wbportfolio/admin/products.py,sha256=NLceny44B0WOZ66I-0D8aBWz8ST7aJM4XVy2NibeRxI
|
|
|
17
17
|
wbportfolio/admin/reconciliations.py,sha256=s7aYxdJE6jX72bnKCrj-YdZBl9bFV_n44Bo28RZMKvg,511
|
|
18
18
|
wbportfolio/admin/registers.py,sha256=N5zcfFgxR9H37YEJxFIBif7v5uLN2mGNV3lf9c5OYnw,505
|
|
19
19
|
wbportfolio/admin/roles.py,sha256=h7d0aYBctghj1zFphWkMVHywnCjF8bewVbk8lq1IX8U,446
|
|
20
|
-
wbportfolio/admin/transactions/__init__.py,sha256=
|
|
20
|
+
wbportfolio/admin/transactions/__init__.py,sha256=Q2vP06TUQlh-Bhkvuz16K0fk8KouiTr48qg9LIoAg8w,195
|
|
21
21
|
wbportfolio/admin/transactions/claim.py,sha256=DaE5vtmSlt_ya55bCAM75UD8smNisA5kl5jrAANm0yA,613
|
|
22
|
-
wbportfolio/admin/transactions/dividends.py,sha256=
|
|
23
|
-
wbportfolio/admin/transactions/fees.py,sha256=
|
|
22
|
+
wbportfolio/admin/transactions/dividends.py,sha256=2Hx0yvcMp0VvzYfuO_jl-9KFrpq6RUd5S7NVrc10Rsg,1604
|
|
23
|
+
wbportfolio/admin/transactions/fees.py,sha256=gpq-_k3ypEGVNuDfFE4OHtn-B9ZtkzA4YYNLtNu-Fc8,1329
|
|
24
24
|
wbportfolio/admin/transactions/rebalancing.py,sha256=FUMazUUxp7P2M9YhWpqKCS-Em4mVYvCyUczY6uY-AEc,611
|
|
25
|
-
wbportfolio/admin/transactions/trades.py,sha256=
|
|
26
|
-
wbportfolio/admin/transactions/transactions.py,sha256=xxy9J8zO0gtqzVUP_Y2OjTXfkNGqrW9f4wWmITir7HQ,1275
|
|
25
|
+
wbportfolio/admin/transactions/trades.py,sha256=hernAxdTmTHROA6C9_OIqBW4-XX6orkeYNxpiY2j_E4,2478
|
|
27
26
|
wbportfolio/analysis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
27
|
wbportfolio/analysis/claims.py,sha256=islJVmHg6jKr6Q1b84Vt5Au2bzy9aDjWGEVGNtPFQd4,10688
|
|
29
28
|
wbportfolio/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -52,14 +51,14 @@ wbportfolio/contrib/company_portfolio/tests/conftest.py,sha256=JFz2KC9YvT1YJ6JFB
|
|
|
52
51
|
wbportfolio/contrib/company_portfolio/tests/test_models.py,sha256=K72dFNMzf5Cpwez24AHFVo_dLpVUswyq8-Ovs0Ai1Ek,7713
|
|
53
52
|
wbportfolio/defaults/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
53
|
wbportfolio/defaults/fees/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
55
|
-
wbportfolio/defaults/fees/default.py,sha256=
|
|
56
|
-
wbportfolio/factories/__init__.py,sha256=
|
|
54
|
+
wbportfolio/defaults/fees/default.py,sha256=rUXZS6b5LFdrJQSTl8nPoboy1V2L8g0bekXbYFbNAoU,3711
|
|
55
|
+
wbportfolio/factories/__init__.py,sha256=LCAEUBt-GeHFkOx1IoQTyDKkgfQGma0GG0U3yBAwwsY,1191
|
|
57
56
|
wbportfolio/factories/adjustments.py,sha256=aOHXJLy7DW4k1hcRBZteEe2mKe_wQg7z0bVnzvXCl4A,615
|
|
58
57
|
wbportfolio/factories/assets.py,sha256=1i7xDT6bpvnYQiEJpmukWadSvS1asQC-QuUJ1PCll0U,3173
|
|
59
58
|
wbportfolio/factories/claim.py,sha256=LQzz8EbIveOYpMY-JOMR8ba-taoX3u53zjBwxiydtrM,1629
|
|
60
59
|
wbportfolio/factories/custodians.py,sha256=XrNcpNhE4Rbv0y159E_MbP1TAQwe9POab-_RHOHy1Uk,311
|
|
61
|
-
wbportfolio/factories/dividends.py,sha256=
|
|
62
|
-
wbportfolio/factories/fees.py,sha256=
|
|
60
|
+
wbportfolio/factories/dividends.py,sha256=8JxViNnFPZy8aXMoeDsa6asaqdBJ5ujfFQ9IqeNXnVQ,798
|
|
61
|
+
wbportfolio/factories/fees.py,sha256=Ov7Hn-UKjuottuq3dmtMCzvEUCLD2CB_hbg6C5hXY48,619
|
|
63
62
|
wbportfolio/factories/indexes.py,sha256=sInyNARyfUNbScxr_ng1HhxtJXIsK3awFf9BF1gr9zU,440
|
|
64
63
|
wbportfolio/factories/portfolio_cash_flow.py,sha256=e8LWkk5Gy0FU4HoCL9xPseCtLlVIkMrvAmey5swqcfc,727
|
|
65
64
|
wbportfolio/factories/portfolio_cash_targets.py,sha256=6bYaKjV56yRbjRaQzime218Dho652pcpkAqwhq63D3g,678
|
|
@@ -70,8 +69,7 @@ wbportfolio/factories/products.py,sha256=N0V6sM_98sC6l8qN78wgfmtpYq7O2c5rW5hT5ZM
|
|
|
70
69
|
wbportfolio/factories/rebalancing.py,sha256=5wlB5cT65oBFcMQDLyMn50JOJMD7GQvzpr9Pe0cqJLE,721
|
|
71
70
|
wbportfolio/factories/reconciliations.py,sha256=Ne3rBZ_yvjlAtWW7qDLprHrLhNCtLL_RXU3yDHc3s3c,916
|
|
72
71
|
wbportfolio/factories/roles.py,sha256=tot54YX70sNqZrAg5zGJTHd7_PFjZed_mny4lGlnwEA,857
|
|
73
|
-
wbportfolio/factories/trades.py,sha256
|
|
74
|
-
wbportfolio/factories/transactions.py,sha256=jZqTNRpW344DSYjV5tAqU5y30Kc7GRGbZ3BN9hacKpQ,995
|
|
72
|
+
wbportfolio/factories/trades.py,sha256=qvWBfG9WrAAgmMJXJ-wWgUtZ2fSOeSCwJvgLe71if8E,1850
|
|
75
73
|
wbportfolio/fdm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
76
74
|
wbportfolio/fdm/tasks.py,sha256=59hXt3TOJaM8KpUaKdBNAGsO7NFMHaAlNA0T3FTUau0,533
|
|
77
75
|
wbportfolio/filters/__init__.py,sha256=m44CdyYMtku8rMGyiX8KSmMdvyqaElKW4UMkEqOC1VM,1374
|
|
@@ -85,12 +83,12 @@ wbportfolio/filters/positions.py,sha256=7eMqwqnNd_owi2Mg-1Uf9K9K9SHSgdZ8CcYgWw49
|
|
|
85
83
|
wbportfolio/filters/products.py,sha256=jOoRKDm_2n2a-Y1dHWl1zjdrwy4Cek57Qa3Q10p_zzY,6492
|
|
86
84
|
wbportfolio/filters/roles.py,sha256=jb8WLzZ_e03x8XkAWuYAdPgMyre3h-rtgYXKJ3dqkhw,920
|
|
87
85
|
wbportfolio/filters/signals.py,sha256=XZ1d50yas47Xy57ZfmvCVjMSKojaoqrc5FHJBcVadtk,3144
|
|
88
|
-
wbportfolio/filters/transactions/__init__.py,sha256=
|
|
86
|
+
wbportfolio/filters/transactions/__init__.py,sha256=TXiHB7_ItZPVcXCCGejpLBRD4R7rtt3Qrq59z8D5ChA,582
|
|
89
87
|
wbportfolio/filters/transactions/claim.py,sha256=eSykgNzcytMWWTmlGlaqBuh98vfOKoTLvA3cglc_jZ0,17951
|
|
90
|
-
wbportfolio/filters/transactions/fees.py,sha256=
|
|
88
|
+
wbportfolio/filters/transactions/fees.py,sha256=SdUaFCdsET9s2FpBA41I8Fw7Zfd_ZGoDGXs-_q3gtq8,1754
|
|
91
89
|
wbportfolio/filters/transactions/mixins.py,sha256=TEV3MUsiQTeu4NdFYHMIIMonmC7CdFF80JTpWYIvfRQ,550
|
|
92
|
-
wbportfolio/filters/transactions/trades.py,sha256=
|
|
93
|
-
wbportfolio/filters/transactions/
|
|
90
|
+
wbportfolio/filters/transactions/trades.py,sha256=uJHaEwaOBGAnLf9OEWf1-F1FKFP_pnjYEFhIW5g2Stc,10064
|
|
91
|
+
wbportfolio/filters/transactions/utils.py,sha256=hU133SdUDuD30wy9QLvCCJbGsiZzxvdOp8xtnGbUzaU,1510
|
|
94
92
|
wbportfolio/fixtures/product_factsheets.yaml,sha256=z5o-viDbgwWkssDJXZYayasFgw1nJ0uiOiYrJNDkRtg,5455
|
|
95
93
|
wbportfolio/fixtures/wbportfolio.yaml.gz,sha256=902nxQZM6VcVcc0wI9AYaSedcJIfsK5letLF31j1Jdg,1479453
|
|
96
94
|
wbportfolio/fixtures/wbrisk_management.yaml.gz,sha256=alFDRu8S9R6IsaIkpJe_v36B2GvHgHeNJVumUB5m_NQ,155413
|
|
@@ -111,34 +109,34 @@ wbportfolio/import_export/backends/wbfdm/mixin.py,sha256=JNtjgqGLson1nu_Chqb8MWy
|
|
|
111
109
|
wbportfolio/import_export/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
112
110
|
wbportfolio/import_export/handlers/adjustment.py,sha256=6bdTIYFmc8_HFxcdwtnYwglMyCfAD8XrTIrEb2zWY0g,1757
|
|
113
111
|
wbportfolio/import_export/handlers/asset_position.py,sha256=UZBDlEK5mxtGu9cZvwiQS6J8GNkMJqDZb7KZ3uwex0g,8698
|
|
114
|
-
wbportfolio/import_export/handlers/dividend.py,sha256=
|
|
115
|
-
wbportfolio/import_export/handlers/fees.py,sha256=
|
|
112
|
+
wbportfolio/import_export/handlers/dividend.py,sha256=F0oLfNt2B_QQAjHBCRpxa5HSkfkAYdal_NjLJGtVckY,4408
|
|
113
|
+
wbportfolio/import_export/handlers/fees.py,sha256=BOFHAvSTlvVLaxnm6KD_fcza1TlPc02HOR9J0_jjswI,2495
|
|
116
114
|
wbportfolio/import_export/handlers/portfolio_cash_flow.py,sha256=W7QPNqEvvsq0RS016EAFBp1ezvc6G9Rk-hviRZh8o6Y,2737
|
|
117
115
|
wbportfolio/import_export/handlers/register.py,sha256=sYyXkE8b1DPZ5monxylZn0kjxLVdNYYZR-p61dwEoDM,2271
|
|
118
|
-
wbportfolio/import_export/handlers/trade.py,sha256=
|
|
116
|
+
wbportfolio/import_export/handlers/trade.py,sha256=VZKPG_l8qT7qzoOc8oi5bNNQHBue4USPdc8sidVHIks,12544
|
|
119
117
|
wbportfolio/import_export/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
120
118
|
wbportfolio/import_export/parsers/default_mapping.py,sha256=KrO-X5CvQCeQoBYzFDxavoQGriyUSeI2QDx5ar_zo7A,1405
|
|
121
119
|
wbportfolio/import_export/parsers/jpmorgan/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
122
120
|
wbportfolio/import_export/parsers/jpmorgan/customer_trade.py,sha256=fj80hTkNxMR8boz1FzNoIJcwL1WuoVxX4_HV5o4CHL0,2812
|
|
123
|
-
wbportfolio/import_export/parsers/jpmorgan/fees.py,sha256=
|
|
121
|
+
wbportfolio/import_export/parsers/jpmorgan/fees.py,sha256=_I3WdPcu5Z0cblOVnkDgOVm9tmH2YhgXdJqRwpkkcwA,2075
|
|
124
122
|
wbportfolio/import_export/parsers/jpmorgan/strategy.py,sha256=OAIKv9NyKj8WiWLXsVIj7ujjfxBl5OLCNNXlx0oJIiE,4463
|
|
125
123
|
wbportfolio/import_export/parsers/jpmorgan/valuation.py,sha256=GjOi5sztimefGNI2EgMtyTsdm_pwqR-Cyv_rEwwrr6Y,1214
|
|
126
124
|
wbportfolio/import_export/parsers/leonteq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
127
|
-
wbportfolio/import_export/parsers/leonteq/customer_trade.py,sha256=
|
|
125
|
+
wbportfolio/import_export/parsers/leonteq/customer_trade.py,sha256=GdqCRWx-D-Z8yvBQU41MWj4j-X2BAnbJ6oAL6sdTnIQ,1896
|
|
128
126
|
wbportfolio/import_export/parsers/leonteq/equity.py,sha256=Lr3nRPBa9Vg3_CQnuwpzyY0W8fG_pba0spASec9fYeU,3758
|
|
129
|
-
wbportfolio/import_export/parsers/leonteq/fees.py,sha256=
|
|
130
|
-
wbportfolio/import_export/parsers/leonteq/trade.py,sha256=
|
|
127
|
+
wbportfolio/import_export/parsers/leonteq/fees.py,sha256=SJaYGURhSdBCf4jFaQAN9t5noT_nU9XpQbaLIs2nNQo,2652
|
|
128
|
+
wbportfolio/import_export/parsers/leonteq/trade.py,sha256=C52EbtkdNoezIxqhSXAKmMZjOvqAzryu1HbgFOemTxI,3349
|
|
131
129
|
wbportfolio/import_export/parsers/leonteq/valuation.py,sha256=s9ovRv4Cx4cFQhjElPCTrguy4Q3iCzbt22TS7Kc3Jl0,1259
|
|
132
130
|
wbportfolio/import_export/parsers/natixis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
133
131
|
wbportfolio/import_export/parsers/natixis/customer_trade.py,sha256=YFqneuhkwGEF5NSZ6r2Fgf8xnOUCgVN2Vjv0oyPDlIY,2498
|
|
134
132
|
wbportfolio/import_export/parsers/natixis/d1_customer_trade.py,sha256=ybtJ9NYlqksPjlTmXz7jlj_3SCjgS1o2Sw32xU3wOrc,2207
|
|
135
133
|
wbportfolio/import_export/parsers/natixis/d1_equity.py,sha256=MDp5cT0WYgSXKxwezWLX7spqbNsA80rxK75rVo_r4WI,2669
|
|
136
|
-
wbportfolio/import_export/parsers/natixis/d1_fees.py,sha256=
|
|
134
|
+
wbportfolio/import_export/parsers/natixis/d1_fees.py,sha256=RmzwlNqLSlGDp7JMTwHunLcapdVLKFitLIaAHtVWdUQ,2189
|
|
137
135
|
wbportfolio/import_export/parsers/natixis/d1_trade.py,sha256=JsAVgRH2iBo096Spz8ThJOGPpOCPyYrJ9GJ1XnzjBJQ,2092
|
|
138
136
|
wbportfolio/import_export/parsers/natixis/d1_valuation.py,sha256=M12am0ZenUJxkvEGp6tM1HfeukqYS3b6tfbyfC0XwvY,1216
|
|
139
|
-
wbportfolio/import_export/parsers/natixis/dividend.py,sha256=
|
|
137
|
+
wbportfolio/import_export/parsers/natixis/dividend.py,sha256=qx8DXu6NXMy1M_iunA4ITM845_6iNd1aoVCdoAKDNsY,1964
|
|
140
138
|
wbportfolio/import_export/parsers/natixis/equity.py,sha256=GSObiFxvhlbGuSZnJq-D8yRgLlsAxJ4oMxYeR6GmFNE,2501
|
|
141
|
-
wbportfolio/import_export/parsers/natixis/fees.py,sha256=
|
|
139
|
+
wbportfolio/import_export/parsers/natixis/fees.py,sha256=oIC9moGm4s-6525q4_Syt4Yexj3SDgB5kYSfcsdzLcY,1666
|
|
142
140
|
wbportfolio/import_export/parsers/natixis/trade.py,sha256=BJum1W0fYe9emHU7RgL-AjHkiclrckQYkG8VkyCnfvM,2579
|
|
143
141
|
wbportfolio/import_export/parsers/natixis/utils.py,sha256=oa9ENQDfOp2dWfg-ohA5TanCCMx56BnZkQ-U6XlVaBs,2782
|
|
144
142
|
wbportfolio/import_export/parsers/natixis/valuation.py,sha256=qk5eDz-b9bIttDGnZxQZnm9pDIalb-LCGxmeTyMKRmQ,1523
|
|
@@ -147,17 +145,17 @@ wbportfolio/import_export/parsers/refinitiv/adjustment.py,sha256=64AQoLOZQWn5HCL
|
|
|
147
145
|
wbportfolio/import_export/parsers/sg_lux/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
148
146
|
wbportfolio/import_export/parsers/sg_lux/custodian_positions.py,sha256=hl-LqJbwojQOe0zGEH7W31i4hNTVme5L7nwXwyk6XBY,2483
|
|
149
147
|
wbportfolio/import_export/parsers/sg_lux/customer_trade.py,sha256=gTEUIaxlZvXXCgYyg9FD3D3aQhffhruYmeZlaAghrK8,2617
|
|
150
|
-
wbportfolio/import_export/parsers/sg_lux/customer_trade_pending_slk.py,sha256=
|
|
148
|
+
wbportfolio/import_export/parsers/sg_lux/customer_trade_pending_slk.py,sha256=WyRpKXkNhpK4H9aNjW7_ggcCGlN_-9ETlR1QsE9xl_k,5068
|
|
151
149
|
wbportfolio/import_export/parsers/sg_lux/customer_trade_slk.py,sha256=D_1c0v6lTXkopjZzr9pQb575HxrMFe91tKk8xT1X3Ns,3604
|
|
152
150
|
wbportfolio/import_export/parsers/sg_lux/customer_trade_without_pw.py,sha256=nMYV9-OwY_TagU36Ab0dOweZYzVriFWHXPYjauBg2Yk,2034
|
|
153
151
|
wbportfolio/import_export/parsers/sg_lux/equity.py,sha256=w13LAMNWReZzqmdFyXdazVnpGr1UUNLG-pJgn5c16gI,6116
|
|
154
|
-
wbportfolio/import_export/parsers/sg_lux/fees.py,sha256=
|
|
155
|
-
wbportfolio/import_export/parsers/sg_lux/perf_fees.py,sha256=
|
|
152
|
+
wbportfolio/import_export/parsers/sg_lux/fees.py,sha256=AK2TGOjI3JrOjtACEQd-4ffuedtIus-_gWug6wN6RQs,1846
|
|
153
|
+
wbportfolio/import_export/parsers/sg_lux/perf_fees.py,sha256=6HAV3Pu2aaYARjMQvN24Op2rru_YdjeI9J9ADDQVH8s,1513
|
|
156
154
|
wbportfolio/import_export/parsers/sg_lux/portfolio_cash_flow.py,sha256=ftLKWukUl9AcGWHQmJZnShVZpkO4rOl04PGlLcalDdQ,889
|
|
157
155
|
wbportfolio/import_export/parsers/sg_lux/portfolio_future_cash_flow.py,sha256=2kkEOwZz1hwiPB9rlMp_vkv5azMrJUfyWl7GMaAwGUc,1074
|
|
158
156
|
wbportfolio/import_export/parsers/sg_lux/registers.py,sha256=NPkIAY5vJ40_EweQNjgiDVpi-HBK2OFFjwxXhWp85d0,6288
|
|
159
157
|
wbportfolio/import_export/parsers/sg_lux/sylk.py,sha256=1ThyjneFFe_gNLDHeXQFdWIyanyktxm62P-Ta5Sm1v4,7656
|
|
160
|
-
wbportfolio/import_export/parsers/sg_lux/utils.py,sha256=
|
|
158
|
+
wbportfolio/import_export/parsers/sg_lux/utils.py,sha256=xrtEkdz_ypGFRTWn3-Kz6GzqhxY9mexSdWImBEc9xT8,1307
|
|
161
159
|
wbportfolio/import_export/parsers/sg_lux/valuation.py,sha256=tmc-KHcRUHjTZVck8vzUIoN4Fcb-_zevmET4ZkkRlak,1788
|
|
162
160
|
wbportfolio/import_export/parsers/societe_generale/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
163
161
|
wbportfolio/import_export/parsers/societe_generale/customer_trade.py,sha256=eUgd_ZwK8WZh8-oXTLH4t_F9fXE6SCSOreIqXwVwT0w,2110
|
|
@@ -174,16 +172,16 @@ wbportfolio/import_export/parsers/ubs/historical_customer_trade.py,sha256=1IggU7
|
|
|
174
172
|
wbportfolio/import_export/parsers/ubs/valuation.py,sha256=6P71APM4xGoAadCywO6DBz42xL1bClacf242pb25w_s,1597
|
|
175
173
|
wbportfolio/import_export/parsers/ubs/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
176
174
|
wbportfolio/import_export/parsers/ubs/api/asset_position.py,sha256=vDpGuHDvn0c-x72WVQtIqUc15UxoAQL-XFOsKzNoBjk,4136
|
|
177
|
-
wbportfolio/import_export/parsers/ubs/api/fees.py,sha256=
|
|
175
|
+
wbportfolio/import_export/parsers/ubs/api/fees.py,sha256=W6KfZn185nwXePwxL90Jp3Y_HCtkEzivuSSv2IfT2qs,1068
|
|
178
176
|
wbportfolio/import_export/parsers/ubs/api/instrument_price.py,sha256=gRAfB6BWbMEadIEe24b5nyOyg8owXKAen_Oo0ls8rvQ,565
|
|
179
177
|
wbportfolio/import_export/parsers/ubs/api/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
180
178
|
wbportfolio/import_export/parsers/vontobel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
181
179
|
wbportfolio/import_export/parsers/vontobel/asset_position.py,sha256=IQTvGqp7smZUph1Km2Gx5X7RD_P8GDEYPwS3-Tzu78o,4031
|
|
182
|
-
wbportfolio/import_export/parsers/vontobel/customer_trade.py,sha256=
|
|
183
|
-
wbportfolio/import_export/parsers/vontobel/historical_customer_trade.py,sha256=
|
|
180
|
+
wbportfolio/import_export/parsers/vontobel/customer_trade.py,sha256=cA88eJrz4lVnmxwS17CqQ458pqCB2gK13vMGUg9bZgE,1953
|
|
181
|
+
wbportfolio/import_export/parsers/vontobel/historical_customer_trade.py,sha256=Vto6gujUZOUSjBpDl1HDXFKNLbcPLjk7D88RZ9uVVlI,1554
|
|
184
182
|
wbportfolio/import_export/parsers/vontobel/instrument.py,sha256=P930ukkZfPPTHa17fk7KSm9jvh4A38zGK1wpk6kwqrc,1003
|
|
185
|
-
wbportfolio/import_export/parsers/vontobel/management_fees.py,sha256=
|
|
186
|
-
wbportfolio/import_export/parsers/vontobel/performance_fees.py,sha256=
|
|
183
|
+
wbportfolio/import_export/parsers/vontobel/management_fees.py,sha256=nshro0tybX9aw7XCxGOFMHDeVX6vQUq8eE1UiV23xao,3702
|
|
184
|
+
wbportfolio/import_export/parsers/vontobel/performance_fees.py,sha256=_3Cx7SWE_hst2W2tUv20QzI-O5m2EXISyDqxeshvrY8,1248
|
|
187
185
|
wbportfolio/import_export/parsers/vontobel/trade.py,sha256=Xc0ttSkdLm-ZIHtXOyHxHr3FuR89T87I9hXqiTMU1Hk,1566
|
|
188
186
|
wbportfolio/import_export/parsers/vontobel/utils.py,sha256=3-g2Jep9SxvqqQff8_3FjIeiPxSJCEfXBiBHIk0TiXQ,225
|
|
189
187
|
wbportfolio/import_export/parsers/vontobel/valuation.py,sha256=iav8_xYpTJchmTa7KOPmFr1gi9xxLwq3e-VcZ9MDiRk,1220
|
|
@@ -191,7 +189,7 @@ wbportfolio/import_export/parsers/vontobel/valuation_api.py,sha256=WLkZ5z-WqhFra
|
|
|
191
189
|
wbportfolio/import_export/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
192
190
|
wbportfolio/import_export/resources/assets.py,sha256=zjgHlQWpud41jHrKdRyqGUt1KUJQm9Z7pt0uVh4qBWQ,2234
|
|
193
191
|
wbportfolio/import_export/resources/trades.py,sha256=_uAI2clV_ZjStX2Gf4rl_wWo2R4AHNOsZO52g0XKcM0,1723
|
|
194
|
-
wbportfolio/jinja2/wbportfolio/sql/aum_nnm.sql,sha256=
|
|
192
|
+
wbportfolio/jinja2/wbportfolio/sql/aum_nnm.sql,sha256=V3fm1bWs-0Cz5Y4LK78dkbuyxqg6VUfsE4JXsIQHQac,4408
|
|
195
193
|
wbportfolio/kpi_handlers/nnm.py,sha256=hCn0oG0C-6dQ0G-6S4r31nAS633NZdlOT-ntZrzvXZI,7180
|
|
196
194
|
wbportfolio/locale/de/LC_MESSAGES/django.mo,sha256=FfQ5HV2xg7ZrJASidRJ4L-gCAbPNeQnFm940aRbb0js,378
|
|
197
195
|
wbportfolio/locale/de/LC_MESSAGES/django.po,sha256=Y0CbQMiq1N8SmqKltxPlobdoDhTTtPrFBYBg3_o6O5U,5215
|
|
@@ -230,7 +228,7 @@ wbportfolio/migrations/0055_remove_product__custom_management_rebates_and_more.p
|
|
|
230
228
|
wbportfolio/migrations/0056_remove_companyportfoliodata_assets_under_management_currency_and_more.py,sha256=JxPOyk8AUDKVS3oI4VNzNgwocCAF0xLt8Q0oyu0WuiY,2107
|
|
231
229
|
wbportfolio/migrations/0057_alter_portfolio_preferred_instrument_classifications_and_more.py,sha256=objTcKm7bf1b_vwuJC2SNAEG8NjoIDPdm6NYLXI-EzU,1463
|
|
232
230
|
wbportfolio/migrations/0058_pmsinstrument.py,sha256=mu6U1WCCrmrf62Y2N7y1tpyUp9sDus7MSFPMXCjtSGM,611
|
|
233
|
-
wbportfolio/migrations/0059_fees_unique_fees.py,sha256=
|
|
231
|
+
wbportfolio/migrations/0059_fees_unique_fees.py,sha256=nUrZch7fcsC-e9WW3OcYQGdnD_f1hvvKy6KBiXZQI5k,1691
|
|
234
232
|
wbportfolio/migrations/0060_alter_portfolioportfoliothroughmodel_type.py,sha256=zs1Rd3WmsyXCyYg7j81dneBydL-sb4ljSXdDdJwJDQ0,599
|
|
235
233
|
wbportfolio/migrations/0061_portfolio_bank_accounts_product_bank_account_and_more.py,sha256=e5lPtRsgOhmYavqBlA8F96Slvcch4c4JlGloQt-3gBo,7992
|
|
236
234
|
wbportfolio/migrations/0062_alter_dailyportfoliocashflow_options.py,sha256=PfXFKsxoCM68paGrZWagqRUxziGAxgQEEH_TlBn1rcU,638
|
|
@@ -248,6 +246,7 @@ wbportfolio/migrations/0073_remove_product_price_computation_and_more.py,sha256=
|
|
|
248
246
|
wbportfolio/migrations/0074_alter_rebalancer_frequency_and_more.py,sha256=o01rBj-ADgwCRtAai3e5z27alPGEzaiNxUqCwWm6peY,918
|
|
249
247
|
wbportfolio/migrations/0075_portfolio_initial_position_date_and_more.py,sha256=rXRpsraVlmueAlO2UpBZV4qMf7dtPuptrhfLblZcJDo,1099
|
|
250
248
|
wbportfolio/migrations/0076_alter_dividendtransaction_price_and_more.py,sha256=4g3ok79nw8mTAxHFAqBAdpGKetaPAjv06YSywywt4aU,6106
|
|
249
|
+
wbportfolio/migrations/0077_remove_transaction_currency_and_more.py,sha256=Yf4a3zn2siDtWdIEPEIsj_W87jxOIBwiFVATneU8FxU,29597
|
|
251
250
|
wbportfolio/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
252
251
|
wbportfolio/models/__init__.py,sha256=HSpa5xwh_MHQaBpNrq9E0CbdEE5Iq-pDLIsPzZ-TRTg,904
|
|
253
252
|
wbportfolio/models/adjustments.py,sha256=osXWkJZOiansPWYPyHtl7Z121zDWi7u1YMtrBQtbHVo,10272
|
|
@@ -272,20 +271,19 @@ wbportfolio/models/graphs/utils.py,sha256=1AMpEE9mDuUZ82XgN2irxjCW1-LmziROhKevEB
|
|
|
272
271
|
wbportfolio/models/llm/wbcrm/analyze_relationship.py,sha256=etKdmt9m6Ra5u7EA9t98RVSqFKpbFd4iwBVaH9T26M8,2320
|
|
273
272
|
wbportfolio/models/mixins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
274
273
|
wbportfolio/models/mixins/instruments.py,sha256=SgBreTpa_X3uyCWo7t8B0VaTtl49IjmBMe4Pab6TjAM,6796
|
|
275
|
-
wbportfolio/models/mixins/liquidity_stress_test.py,sha256=
|
|
274
|
+
wbportfolio/models/mixins/liquidity_stress_test.py,sha256=iQVzT3QM7VtHnqfj9gT6KUIe4wC4MJXery-AXJHUYns,58820
|
|
276
275
|
wbportfolio/models/reconciliations/__init__.py,sha256=MXH5fZIPGDRBgJkO6wVu_NLRs8fkP1im7G6d-h36lQY,127
|
|
277
276
|
wbportfolio/models/reconciliations/account_reconciliation_lines.py,sha256=QP6M7hMcyFbuXBa55Y-azui6Dl_WgbzMntEqWzQkbfM,7394
|
|
278
277
|
wbportfolio/models/reconciliations/account_reconciliations.py,sha256=rofSxetFfEJov6mPyoTvGxELA16HILyJZtQvm_kwYU0,4405
|
|
279
278
|
wbportfolio/models/reconciliations/reconciliations.py,sha256=kF-BNhUoT4TCn1RIgPSkdEk1iX4NQeZlGGFd_ZulAZU,686
|
|
280
|
-
wbportfolio/models/transactions/__init__.py,sha256=
|
|
281
|
-
wbportfolio/models/transactions/claim.py,sha256=
|
|
282
|
-
wbportfolio/models/transactions/dividends.py,sha256=
|
|
283
|
-
wbportfolio/models/transactions/
|
|
284
|
-
wbportfolio/models/transactions/fees.py,sha256=ffvqo8I4A0l5rLi00jJ6sGot0jmnkoxaNsbDzdPLwCg,5712
|
|
279
|
+
wbportfolio/models/transactions/__init__.py,sha256=aV6lehRHSs8cOKOanm6UgSDqOwEzRZ-eCADuYin9bzY,230
|
|
280
|
+
wbportfolio/models/transactions/claim.py,sha256=SF2FlwG6SRVmA_hT0NbXah5-fYejccWKAE6AY6YOYTs,25875
|
|
281
|
+
wbportfolio/models/transactions/dividends.py,sha256=mmOdGWR35yndUMoCuG24Y6BdtxDhSk2gMQ-8LVguqzg,1890
|
|
282
|
+
wbportfolio/models/transactions/fees.py,sha256=wJtlzbBCAq1UHvv0wqWTE2BEjCF5RMtoaSDS3kODFRo,7112
|
|
285
283
|
wbportfolio/models/transactions/rebalancing.py,sha256=obzgewWKOD4kJbCoF5fhtfDk502QkbrjPKh8T9KDGew,7355
|
|
286
|
-
wbportfolio/models/transactions/trade_proposals.py,sha256=
|
|
287
|
-
wbportfolio/models/transactions/trades.py,sha256=
|
|
288
|
-
wbportfolio/models/transactions/transactions.py,sha256=
|
|
284
|
+
wbportfolio/models/transactions/trade_proposals.py,sha256=b1VbgR91-3LFq08iNnafcTjvsDboimU7ZRpf5jtQk7w,32234
|
|
285
|
+
wbportfolio/models/transactions/trades.py,sha256=ccEtPxqHUcTizQFd6vpe06mXIgDsLGsZEoeB3SssSdo,31231
|
|
286
|
+
wbportfolio/models/transactions/transactions.py,sha256=XTcUeMUfkf5XTSZaR2UAyGqCVkOhQYk03_vzHLIgf8Q,3807
|
|
289
287
|
wbportfolio/pms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
290
288
|
wbportfolio/pms/typing.py,sha256=b2pBWYt1E8ok-Kqm0lEFIakSnWJ6Ib57z-VX3C3gkQc,6081
|
|
291
289
|
wbportfolio/pms/analytics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -343,15 +341,13 @@ wbportfolio/serializers/rebalancing.py,sha256=PloLwOcgDfsna3-LRGLFQ4eYJvlMbhI0rk
|
|
|
343
341
|
wbportfolio/serializers/reconciliations.py,sha256=oFvGCAGioAOBK3xXjfwjMVYOXv3AbSyMg6YK6Olp6ow,7373
|
|
344
342
|
wbportfolio/serializers/registers.py,sha256=zhdKH_mHEBE0VOhm6xpY54bTMtcSaY5BskEaJxtFd5Q,2737
|
|
345
343
|
wbportfolio/serializers/roles.py,sha256=T-9NqTldpvaEMFy-Bib5MB6MeboygEOqcMP61mzzD3Q,2146
|
|
346
|
-
wbportfolio/serializers/signals.py,sha256=
|
|
347
|
-
wbportfolio/serializers/transactions/__init__.py,sha256=
|
|
344
|
+
wbportfolio/serializers/signals.py,sha256=BeOXZFCt_gb48LUK6DKVIe4J13BIzbNGTMdUqUR4FA4,7503
|
|
345
|
+
wbportfolio/serializers/transactions/__init__.py,sha256=oAfidhjjCKP0exeHbzJgGuBdnKAehlAOougA4W_wI_M,719
|
|
348
346
|
wbportfolio/serializers/transactions/claim.py,sha256=kC4E2RZRrpd9i8tGfoiV-gpWDk3ikR5F1Wf0v_IGIvw,11599
|
|
349
|
-
wbportfolio/serializers/transactions/dividends.py,sha256=
|
|
350
|
-
wbportfolio/serializers/transactions/
|
|
351
|
-
wbportfolio/serializers/transactions/fees.py,sha256=uPmSWuCeoV2bwVS6RmEz3a0VRBWJHIQr0WhklYc1UAI,1068
|
|
347
|
+
wbportfolio/serializers/transactions/dividends.py,sha256=ADXf9cXe8rq55lC_a8vIzViGLmQ-yDXkgR54k2m-N0w,1814
|
|
348
|
+
wbportfolio/serializers/transactions/fees.py,sha256=3mBzs6vdfST9roeQB-bmLJhipY7i5jBtAXjoTTE-GOg,2388
|
|
352
349
|
wbportfolio/serializers/transactions/trade_proposals.py,sha256=fiGpL6za5ERLtdbud5wrciCVXHX6-3SjeF8Zaa6Zhzg,3410
|
|
353
|
-
wbportfolio/serializers/transactions/trades.py,sha256=
|
|
354
|
-
wbportfolio/serializers/transactions/transactions.py,sha256=O137zeCndK-nxIWSRLEj7bXbBZDGa4d6qK6pJIIYK3g,4170
|
|
350
|
+
wbportfolio/serializers/transactions/trades.py,sha256=Rhv0UezIpnDxWmj5v9dQECfS0un7yQUIpnkOtD6z6YY,15452
|
|
355
351
|
wbportfolio/static/wbportfolio/css/macro_review.css,sha256=FAVVO8nModxwPXcTKpcfzVxBGPZGJVK1Xn-0dkSfGyc,233
|
|
356
352
|
wbportfolio/static/wbportfolio/markdown/documentation/account_holding_reconciliation.md,sha256=MabxOvOne8s5gl6osDoow6-3ghaXLAYg9THWpvy6G5I,921
|
|
357
353
|
wbportfolio/static/wbportfolio/markdown/documentation/aggregate_asset_position_liquidity.md,sha256=HEgXB7uqmqfty-GBCCXYxrAN-teqmxWuqDLK_liKWVc,1090
|
|
@@ -366,7 +362,7 @@ wbportfolio/templates/portfolio/email/email_base_template.html,sha256=n6DN3QV92t
|
|
|
366
362
|
wbportfolio/templates/portfolio/email/rebalancing_report.html,sha256=Go7joPYXwF_1Q72mblOtJSw4-TbH3NqW7ww_xGBP95k,1206
|
|
367
363
|
wbportfolio/templates/portfolio/macro/macro_review.html,sha256=OxliFeX9pVNKeTVTaPnfNPHmM5YxVMr77PeKC-6y0jY,2273
|
|
368
364
|
wbportfolio/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
369
|
-
wbportfolio/tests/conftest.py,sha256=
|
|
365
|
+
wbportfolio/tests/conftest.py,sha256=PdABpCYifzMFUg2FbpCPSsAU3qcw8qVPT6VKvpvgsic,4300
|
|
370
366
|
wbportfolio/tests/signals.py,sha256=9tZczwFAcaUR5epAExCPhdRCE7duRC6WZOPe91r1TAE,5941
|
|
371
367
|
wbportfolio/tests/tests.py,sha256=utTcVQI7oA7-Yo-IDM7d7BXwXNMIWpRbZNyEWqxkyL4,1033
|
|
372
368
|
wbportfolio/tests/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -375,7 +371,7 @@ wbportfolio/tests/models/test_assets.py,sha256=rb9PrPuodVEnN2LcoOqNWfsb064Ar0NF4
|
|
|
375
371
|
wbportfolio/tests/models/test_custodians.py,sha256=WnFA4R-deVL7DSKufGE0mcFUdU05otNfGvmG4psiIh4,340
|
|
376
372
|
wbportfolio/tests/models/test_customer_trades.py,sha256=50By281j-nJ43jwRWK_KxNQGv6SuimT9e_ejgu6b19o,4942
|
|
377
373
|
wbportfolio/tests/models/test_dividends.py,sha256=SVkIW3OqN4-9tq1HIvJm8_8rOyNTHbJKFiN075DeGGc,162
|
|
378
|
-
wbportfolio/tests/models/test_imports.py,sha256
|
|
374
|
+
wbportfolio/tests/models/test_imports.py,sha256=-8qWpShRxbjnUj2l7OQagMmI61xVReO3JdlaGxtuXM4,7736
|
|
379
375
|
wbportfolio/tests/models/test_instrument_mixins.py,sha256=avX7a7Ovdzm_2v8JpSmrzqPo52qmIEa33c074D5KFCU,2206
|
|
380
376
|
wbportfolio/tests/models/test_merge.py,sha256=sdsjiZsmR6vsUKwTa5kkvL6QTeAZqtd_EPWPI11FKGY,6497
|
|
381
377
|
wbportfolio/tests/models/test_portfolio_cash_flow.py,sha256=X8dsXexsb1b0lBiuGzu40ps_Az_1UmmKT0eo1vbXH94,5792
|
|
@@ -389,9 +385,9 @@ wbportfolio/tests/models/test_splits.py,sha256=ytKcHsI_90kj1L4s8It-KEcc24rkDcElx
|
|
|
389
385
|
wbportfolio/tests/models/utils.py,sha256=ORNJq6NMo1Za22jGZXfTfKeNEnTRlfEt_8SJ6xLaQWg,325
|
|
390
386
|
wbportfolio/tests/models/transactions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
391
387
|
wbportfolio/tests/models/transactions/test_claim.py,sha256=NG3BKB-FVcIDgHSJHCjImxgMM3ISVUMl24xUPmEcPec,5570
|
|
392
|
-
wbportfolio/tests/models/transactions/test_fees.py,sha256=
|
|
388
|
+
wbportfolio/tests/models/transactions/test_fees.py,sha256=tAp18x2wCNQr11LUnLtHNbBDbbX0v1DZnmW7i-cEi5Q,2423
|
|
393
389
|
wbportfolio/tests/models/transactions/test_rebalancing.py,sha256=fZ5tx6kByEGXD6nhapYdvk9HOjYlmjhU2w6KlQJ6QE4,4061
|
|
394
|
-
wbportfolio/tests/models/transactions/test_trade_proposals.py,sha256=
|
|
390
|
+
wbportfolio/tests/models/transactions/test_trade_proposals.py,sha256=UB8Dvs7nT42D_uznuLyzni7PYiY-dabLCDXmV2W_yb4,18928
|
|
395
391
|
wbportfolio/tests/models/transactions/test_trades.py,sha256=vqvOqUY_uXvBp8YOKR0Wq9ycA2oeeEBhO3dzV7sbXEU,9863
|
|
396
392
|
wbportfolio/tests/pms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
397
393
|
wbportfolio/tests/pms/test_analytics.py,sha256=fAuY1zcXibttFpBh2GhKVyzdYfi1kz_b7SPa9xZQXY0,1086
|
|
@@ -411,7 +407,7 @@ wbportfolio/viewsets/assets.py,sha256=Gf5QKDM7QR9MC8GJhMNzaY7NzeKV_yOQw0wktKPEc9
|
|
|
411
407
|
wbportfolio/viewsets/assets_and_net_new_money_progression.py,sha256=Jl4vEQP4N2OFL5IGBXoKcj-0qaPviU0I8npvQLw4Io0,4464
|
|
412
408
|
wbportfolio/viewsets/custodians.py,sha256=CTFqkqVP1R3AV7lhdvcdICxB5DfwDYCyikNSI5kbYEo,2322
|
|
413
409
|
wbportfolio/viewsets/esg.py,sha256=27MxxdXQH3Cq_1UEYmcrF7htUOg6i81fUpbVQXAAKJI,6985
|
|
414
|
-
wbportfolio/viewsets/mixins.py,sha256=
|
|
410
|
+
wbportfolio/viewsets/mixins.py,sha256=XvIoyv0T9Gi_HCuPtjFX8IGZeuskmcL669IeKyLXlRI,1791
|
|
415
411
|
wbportfolio/viewsets/portfolio_cash_flow.py,sha256=jkBfdZRQ3KsxGMJpltRjmdrZ2qEFJq5edunUUs5ju2g,1297
|
|
416
412
|
wbportfolio/viewsets/portfolio_cash_targets.py,sha256=CvHlrDE8qnnnfRpTYnFu-Uu15MDbF5d5gTmEKth2S24,322
|
|
417
413
|
wbportfolio/viewsets/portfolio_relationship.py,sha256=RGyvxd8NfFEs8YdqEvVD3VbrISvAO5UtCTlocSIuWQw,2109
|
|
@@ -420,7 +416,7 @@ wbportfolio/viewsets/portfolios.py,sha256=FFK8Vt7Mk5ttS9FzGcRlKhTg0suX1wa8H35h4x
|
|
|
420
416
|
wbportfolio/viewsets/positions.py,sha256=2rzFHB_SI09rXC_EYi58G_eqvzONbk8z61JDkkjt3Ew,13207
|
|
421
417
|
wbportfolio/viewsets/product_groups.py,sha256=YvmuXPPy98K1J_rz6YPsx9gNK-tCS2P-wc1uRYgfyo0,2399
|
|
422
418
|
wbportfolio/viewsets/product_performance.py,sha256=dRfRgifjGS1RgZSu9uJRM0SmB7eLnNUkPuqARMO4gyo,28371
|
|
423
|
-
wbportfolio/viewsets/products.py,sha256=
|
|
419
|
+
wbportfolio/viewsets/products.py,sha256=V8UFtfqxzs67XaU1JZcJJms1WzeNPeXtNBrQuz4B5mk,20414
|
|
424
420
|
wbportfolio/viewsets/reconciliations.py,sha256=tRS7UBDtMn-07uA9QqYvnCtp_mZGVeULF2OJMfHJPZk,7357
|
|
425
421
|
wbportfolio/viewsets/registers.py,sha256=eOuEhW2McHsOapCKue7M4eazrJnVpCBVxImpFccq0z0,2401
|
|
426
422
|
wbportfolio/viewsets/roles.py,sha256=vnzS1mlJMZS3GObrss6SfXOr3KRb-OHB1s4Msvtn7xQ,1556
|
|
@@ -428,27 +424,27 @@ wbportfolio/viewsets/signals.py,sha256=URxNz-7tKNBgvaFIE3FItfao3Md0dKQN_eVFwxxiE
|
|
|
428
424
|
wbportfolio/viewsets/charts/__init__.py,sha256=mNSpDrsqK-afRxGBfEsfgupUc20xU-JW08FpxIyudok,71
|
|
429
425
|
wbportfolio/viewsets/charts/assets.py,sha256=rZM4Ul0ZXVr7uz3SU44J5IYU7-FivjDgR1it_4ewk2o,10547
|
|
430
426
|
wbportfolio/viewsets/configs/__init__.py,sha256=K5opfVQvgGwSyw3XwDGkv3lo5i9jBxOJXYhLqyCdfeQ,137
|
|
431
|
-
wbportfolio/viewsets/configs/buttons/__init__.py,sha256=
|
|
427
|
+
wbportfolio/viewsets/configs/buttons/__init__.py,sha256=nqXdv0VEG8MM8IKHHf2PDAulYVinCuvmic5Ru03jVBw,881
|
|
432
428
|
wbportfolio/viewsets/configs/buttons/adjustments.py,sha256=sUY_3vxqP0kuqs8i5hklfboZI6QiAOrmu30eb29Xupo,492
|
|
433
429
|
wbportfolio/viewsets/configs/buttons/assets.py,sha256=6HqSyUpczK66iL0Jg8BbvAJuci3jm8OsB9p9Nt_o14Q,5680
|
|
434
430
|
wbportfolio/viewsets/configs/buttons/claims.py,sha256=G1GFK1jQyR9M0dyXthYA6krG2JFvHhc3D7pFh6IUQ30,3684
|
|
435
431
|
wbportfolio/viewsets/configs/buttons/custodians.py,sha256=AE-VFahGreSlg5nejqQVvOy2JvpclXbgSD6bxsyqI_U,3317
|
|
436
432
|
wbportfolio/viewsets/configs/buttons/fees.py,sha256=8z-qo5krw4x_9ujp0s8iR8iY8_5m-wusPNaQkjMxFSA,443
|
|
437
|
-
wbportfolio/viewsets/configs/buttons/mixins.py,sha256=
|
|
433
|
+
wbportfolio/viewsets/configs/buttons/mixins.py,sha256=d2W3IOgmi3icTMeoO_ckec2oCXA_kiG6nOriMG7YHTI,3169
|
|
438
434
|
wbportfolio/viewsets/configs/buttons/portfolios.py,sha256=y1sqYJwhQG9M0AgUEY8yEE3VTdhhVxoup3YBc2IRm-U,5267
|
|
439
435
|
wbportfolio/viewsets/configs/buttons/products.py,sha256=bHOs2ftfaLbIbJ7E8yFqQqSuXCIYD6w3f3peireAUyk,1839
|
|
440
436
|
wbportfolio/viewsets/configs/buttons/reconciliations.py,sha256=lw4r22GHpqKPUF1MrB6P9dOkL-FHe5iiBJ0--f8D74E,3145
|
|
441
437
|
wbportfolio/viewsets/configs/buttons/registers.py,sha256=aS89TsYHql83k-NHojOrLDqtBpnpsUUO8x63PiMfrXM,445
|
|
442
438
|
wbportfolio/viewsets/configs/buttons/signals.py,sha256=6sKBQI_eDvZuZR5bUUwvur5R67A3oChAGxPfayWUelE,2739
|
|
443
439
|
wbportfolio/viewsets/configs/buttons/trade_proposals.py,sha256=eZBfYk5ZhancCVcu7bvRKPGBKTl_tGlgz6BZrGPpPxQ,2953
|
|
444
|
-
wbportfolio/viewsets/configs/buttons/trades.py,sha256=
|
|
445
|
-
wbportfolio/viewsets/configs/display/__init__.py,sha256=
|
|
440
|
+
wbportfolio/viewsets/configs/buttons/trades.py,sha256=bPOqqwdgadSUbU9l5aSirqr5UAMFe2AiFNsXLRsKwn8,2535
|
|
441
|
+
wbportfolio/viewsets/configs/display/__init__.py,sha256=jJqSCCAfw_vjbcsIkzKr39LdAZA810LUBfSH1EA7MAI,2086
|
|
446
442
|
wbportfolio/viewsets/configs/display/adjustments.py,sha256=jIOEc23OCYBguLaZRlZxC916kocYT35ZV9Jsiocs9nk,3334
|
|
447
443
|
wbportfolio/viewsets/configs/display/assets.py,sha256=SkWwzvrn4gOVbCThGJMV63V-iJh517qfUs4f4Wt3dBA,10573
|
|
448
444
|
wbportfolio/viewsets/configs/display/claim.py,sha256=MRtEdxWjsDjt1k6O-ltM-SpPmHWBk85sCycsRgzd9jI,12041
|
|
449
445
|
wbportfolio/viewsets/configs/display/custodians.py,sha256=R-tnktfY48K-8Zz-Fg_M6IXKHv42J1ZeSpom7lvYVS8,801
|
|
450
446
|
wbportfolio/viewsets/configs/display/esg.py,sha256=W8uetCPN2TjHtU2kvQjKOmkq7uoaYvzX2iLN6Nz78Pk,3111
|
|
451
|
-
wbportfolio/viewsets/configs/display/fees.py,sha256=
|
|
447
|
+
wbportfolio/viewsets/configs/display/fees.py,sha256=eTzVWP36l9h5BtGgNPCHjQdwMePqU18-KPYT-szhW9Y,5823
|
|
452
448
|
wbportfolio/viewsets/configs/display/portfolio_cash_flow.py,sha256=CS_UGhKZSXnX-0SZ0RXzbG1WMJm6NX3GUljwIa4RWBk,5025
|
|
453
449
|
wbportfolio/viewsets/configs/display/portfolio_relationship.py,sha256=8DvsYWFCX29qj5wUf1wCtjlPwzKRd_E7JDuo_CopaJ0,1294
|
|
454
450
|
wbportfolio/viewsets/configs/display/portfolios.py,sha256=FDL0wucfqnyehrPg_vJqZ1JJ_1S37C_TAbON165-07w,10660
|
|
@@ -462,14 +458,13 @@ wbportfolio/viewsets/configs/display/registers.py,sha256=1np75exIk5rfct6UkVN_Rnf
|
|
|
462
458
|
wbportfolio/viewsets/configs/display/roles.py,sha256=SFUyCdxSlHZ3NsMrJmpVBSlg-XKGaEFteV89nyLMMAQ,1815
|
|
463
459
|
wbportfolio/viewsets/configs/display/trade_proposals.py,sha256=sRLSUjKlarBhnTwg7tX_Juldor3beswJlyvZfFPvNEk,4315
|
|
464
460
|
wbportfolio/viewsets/configs/display/trades.py,sha256=PbGI8Sjs8YMBLfeYdgXRbv_tvel2aV3dB-7oZXnLwz4,17587
|
|
465
|
-
wbportfolio/viewsets/configs/
|
|
466
|
-
wbportfolio/viewsets/configs/endpoints/__init__.py,sha256=i4co3ypdMIPVN4qyzcxqh4i5oLeOPx3WL2SYpyHix-Y,2903
|
|
461
|
+
wbportfolio/viewsets/configs/endpoints/__init__.py,sha256=KR3AsSxl71VAVkYBRVowgs3PZB8vaKa34WHHUvC-2MY,2807
|
|
467
462
|
wbportfolio/viewsets/configs/endpoints/adjustments.py,sha256=KRZLqv4ZeB27d-_s7Qlqj9LI3I9WFJkjc6Mw8agDueE,606
|
|
468
463
|
wbportfolio/viewsets/configs/endpoints/assets.py,sha256=B8W6ATQQfT292TllE4sUDYv5wHUCo99HEqymJuMtFAc,1909
|
|
469
464
|
wbportfolio/viewsets/configs/endpoints/claim.py,sha256=eslxWx41m2kRJdO1Vk799SrFi5yDRg6zqMTEzve7cKw,3282
|
|
470
465
|
wbportfolio/viewsets/configs/endpoints/custodians.py,sha256=Ve7TxfvFnmvm9x0cx6taO502EVWJb23fdVT9yX3ME5o,194
|
|
471
466
|
wbportfolio/viewsets/configs/endpoints/esg.py,sha256=vJA7f7k25usSec82V_fxkJZJSZszE_QtOV_UR_KDh8Q,202
|
|
472
|
-
wbportfolio/viewsets/configs/endpoints/fees.py,sha256=
|
|
467
|
+
wbportfolio/viewsets/configs/endpoints/fees.py,sha256=WfoUuzcJQ31zgWXOHtGw1jRevibhpV8pFQJMPDmCcJQ,313
|
|
473
468
|
wbportfolio/viewsets/configs/endpoints/portfolio_relationship.py,sha256=pJ6lgtKY1kF-0WDbJT1r_C6OwOhsa1hYn-7HhLgpL7U,568
|
|
474
469
|
wbportfolio/viewsets/configs/endpoints/portfolios.py,sha256=A_da7aunssyu30N9_PW6ZRcpR8bjJOe0fHpQgD-ecKY,1343
|
|
475
470
|
wbportfolio/viewsets/configs/endpoints/positions.py,sha256=jZUY6kjpufBxmVkDMd7HavcarzBXMfJhdSMbbhspTLg,320
|
|
@@ -481,8 +476,7 @@ wbportfolio/viewsets/configs/endpoints/reconciliations.py,sha256=xriq1KSctxQa6AE
|
|
|
481
476
|
wbportfolio/viewsets/configs/endpoints/roles.py,sha256=5Nwi2sdUYc85YL0wJ7SUtt87ZBTOVdFnEexUgVrmcX4,367
|
|
482
477
|
wbportfolio/viewsets/configs/endpoints/trade_proposals.py,sha256=sno7SOHWjKvvF_YdgYx5KthntM--F3DX-9hsrY5vRTM,783
|
|
483
478
|
wbportfolio/viewsets/configs/endpoints/trades.py,sha256=HeTPWgP8Hjx_gYjQLjdZvUAIKa8dvcBRVj_AjPi8IB4,3456
|
|
484
|
-
wbportfolio/viewsets/configs/
|
|
485
|
-
wbportfolio/viewsets/configs/menu/__init__.py,sha256=gzUpv5f8FAK1Bdhn0AhcMLJR3r9RXHRXcHg21vuvGxs,1184
|
|
479
|
+
wbportfolio/viewsets/configs/menu/__init__.py,sha256=3rcUt24ye5Rdzt7bpbvkUqQS6F4uy6iiHjIixPbm16I,1137
|
|
486
480
|
wbportfolio/viewsets/configs/menu/adjustments.py,sha256=sQ25Jp2N8nsLSUOEJTJUBE0Y7bIPHK4Y6LE0e1OzX38,316
|
|
487
481
|
wbportfolio/viewsets/configs/menu/assets.py,sha256=FkddF1_mu01e1mnkJkXPQcE0izI0Q3wU7VBFIkeT-Qw,340
|
|
488
482
|
wbportfolio/viewsets/configs/menu/claim.py,sha256=Q9Gf2spOB_S41ItzAJ7D9ARowxtVrLLBTeA757nXn38,1414
|
|
@@ -499,17 +493,16 @@ wbportfolio/viewsets/configs/menu/reconciliations.py,sha256=AkIu5h2nd5JGteAWTSQF
|
|
|
499
493
|
wbportfolio/viewsets/configs/menu/registers.py,sha256=s4TU9y5nTPWHf8ycWg-cu4mp7LvyXnUwk3PAOG7vyMw,349
|
|
500
494
|
wbportfolio/viewsets/configs/menu/roles.py,sha256=rWS0SQdTgDJ2Hzyt8JdlrUCy1gjLVghzZRH61-mrP9U,642
|
|
501
495
|
wbportfolio/viewsets/configs/menu/trades.py,sha256=Hkvo6Eosk0NLL5V4xk7SLgDRmnjlkjMuoZXWatFARX4,617
|
|
502
|
-
wbportfolio/viewsets/configs/menu/transactions.py,sha256=ErSoDRsyf6PTvOjY9VRvU0cviKNQsN-_adxYR0qwMhw,301
|
|
503
496
|
wbportfolio/viewsets/configs/previews/__init__.py,sha256=hzKMMlZf9hJ-p4WpCN44CzjzNYp1gKiRrGfH181gm2I,47
|
|
504
497
|
wbportfolio/viewsets/configs/previews/portfolios.py,sha256=uAQfvChGcBaVW-oNyXqByjGGMupvW288-2nxpkU41Kw,523
|
|
505
|
-
wbportfolio/viewsets/configs/titles/__init__.py,sha256=
|
|
498
|
+
wbportfolio/viewsets/configs/titles/__init__.py,sha256=VuLOWzuMp-oR_90KFt1lRYdY4VSOnnGkGVgYaDTM-Fk,2163
|
|
506
499
|
wbportfolio/viewsets/configs/titles/adjustments.py,sha256=ZAOkUXa1L4H5iDtoSx2etWSafC1NdYQi9fDq0HP9Tr4,671
|
|
507
500
|
wbportfolio/viewsets/configs/titles/assets.py,sha256=5DamEo8U61XxhQlQW59IhjnBi2PhKRoltmdN_lxy2sI,2176
|
|
508
501
|
wbportfolio/viewsets/configs/titles/assets_and_net_new_money_progression.py,sha256=867LgalhyPetkO6Kltjfy9gr20ab2p15_muXcWGzjfs,199
|
|
509
502
|
wbportfolio/viewsets/configs/titles/claim.py,sha256=hbDzusUnzDdnW5ieuAgilKnozvPlDaJ4S71K4flhzNo,2473
|
|
510
503
|
wbportfolio/viewsets/configs/titles/custodians.py,sha256=nP_MmnVkeYsfrtMb9PNjTdgG8hoME5v7oWJIoyJ3QoA,290
|
|
511
504
|
wbportfolio/viewsets/configs/titles/esg.py,sha256=88nrt0X4XQhvv6TViRcDwvl12oNe_DA8Ijqlatxi7Hs,427
|
|
512
|
-
wbportfolio/viewsets/configs/titles/fees.py,sha256=
|
|
505
|
+
wbportfolio/viewsets/configs/titles/fees.py,sha256=JyuFd15qGFQzSet0VZDIgPpW9fyYWNsi3QLbENC8Zek,567
|
|
513
506
|
wbportfolio/viewsets/configs/titles/instrument_prices.py,sha256=1GTjfpCpqz-VGCHyegQBlBmgDOZVdB5NJrPU3gSvDZo,671
|
|
514
507
|
wbportfolio/viewsets/configs/titles/portfolios.py,sha256=M9zN2C2M7N07N67r4uC5k6cXVWTEihfTAz5e25_mQns,1057
|
|
515
508
|
wbportfolio/viewsets/configs/titles/positions.py,sha256=nHhQ5Sq8AEe3hGUozoMBm83MOVHykSNPrCN-yJknT1A,347
|
|
@@ -519,16 +512,14 @@ wbportfolio/viewsets/configs/titles/products.py,sha256=jKiMTumLrDA68oCqSFO8H-hgb
|
|
|
519
512
|
wbportfolio/viewsets/configs/titles/registers.py,sha256=-C-YeGBhGva48oER6EIQ8CxWnaWyK3QvyISU5jYeHZI,310
|
|
520
513
|
wbportfolio/viewsets/configs/titles/roles.py,sha256=9LoJa3jgenXJ5UWRlIErTzdbjpSWMKsyJZtv-eDRTK4,739
|
|
521
514
|
wbportfolio/viewsets/configs/titles/trades.py,sha256=29XCLxvY0Xe3a2tjCno3tN2rRXCr9RWpbWnzurJfnYI,1986
|
|
522
|
-
wbportfolio/viewsets/
|
|
523
|
-
wbportfolio/viewsets/transactions/__init__.py,sha256=rJOaLqiVCzRW8zqxDC1ZIDQpfhSqT-OcVUPJeiqXATc,1294
|
|
515
|
+
wbportfolio/viewsets/transactions/__init__.py,sha256=U88Mp_ifFUu9VR9nQnN9E3bLJX47c5wM9TKwrVIMDe4,1155
|
|
524
516
|
wbportfolio/viewsets/transactions/claim.py,sha256=Pb1WftoO-w-ZSTbLRhmQubhy7hgd68bjHcjLAa1s6cI,38994
|
|
525
|
-
wbportfolio/viewsets/transactions/fees.py,sha256=
|
|
517
|
+
wbportfolio/viewsets/transactions/fees.py,sha256=WT2bWWfgozz4_rpyTKX7dgBBTXD-gu0nlsd2Nk2Zh1Q,7028
|
|
526
518
|
wbportfolio/viewsets/transactions/mixins.py,sha256=WipvJoi5hylkpD0y9VATe30WAcwIHUIroVkK10FYw7k,636
|
|
527
519
|
wbportfolio/viewsets/transactions/rebalancing.py,sha256=6rIrdK0rtKL1afJ-tYfAGdQVTN2MH1kG_yCeVkmyK8k,1263
|
|
528
|
-
wbportfolio/viewsets/transactions/trade_proposals.py,sha256=
|
|
529
|
-
wbportfolio/viewsets/transactions/trades.py,sha256
|
|
530
|
-
wbportfolio/
|
|
531
|
-
wbportfolio-1.52.
|
|
532
|
-
wbportfolio-1.52.
|
|
533
|
-
wbportfolio-1.52.
|
|
534
|
-
wbportfolio-1.52.0.dist-info/RECORD,,
|
|
520
|
+
wbportfolio/viewsets/transactions/trade_proposals.py,sha256=rCJoJSL11qpjxciX25Q5ZU3ewELyyDBUPXcj4Z88Vdg,6037
|
|
521
|
+
wbportfolio/viewsets/transactions/trades.py,sha256=wCyTTyVKjYuMRsrFcmwD3_yggWxCNm-mdoYzVnhGP0U,21727
|
|
522
|
+
wbportfolio-1.52.2.dist-info/METADATA,sha256=jNax8lH7ZVY-U-PeKFGOA93MdQFgA5en2yO1hcB6CZI,702
|
|
523
|
+
wbportfolio-1.52.2.dist-info/WHEEL,sha256=tkmg4JIqwd9H8mL30xA7crRmoStyCtGp0VWshokd1Jc,105
|
|
524
|
+
wbportfolio-1.52.2.dist-info/licenses/LICENSE,sha256=jvfVH0SY8_YMHlsJHKe_OajiscQDz4lpTlqT6x24sVw,172
|
|
525
|
+
wbportfolio-1.52.2.dist-info/RECORD,,
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
from django.contrib import admin
|
|
2
|
-
|
|
3
|
-
from wbportfolio.models import Transaction
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
@admin.register(Transaction)
|
|
7
|
-
class TransactionModelAdmin(admin.ModelAdmin):
|
|
8
|
-
search_fields = ["portfolio__name", "underlying_instrument__computed_str"]
|
|
9
|
-
list_filter = ("transaction_type", "portfolio")
|
|
10
|
-
list_display = (
|
|
11
|
-
"transaction_type",
|
|
12
|
-
"portfolio",
|
|
13
|
-
"underlying_instrument",
|
|
14
|
-
"transaction_date",
|
|
15
|
-
"currency",
|
|
16
|
-
"currency_fx_rate",
|
|
17
|
-
"total_value",
|
|
18
|
-
"total_value_fx_portfolio",
|
|
19
|
-
"import_source",
|
|
20
|
-
)
|
|
21
|
-
fieldsets = (
|
|
22
|
-
(
|
|
23
|
-
"Transaction Information",
|
|
24
|
-
{
|
|
25
|
-
"fields": (
|
|
26
|
-
("portfolio", "underlying_instrument", "transaction_type", "import_source", "external_id"),
|
|
27
|
-
("transaction_date", "book_date", "value_date"),
|
|
28
|
-
("currency", "currency_fx_rate"),
|
|
29
|
-
("total_value", "total_value_gross"),
|
|
30
|
-
("total_value_fx_portfolio", "total_value_gross_fx_portfolio"),
|
|
31
|
-
"comment",
|
|
32
|
-
)
|
|
33
|
-
},
|
|
34
|
-
),
|
|
35
|
-
)
|
|
36
|
-
autocomplete_fields = ["portfolio", "underlying_instrument", "currency"]
|
|
37
|
-
ordering = ("-transaction_date",)
|
|
38
|
-
raw_id_fields = ["import_source"]
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import random
|
|
2
|
-
from datetime import timedelta
|
|
3
|
-
|
|
4
|
-
import factory
|
|
5
|
-
|
|
6
|
-
from wbportfolio.models import Transaction
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class TransactionFactory(factory.django.DjangoModelFactory):
|
|
10
|
-
class Meta:
|
|
11
|
-
model = Transaction
|
|
12
|
-
|
|
13
|
-
currency_fx_rate = 1.0
|
|
14
|
-
portfolio = factory.SubFactory("wbportfolio.factories.PortfolioFactory")
|
|
15
|
-
underlying_instrument = factory.SubFactory("wbfdm.factories.InstrumentFactory")
|
|
16
|
-
transaction_date = factory.Faker("date_object")
|
|
17
|
-
value_date = factory.LazyAttribute(lambda o: o.transaction_date + timedelta(days=1))
|
|
18
|
-
currency = factory.SubFactory("wbcore.contrib.currency.factories.CurrencyFactory")
|
|
19
|
-
total_value = factory.LazyAttribute(lambda o: random.randint(1, 1000))
|
|
20
|
-
total_value_fx_portfolio = factory.LazyAttribute(lambda o: o.currency_fx_rate * o.total_value)
|
|
21
|
-
total_value_gross = factory.LazyAttribute(lambda o: random.randint(1, 1000))
|
|
22
|
-
total_value_gross_fx_portfolio = factory.LazyAttribute(lambda o: o.currency_fx_rate * o.total_value_gross)
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
from datetime import date, timedelta
|
|
2
|
-
|
|
3
|
-
from psycopg.types.range import DateRange
|
|
4
|
-
from wbcore import filters as wb_filters
|
|
5
|
-
|
|
6
|
-
from wbportfolio.models import Fees, Portfolio, Trade, Transaction
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
def get_transaction_gte_default(field, request, view):
|
|
10
|
-
filter_date = date.today() - timedelta(days=90)
|
|
11
|
-
qs = Transaction.objects.none()
|
|
12
|
-
if "instrument_id" in view.kwargs:
|
|
13
|
-
qs = Transaction.objects.filter(underlying_instrument__id=view.kwargs["instrument_id"])
|
|
14
|
-
elif "portfolio_id" in view.kwargs:
|
|
15
|
-
qs = Transaction.objects.filter(portfolio__id=view.kwargs["portfolio_id"])
|
|
16
|
-
if qs.exists():
|
|
17
|
-
filter_date = qs.earliest("transaction_date").transaction_date
|
|
18
|
-
return filter_date
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
def get_transaction_underlying_type_choices(*args):
|
|
22
|
-
models = [Fees, Trade]
|
|
23
|
-
choices = []
|
|
24
|
-
for model in models:
|
|
25
|
-
for choice in model.Type.choices:
|
|
26
|
-
choices.append(choice)
|
|
27
|
-
return choices
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
def get_transaction_lte_default(field, request, view):
|
|
31
|
-
filter_date = date.today() + timedelta(days=7)
|
|
32
|
-
qs = Transaction.objects.none()
|
|
33
|
-
if "instrument_id" in view.kwargs:
|
|
34
|
-
qs = Transaction.objects.filter(underlying_instrument__id=view.kwargs["instrument_id"])
|
|
35
|
-
elif "portfolio_id" in view.kwargs:
|
|
36
|
-
qs = Transaction.objects.filter(portfolio__id=view.kwargs["portfolio_id"])
|
|
37
|
-
if qs.exists():
|
|
38
|
-
filter_date = qs.latest("transaction_date").transaction_date
|
|
39
|
-
return filter_date
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
def get_transaction_default_date_range(*args, **kwargs):
|
|
43
|
-
return DateRange(get_transaction_gte_default(*args, **kwargs), get_transaction_lte_default(*args, **kwargs))
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
class TransactionFilterSet(wb_filters.FilterSet):
|
|
47
|
-
transaction_date = wb_filters.DateRangeFilter(
|
|
48
|
-
method=wb_filters.DateRangeFilter.base_date_range_filter_method,
|
|
49
|
-
label="Date Range",
|
|
50
|
-
initial=get_transaction_default_date_range,
|
|
51
|
-
)
|
|
52
|
-
|
|
53
|
-
portfolio = wb_filters.ModelChoiceFilter(
|
|
54
|
-
label="Portfolio",
|
|
55
|
-
queryset=Portfolio.objects.all(),
|
|
56
|
-
endpoint=Portfolio.get_representation_endpoint(),
|
|
57
|
-
value_key=Portfolio.get_representation_value_key(),
|
|
58
|
-
label_key=Portfolio.get_representation_label_key(),
|
|
59
|
-
)
|
|
60
|
-
total_value_usd__gte = wb_filters.NumberFilter(
|
|
61
|
-
lookup_expr="gte", field_name="total_value_usd", label="Total Value ($)"
|
|
62
|
-
)
|
|
63
|
-
total_value_usd__lte = wb_filters.NumberFilter(
|
|
64
|
-
lookup_expr="lte",
|
|
65
|
-
label="Total Value ($)",
|
|
66
|
-
field_name="total_value_usd",
|
|
67
|
-
)
|
|
68
|
-
|
|
69
|
-
transaction_underlying_type = wb_filters.ChoiceFilter(
|
|
70
|
-
label="Underlying Type",
|
|
71
|
-
choices=get_transaction_underlying_type_choices(),
|
|
72
|
-
method="filter_transaction_underlying_type",
|
|
73
|
-
)
|
|
74
|
-
|
|
75
|
-
def filter_transaction_underlying_type(self, queryset, name, value):
|
|
76
|
-
if value:
|
|
77
|
-
queryset = queryset.filter(transaction_underlying_type=value)
|
|
78
|
-
return queryset
|
|
79
|
-
|
|
80
|
-
class Meta:
|
|
81
|
-
model = Transaction
|
|
82
|
-
fields = {
|
|
83
|
-
"transaction_type": ["exact"],
|
|
84
|
-
"underlying_instrument": ["exact"],
|
|
85
|
-
"currency": ["exact"],
|
|
86
|
-
"total_value": ["gte", "exact", "lte"],
|
|
87
|
-
"total_value_fx_portfolio": ["gte", "exact", "lte"],
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
class TransactionPortfolioFilterSet(TransactionFilterSet):
|
|
92
|
-
portfolio = transaction_date__gte = transaction_date__lte = None
|
|
93
|
-
transaction_date = wb_filters.DateFilter(
|
|
94
|
-
label="Transaction Date",
|
|
95
|
-
lookup_expr="exact",
|
|
96
|
-
field_name="transaction_date",
|
|
97
|
-
initial=get_transaction_lte_default,
|
|
98
|
-
required=True,
|
|
99
|
-
)
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
from wbportfolio.models import Expiry
|
|
2
|
-
|
|
3
|
-
from .transactions import (
|
|
4
|
-
TransactionModelSerializer,
|
|
5
|
-
TransactionRepresentationSerializer,
|
|
6
|
-
)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class ExpiryRepresentationSerializer(TransactionRepresentationSerializer):
|
|
10
|
-
class Meta:
|
|
11
|
-
model = Expiry
|
|
12
|
-
fields = TransactionRepresentationSerializer.Meta.fields
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class ExpiryModelSerializer(TransactionModelSerializer):
|
|
16
|
-
class Meta:
|
|
17
|
-
model = Expiry
|
|
18
|
-
fields = TransactionModelSerializer.Meta.fields
|