prediction-market-agent-tooling 0.61.1.dev486__py3-none-any.whl → 0.61.1.dev488__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.
- prediction_market_agent_tooling/markets/seer/price_manager.py +12 -10
- prediction_market_agent_tooling/markets/seer/seer_subgraph_handler.py +1 -1
- {prediction_market_agent_tooling-0.61.1.dev486.dist-info → prediction_market_agent_tooling-0.61.1.dev488.dist-info}/METADATA +1 -1
- {prediction_market_agent_tooling-0.61.1.dev486.dist-info → prediction_market_agent_tooling-0.61.1.dev488.dist-info}/RECORD +7 -7
- {prediction_market_agent_tooling-0.61.1.dev486.dist-info → prediction_market_agent_tooling-0.61.1.dev488.dist-info}/LICENSE +0 -0
- {prediction_market_agent_tooling-0.61.1.dev486.dist-info → prediction_market_agent_tooling-0.61.1.dev488.dist-info}/WHEEL +0 -0
- {prediction_market_agent_tooling-0.61.1.dev486.dist-info → prediction_market_agent_tooling-0.61.1.dev488.dist-info}/entry_points.txt +0 -0
@@ -1,3 +1,5 @@
|
|
1
|
+
from functools import lru_cache
|
2
|
+
|
1
3
|
from web3 import Web3
|
2
4
|
|
3
5
|
from prediction_market_agent_tooling.gtypes import ChecksumAddress, xdai_type
|
@@ -11,9 +13,6 @@ from prediction_market_agent_tooling.markets.seer.seer_subgraph_handler import (
|
|
11
13
|
SeerSubgraphHandler,
|
12
14
|
)
|
13
15
|
from prediction_market_agent_tooling.markets.seer.subgraph_data_models import SeerPool
|
14
|
-
from prediction_market_agent_tooling.tools.caches.inmemory_cache import (
|
15
|
-
persistent_inmemory_cache,
|
16
|
-
)
|
17
16
|
from prediction_market_agent_tooling.tools.cow.cow_manager import CowManager
|
18
17
|
from prediction_market_agent_tooling.tools.web3_utils import xdai_to_wei
|
19
18
|
|
@@ -51,7 +50,7 @@ class PriceManager:
|
|
51
50
|
price_yes = price_yes / sum(price_data.values())
|
52
51
|
return Probability(price_yes)
|
53
52
|
|
54
|
-
@
|
53
|
+
@lru_cache(typed=True)
|
55
54
|
def get_price_for_token(
|
56
55
|
self,
|
57
56
|
token: ChecksumAddress,
|
@@ -87,23 +86,26 @@ class PriceManager:
|
|
87
86
|
return 0
|
88
87
|
# Check if other token is market's collateral (sanity check).
|
89
88
|
|
90
|
-
|
89
|
+
# Collateral is the other token in the pair
|
90
|
+
collateral_address = Web3.to_checksum_address(
|
91
91
|
pool.token0.id
|
92
|
-
if self._pool_token0_matches_token(token=token, pool=pool)
|
92
|
+
if not self._pool_token0_matches_token(token=token, pool=pool)
|
93
93
|
else pool.token1.id
|
94
94
|
)
|
95
95
|
if (
|
96
|
-
collateral_address
|
97
|
-
!= self.seer_market.collateral_token_contract_address_checksummed
|
96
|
+
collateral_address
|
97
|
+
!= self.seer_market.collateral_token_contract_address_checksummed
|
98
98
|
):
|
99
99
|
logger.warning(
|
100
100
|
f"Pool {pool.id.hex()} has collateral mismatch with market. Collateral from pool {collateral_address.hex()}, collateral from market {self.seer_market.collateral_token_contract_address_checksummed}, returning 0."
|
101
101
|
)
|
102
102
|
return 0
|
103
103
|
|
104
|
+
# The mapping below is odd but surprisingly the Algebra subgraph delivers the token1Price
|
105
|
+
# for the token0 and the token0Price for the token1 pool.
|
104
106
|
price_in_collateral_units = (
|
105
|
-
pool.
|
107
|
+
pool.token1Price
|
106
108
|
if self._pool_token0_matches_token(token=token, pool=pool)
|
107
|
-
else pool.
|
109
|
+
else pool.token0Price
|
108
110
|
)
|
109
111
|
return price_in_collateral_units
|
@@ -193,7 +193,7 @@ class SeerSubgraphHandler(BaseSubgraphHandler):
|
|
193
193
|
return binary_markets
|
194
194
|
|
195
195
|
def get_market_by_id(self, market_id: HexBytes) -> SeerMarket:
|
196
|
-
markets_field = self.seer_subgraph.Query.
|
196
|
+
markets_field = self.seer_subgraph.Query.market(id=market_id.hex().lower())
|
197
197
|
fields = self._get_fields_for_markets(markets_field)
|
198
198
|
markets = self.do_query(fields=fields, pydantic_model=SeerMarket)
|
199
199
|
if len(markets) != 1:
|
@@ -62,10 +62,10 @@ prediction_market_agent_tooling/markets/polymarket/data_models_web.py,sha256=VZh
|
|
62
62
|
prediction_market_agent_tooling/markets/polymarket/polymarket.py,sha256=NRoZK71PtH8kkangMqme7twcAXhRJSSabbmOir-UnAI,3418
|
63
63
|
prediction_market_agent_tooling/markets/polymarket/utils.py,sha256=8kTeVjXPcXC6DkDvWYsZQLY7x8DS6CEp_yznSEazsNU,2037
|
64
64
|
prediction_market_agent_tooling/markets/seer/data_models.py,sha256=ECuCDqRcs9vB9rKIec399HxsL915oT7VGSwztcMfGIw,5347
|
65
|
-
prediction_market_agent_tooling/markets/seer/price_manager.py,sha256=
|
65
|
+
prediction_market_agent_tooling/markets/seer/price_manager.py,sha256=pvgf28YEs3GiM6RYgkemHcFO55NURht7uSbRHyXnPIM,4536
|
66
66
|
prediction_market_agent_tooling/markets/seer/seer.py,sha256=kBF7ALzlh0HsAgbdTa3A9XayyXrddtgi-dMWquLZX8Y,14365
|
67
67
|
prediction_market_agent_tooling/markets/seer/seer_contracts.py,sha256=TXGDbv7CI08X8N5re1SAm-X_BaXj8m4ceyzkS_ktQok,2739
|
68
|
-
prediction_market_agent_tooling/markets/seer/seer_subgraph_handler.py,sha256=
|
68
|
+
prediction_market_agent_tooling/markets/seer/seer_subgraph_handler.py,sha256=R4aKMZQEE9ocMqr9r4lX4so1h-HrJd2H79ElNzXXIZM,9042
|
69
69
|
prediction_market_agent_tooling/markets/seer/subgraph_data_models.py,sha256=RIt2oO-PbykzbYN11Qltt8tjjYTty-PfjH3Q4D2VEoA,1644
|
70
70
|
prediction_market_agent_tooling/monitor/financial_metrics/financial_metrics.py,sha256=fjIgjDIx5MhH5mwf7S0cspLOOSU3elYLhGYoIiM26mU,2746
|
71
71
|
prediction_market_agent_tooling/monitor/markets/manifold.py,sha256=TS4ERwTfQnot8dhekNyVNhJYf5ysYsjF-9v5_kM3aVI,3334
|
@@ -119,8 +119,8 @@ prediction_market_agent_tooling/tools/tokens/main_token.py,sha256=7JPgVF4RbiFzLD
|
|
119
119
|
prediction_market_agent_tooling/tools/transaction_cache.py,sha256=K5YKNL2_tR10Iw2TD9fuP-CTGpBbZtNdgbd0B_R7pjg,1814
|
120
120
|
prediction_market_agent_tooling/tools/utils.py,sha256=jLG4nbEoIzzJiZ4RgMx4Q969Zdl0p0s63p8uET_0Fuw,6440
|
121
121
|
prediction_market_agent_tooling/tools/web3_utils.py,sha256=3wfqNxvMn44ivweFRoeKNVb9QRtFd7kFtp7VUY5juEE,12862
|
122
|
-
prediction_market_agent_tooling-0.61.1.
|
123
|
-
prediction_market_agent_tooling-0.61.1.
|
124
|
-
prediction_market_agent_tooling-0.61.1.
|
125
|
-
prediction_market_agent_tooling-0.61.1.
|
126
|
-
prediction_market_agent_tooling-0.61.1.
|
122
|
+
prediction_market_agent_tooling-0.61.1.dev488.dist-info/LICENSE,sha256=6or154nLLU6bELzjh0mCreFjt0m2v72zLi3yHE0QbeE,7650
|
123
|
+
prediction_market_agent_tooling-0.61.1.dev488.dist-info/METADATA,sha256=e-_9HlJ3jZ-UY2uOqt1L_ma4zX4x7HdadBvrJqQcreE,8636
|
124
|
+
prediction_market_agent_tooling-0.61.1.dev488.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
|
125
|
+
prediction_market_agent_tooling-0.61.1.dev488.dist-info/entry_points.txt,sha256=m8PukHbeH5g0IAAmOf_1Ahm-sGAMdhSSRQmwtpmi2s8,81
|
126
|
+
prediction_market_agent_tooling-0.61.1.dev488.dist-info/RECORD,,
|
File without changes
|
File without changes
|