proof-of-portfolio 0.0.91__py3-none-any.whl → 0.0.93__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.
- proof_of_portfolio/_version.py +1 -1
- proof_of_portfolio/circuits/components/src/core/calmar.nr +2 -1
- proof_of_portfolio/circuits/components/src/core/sortino.nr +51 -13
- proof_of_portfolio/circuits/components/src/utils/risk_normalization.nr +5 -8
- proof_of_portfolio/circuits/components/src/utils/variance.nr +1 -5
- proof_of_portfolio/circuits/components/src/utils/weighting_distribution.nr +1 -1
- proof_of_portfolio/circuits/src/main.nr +2 -1
- proof_of_portfolio/circuits/target/circuits.json +1 -1
- proof_of_portfolio/circuits/vk/vk +0 -0
- proof_of_portfolio/proof_generator.py +8 -2
- {proof_of_portfolio-0.0.91.dist-info → proof_of_portfolio-0.0.93.dist-info}/METADATA +1 -1
- {proof_of_portfolio-0.0.91.dist-info → proof_of_portfolio-0.0.93.dist-info}/RECORD +15 -15
- {proof_of_portfolio-0.0.91.dist-info → proof_of_portfolio-0.0.93.dist-info}/WHEEL +0 -0
- {proof_of_portfolio-0.0.91.dist-info → proof_of_portfolio-0.0.93.dist-info}/entry_points.txt +0 -0
- {proof_of_portfolio-0.0.91.dist-info → proof_of_portfolio-0.0.93.dist-info}/top_level.txt +0 -0
Binary file
|
@@ -247,6 +247,11 @@ def generate_proof(
|
|
247
247
|
# Pad to MAX_DAYS
|
248
248
|
scaled_log_returns += [0] * (MAX_DAYS - len(scaled_log_returns))
|
249
249
|
|
250
|
+
weights_float = data.get("weights", [])
|
251
|
+
|
252
|
+
scaled_weights = [int(w * SCALING_FACTOR) for w in weights_float]
|
253
|
+
scaled_weights += [0] * (256 - len(scaled_weights))
|
254
|
+
|
250
255
|
log_verbose(verbose, "info", f"Using {n_returns} daily returns from PTN")
|
251
256
|
try:
|
252
257
|
all_orders = []
|
@@ -408,7 +413,8 @@ def generate_proof(
|
|
408
413
|
else str(signals_merkle_root)
|
409
414
|
),
|
410
415
|
"risk_free_rate": str(risk_free_rate_scaled),
|
411
|
-
"use_weighting":
|
416
|
+
"use_weighting": "1",
|
417
|
+
"weights": [str(w) for w in scaled_weights],
|
412
418
|
"bypass_confidence": str(int(bypass_confidence)),
|
413
419
|
"account_size": str(account_size if account_size is not None else 1000000),
|
414
420
|
}
|
@@ -555,7 +561,7 @@ def generate_proof(
|
|
555
561
|
"sharpe_ratio_scaled": sharpe_ratio_scaled,
|
556
562
|
"max_drawdown_raw": max_drawdown_raw,
|
557
563
|
"max_drawdown_scaled": max_drawdown_scaled,
|
558
|
-
"max_drawdown_percentage":
|
564
|
+
"max_drawdown_percentage": max_drawdown_scaled * 100,
|
559
565
|
"calmar_ratio_raw": calmar_ratio_raw,
|
560
566
|
"calmar_ratio_scaled": calmar_ratio_scaled,
|
561
567
|
"omega_ratio_raw": omega_ratio_raw,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: proof-of-portfolio
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.93
|
4
4
|
Summary: Zero-Knowledge Proof framework for verifiable, private portfolio performance metrics
|
5
5
|
Author-email: "Inference Labs, Inc." <info@inferencelabs.com>
|
6
6
|
Requires-Python: >=3.10
|
@@ -1,19 +1,19 @@
|
|
1
1
|
proof_of_portfolio/__init__.py,sha256=gqM3xkqAO2az6Rhgez0qIREUzZqB3DZYV4IIQHdpwMA,4845
|
2
|
-
proof_of_portfolio/_version.py,sha256=
|
2
|
+
proof_of_portfolio/_version.py,sha256=Khk44GKb8nlDYs7jlEjxgE5vyhl_u32fK-BW7iQ9mrg,66
|
3
3
|
proof_of_portfolio/analyze_data.py,sha256=t80ueFtBUzcWTrPiamiC1HXvw5Em-151zXJx0cCk8sQ,3709
|
4
4
|
proof_of_portfolio/main.py,sha256=JbvdAK7B6hw2sQdjT0EVCiglCQZgN3urKphdeWcW43w,30994
|
5
5
|
proof_of_portfolio/min_metrics.py,sha256=U16B7YRl0UbCterdJ1ksqFOxR5DiQeslUzMVGEWNyog,13211
|
6
6
|
proof_of_portfolio/miner.py,sha256=eGXcPMRQVAepzXJj1ePbbDAf-72E9Yj9n-yfP7GohLw,17177
|
7
7
|
proof_of_portfolio/parsing_utils.py,sha256=Hx61Sby5mEbC6uzhG9G69K7YPCLbjU6vK8fazpNBeLc,6463
|
8
8
|
proof_of_portfolio/post_install.py,sha256=e-57Z_h-svQdjA8ibsM985MXmdV6-KLyymQm3Cgu8YM,5654
|
9
|
-
proof_of_portfolio/proof_generator.py,sha256=
|
9
|
+
proof_of_portfolio/proof_generator.py,sha256=kjTgBqDx-yrcmrVHRtBf4NJcFv7AH_k0Ywn-g6cQ3CI,21409
|
10
10
|
proof_of_portfolio/signal_processor.py,sha256=JQjnkMJEbv_MWIgKNrjKjrBIcIT5pAkAlCneEOGsqT0,6702
|
11
11
|
proof_of_portfolio/validator.py,sha256=kt3BeaXOffv-h52PZBKV1YHUWtiGsnPte16m3EJpITY,3839
|
12
12
|
proof_of_portfolio/circuits/Nargo.toml,sha256=D6ycN7H3xiTcWHH5wz4qXYTXn7Ht0WgPr9w4B7d8ZGw,141
|
13
13
|
proof_of_portfolio/circuits/generate_inputs.py,sha256=n9coxeNvOqXj_PleAPlP9reXUbWKUJRDAgxxxGfYZQk,10060
|
14
14
|
proof_of_portfolio/circuits/components/Nargo.toml,sha256=jFQJR9rg6zSNDgJF_yfaXc7-rdIhLO0ucr_pgkgEvaE,76
|
15
15
|
proof_of_portfolio/circuits/components/src/lib.nr,sha256=qTvVLqAAL73jtA3ZniTDUyn8RpniM3jqMiGI0RsuXSM,29
|
16
|
-
proof_of_portfolio/circuits/components/src/core/calmar.nr,sha256=
|
16
|
+
proof_of_portfolio/circuits/components/src/core/calmar.nr,sha256=1zGu1rVQT7D6D_AvaotP_yknAf-5jE1roqn0bRAHI7o,3329
|
17
17
|
proof_of_portfolio/circuits/components/src/core/drawdown.nr,sha256=DqfLbUaR_y_ZBOF1a2-tlxaDJJ6fE6cauToBbXFyKt8,2703
|
18
18
|
proof_of_portfolio/circuits/components/src/core/merkle.nr,sha256=NcrN92Pye5cxACrAWkPRm1RTSaczqRyku3da6qaJ700,3139
|
19
19
|
proof_of_portfolio/circuits/components/src/core/mod.nr,sha256=5YDicBPqTr4fLaS_rYuMnJ3PDJpakgpyzPzARIYZ3F4,132
|
@@ -21,20 +21,20 @@ proof_of_portfolio/circuits/components/src/core/omega.nr,sha256=gM_xhhY6p_vBdFMp
|
|
21
21
|
proof_of_portfolio/circuits/components/src/core/pnl_score.nr,sha256=cMfWt2fg2l0dP7aakq7OdjkNbkwdtv6JXz6HBO1I2vk,2481
|
22
22
|
proof_of_portfolio/circuits/components/src/core/position.nr,sha256=KTnq0YhNrwX_0cppEVwRxAN0FMyfStnQ8_dV0Cir8xY,6196
|
23
23
|
proof_of_portfolio/circuits/components/src/core/sharpe.nr,sha256=3ec3aPczoC56cW3reSAjog9L7IuPK5YAnztMlz756oA,2446
|
24
|
-
proof_of_portfolio/circuits/components/src/core/sortino.nr,sha256=
|
24
|
+
proof_of_portfolio/circuits/components/src/core/sortino.nr,sha256=Oe-DnraOTbj2r8vupPnPdAWaEl_FvAn4z-bBgYVhNKs,5597
|
25
25
|
proof_of_portfolio/circuits/components/src/core/tstat.nr,sha256=SLL2UnyfeVUN3NdJHVoIdbPPxUUER7DWKYfbPxmHceo,3303
|
26
26
|
proof_of_portfolio/circuits/components/src/utils/ann_excess_return.nr,sha256=5xryh8HMMA2oHs039_usGHMKPcRoJpl19ZPmPKfDiYQ,1892
|
27
27
|
proof_of_portfolio/circuits/components/src/utils/ann_volatility.nr,sha256=XTQhYuqwj5R8OhDklgyCUVwkW2_L0aThVQerk45fAdk,2118
|
28
28
|
proof_of_portfolio/circuits/components/src/utils/average.nr,sha256=L6YGvEcwOvOd-c5vMHN_fItGweLyGXaRNOHlevn5mJ4,2246
|
29
29
|
proof_of_portfolio/circuits/components/src/utils/constants.nr,sha256=0sjT1oX9SBbAhzfbJNG9I-7atJcr21s0_G4_74zI2UE,1945
|
30
30
|
proof_of_portfolio/circuits/components/src/utils/mod.nr,sha256=9MpTXbbCd6P6vnWKveEpwYntO3BQTaV_GZb9hgt7JBI,179
|
31
|
-
proof_of_portfolio/circuits/components/src/utils/risk_normalization.nr,sha256=
|
31
|
+
proof_of_portfolio/circuits/components/src/utils/risk_normalization.nr,sha256=PXhs3grwz7e3nWqV3zQGYstAYqrG_csfyx4yur4HFfc,1248
|
32
32
|
proof_of_portfolio/circuits/components/src/utils/sqrt.nr,sha256=pkCqXr4cBgfb49fzi_N6JypD31GlNYuMdMUoVssVzFQ,2318
|
33
|
-
proof_of_portfolio/circuits/components/src/utils/variance.nr,sha256=
|
34
|
-
proof_of_portfolio/circuits/components/src/utils/weighting_distribution.nr,sha256=
|
35
|
-
proof_of_portfolio/circuits/src/main.nr,sha256=
|
36
|
-
proof_of_portfolio/circuits/target/circuits.json,sha256=
|
37
|
-
proof_of_portfolio/circuits/vk/vk,sha256=
|
33
|
+
proof_of_portfolio/circuits/components/src/utils/variance.nr,sha256=dzVn-idUSV4uykOlH4td9UUnui_OFfbVm9ZtE4BnSK8,2895
|
34
|
+
proof_of_portfolio/circuits/components/src/utils/weighting_distribution.nr,sha256=ZTdpYmVLI639j-RUtKhluTIVb_sLVxerQdRDoB2zYFQ,1185
|
35
|
+
proof_of_portfolio/circuits/src/main.nr,sha256=bBgELjrDTIydF-wArJidH5NEFYyHggUdc93o31KlfrE,5412
|
36
|
+
proof_of_portfolio/circuits/target/circuits.json,sha256=cGXxkrsa7TuvByXOQ-0r69uFcToDgsL6xIr7rKmsqns,12707295
|
37
|
+
proof_of_portfolio/circuits/vk/vk,sha256=beja0IV7ROmA9kq_y6i52OxSygf7EYOJ5acS2llmQWE,1764
|
38
38
|
proof_of_portfolio/demo/just_calmar/Nargo.toml,sha256=wJ7j03ThqHr4N_jk4ifjvGzAnhnO0CrSouNHdo6pIl8,77
|
39
39
|
proof_of_portfolio/demo/just_calmar/src/main.nr,sha256=xLzzAwAJf-q43IKvChhf08qcmb1BhDP4sVT6bOsSBRs,5351
|
40
40
|
proof_of_portfolio/demo/just_calmar/target/just_calmar.json,sha256=s_7h0ZLMUM3NURBaEtDxrkbgWlVSBkpa7CLPiLYLhk8,1820536
|
@@ -78,8 +78,8 @@ proof_of_portfolio/tree_generator/Nargo.toml,sha256=O6iSvb-EpV0XcETiDxNgSp7XKNiY
|
|
78
78
|
proof_of_portfolio/tree_generator/target.gz,sha256=J55ZC5QuFy6vGC2dSJ-0rEWjUKzzxwXwKGDTDUGp06U,225314
|
79
79
|
proof_of_portfolio/tree_generator/src/main.nr,sha256=5Jb46e5PyZ3kpmIJn4W1gVtN3AgHs-fCmTochVB7uOU,2427
|
80
80
|
proof_of_portfolio/tree_generator/target/tree_generator.json,sha256=Uy9AFLrbsd2SayMFTPgmow91-BIs1DrqP3qGfxfZAa0,1540901
|
81
|
-
proof_of_portfolio-0.0.
|
82
|
-
proof_of_portfolio-0.0.
|
83
|
-
proof_of_portfolio-0.0.
|
84
|
-
proof_of_portfolio-0.0.
|
85
|
-
proof_of_portfolio-0.0.
|
81
|
+
proof_of_portfolio-0.0.93.dist-info/METADATA,sha256=KKlLRoFK9gH_2Z2UHss_eM_RUayhUyuPXEyAhTkmo0w,7076
|
82
|
+
proof_of_portfolio-0.0.93.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
83
|
+
proof_of_portfolio-0.0.93.dist-info/entry_points.txt,sha256=KeLSJT_UJtr1WiLTkhlGqWQuPKbO_ylgj6OXOC2gJV4,53
|
84
|
+
proof_of_portfolio-0.0.93.dist-info/top_level.txt,sha256=sY5xZnE6YuiISK1IuRHPfl71NV0vXO3N3YA2li_SPXU,19
|
85
|
+
proof_of_portfolio-0.0.93.dist-info/RECORD,,
|
File without changes
|
{proof_of_portfolio-0.0.91.dist-info → proof_of_portfolio-0.0.93.dist-info}/entry_points.txt
RENAMED
File without changes
|
File without changes
|