prediction-market-agent-tooling 0.69.3__tar.gz → 0.69.4__tar.gz
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-0.69.3 → prediction_market_agent_tooling-0.69.4}/PKG-INFO +1 -1
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/data_models.py +0 -7
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/seer.py +16 -15
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/seer_contracts.py +26 -4
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/contract.py +19 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/pyproject.toml +1 -1
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/LICENSE +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/README.md +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/agentresultmapping.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/debuggingcontract.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/depositablewrapper_erc20.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/erc1155.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/erc20.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/erc4626.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/erc721.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/gvp2_settlement.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_dxdao.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_fpmm.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_fpmm_conditionaltokens.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_fpmm_factory.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_kleros.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_oracle.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_realitio.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/omen_thumbnailmapping.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/ownable.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/ownable_erc721.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/proxy.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/seer_gnosis_router.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/seer_market_factory.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/abis/swapr_router.abi.json +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/benchmark/__init__.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/benchmark/agents.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/benchmark/benchmark.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/benchmark/utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/chains.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/config.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/data_download/langfuse_data_downloader.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/agent.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/agent_example.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/betting_strategy.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/constants.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/gcp/deploy.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/gcp/kubernetes_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/gcp/utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/deploy/trade_interval.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/gtypes.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/jobs/__init__.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/jobs/jobs_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/jobs/omen/omen_jobs.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/loggers.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/logprobs_parser.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/agent_market.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/base_subgraph_handler.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/blockchain_utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/categorize.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/manifold/__init__.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/manifold/api.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/manifold/data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/manifold/manifold.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/manifold/utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/market_fees.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/markets.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/metaculus/api.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/metaculus/data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/metaculus/metaculus.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/__init__.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/cow_contracts.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/omen.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/omen_constants.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/omen_contracts.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/omen_resolving.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/omen/omen_subgraph_handler.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/api.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/clob_manager.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/constants.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/polymarket.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/polymarket_contracts.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/polymarket_subgraph_handler.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/polymarket/utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/exceptions.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/price_manager.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/seer_api.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/seer_subgraph_handler.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/subgraph_data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/markets/seer/swap_pool_handler.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/py.typed +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/_generic_value.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/balances.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/betting_strategies/kelly_criterion.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/betting_strategies/stretch_bet_between.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/betting_strategies/utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/caches/db_cache.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/caches/inmemory_cache.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/caches/serializers.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/costs.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/cow/cow_order.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/cow/models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/cow/semaphore.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/custom_exceptions.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/datetime_utc.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/db/db_manager.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/google_utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/hexbytes_custom.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/httpx_cached_client.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/image_gen/image_gen.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/image_gen/market_thumbnail_gen.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/ipfs/ipfs_handler.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/is_invalid.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/is_predictable.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/langfuse_.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/langfuse_client_utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/omen/reality_accuracy.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/omen/sell_positions.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/parallelism.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/perplexity/perplexity_client.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/perplexity/perplexity_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/perplexity/perplexity_search.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/relevant_news_analysis/data_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/relevant_news_analysis/relevant_news_analysis.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/relevant_news_analysis/relevant_news_cache.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/rephrase.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/safe.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/singleton.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/streamlit_user_login.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tavily/tavily_models.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tavily/tavily_search.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tokens/auto_deposit.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tokens/auto_withdraw.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tokens/main_token.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tokens/slippage.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tokens/token_utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/tokens/usd.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/transaction_cache.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/utils.py +0 -0
- {prediction_market_agent_tooling-0.69.3 → prediction_market_agent_tooling-0.69.4}/prediction_market_agent_tooling/tools/web3_utils.py +0 -0
@@ -163,13 +163,6 @@ class SeerMarketWithQuestions(SeerMarket):
|
|
163
163
|
questions: list[SeerMarketQuestions]
|
164
164
|
|
165
165
|
|
166
|
-
class RedeemParams(BaseModel):
|
167
|
-
model_config = ConfigDict(populate_by_name=True)
|
168
|
-
market: ChecksumAddress
|
169
|
-
outcome_indices: list[int] = Field(alias="outcomeIndexes")
|
170
|
-
amounts: list[OutcomeWei]
|
171
|
-
|
172
|
-
|
173
166
|
class ExactInputSingleParams(BaseModel):
|
174
167
|
# from https://gnosisscan.io/address/0xffb643e73f280b97809a8b41f7232ab401a04ee1#code
|
175
168
|
model_config = ConfigDict(populate_by_name=True)
|
@@ -49,7 +49,6 @@ from prediction_market_agent_tooling.markets.omen.omen_contracts import (
|
|
49
49
|
SeerAgentResultMappingContract,
|
50
50
|
)
|
51
51
|
from prediction_market_agent_tooling.markets.seer.data_models import (
|
52
|
-
RedeemParams,
|
53
52
|
SeerMarket,
|
54
53
|
SeerMarketWithQuestions,
|
55
54
|
)
|
@@ -83,6 +82,7 @@ from prediction_market_agent_tooling.tools.cow.cow_order import (
|
|
83
82
|
OrderStatusError,
|
84
83
|
get_orders_by_owner,
|
85
84
|
get_trades_by_order_uid,
|
85
|
+
handle_allowance,
|
86
86
|
swap_tokens_waiting,
|
87
87
|
wait_for_order_completion,
|
88
88
|
)
|
@@ -279,6 +279,7 @@ class SeerAgentMarket(AgentMarket):
|
|
279
279
|
"""
|
280
280
|
We filter the markets using previous trades by the user so that we don't have to process all Seer markets.
|
281
281
|
"""
|
282
|
+
|
282
283
|
trades_by_user = get_seer_transactions(
|
283
284
|
api_keys.bet_from_address, RPCConfig().CHAIN_ID
|
284
285
|
)
|
@@ -299,10 +300,12 @@ class SeerAgentMarket(AgentMarket):
|
|
299
300
|
return filtered_markets
|
300
301
|
|
301
302
|
@staticmethod
|
302
|
-
def redeem_winnings(api_keys: APIKeys) -> None:
|
303
|
-
web3 = RPCConfig().get_web3()
|
303
|
+
def redeem_winnings(api_keys: APIKeys, web3: Web3 | None = None) -> None:
|
304
|
+
web3 = web3 or RPCConfig().get_web3()
|
304
305
|
subgraph = SeerSubgraphHandler()
|
305
306
|
|
307
|
+
# ToDo - Find open positions by user directly
|
308
|
+
|
306
309
|
closed_markets = subgraph.get_markets(
|
307
310
|
filter_by=FilterBy.RESOLVED, sort_by=SortBy.NEWEST
|
308
311
|
)
|
@@ -311,8 +314,8 @@ class SeerAgentMarket(AgentMarket):
|
|
311
314
|
)
|
312
315
|
|
313
316
|
market_balances = {
|
314
|
-
market.id:
|
315
|
-
api_keys.bet_from_address, web3
|
317
|
+
market.id: list(
|
318
|
+
market.get_outcome_token_balances(api_keys.bet_from_address, web3)
|
316
319
|
)
|
317
320
|
for market in filtered_markets
|
318
321
|
}
|
@@ -329,17 +332,15 @@ class SeerAgentMarket(AgentMarket):
|
|
329
332
|
try:
|
330
333
|
# GnosisRouter needs approval to use our outcome tokens
|
331
334
|
for i, token in enumerate(market.wrapped_tokens):
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
335
|
+
handle_allowance(
|
336
|
+
api_keys=api_keys,
|
337
|
+
sell_token=Web3.to_checksum_address(token),
|
338
|
+
amount_to_check_wei=market_balances[market.id][i].as_wei,
|
336
339
|
for_address=gnosis_router.address,
|
337
|
-
amount_wei=market_balances[market.id][i].as_wei,
|
338
340
|
web3=web3,
|
339
341
|
)
|
340
342
|
|
341
343
|
# We can only ask for redeem of outcome tokens on correct outcomes
|
342
|
-
# TODO: Implement more complex use-cases: https://github.com/gnosis/prediction-market-agent-tooling/issues/850
|
343
344
|
amounts_to_redeem = [
|
344
345
|
(amount if numerator > 0 else OutcomeWei(0))
|
345
346
|
for amount, numerator in zip(
|
@@ -347,13 +348,13 @@ class SeerAgentMarket(AgentMarket):
|
|
347
348
|
)
|
348
349
|
]
|
349
350
|
|
350
|
-
|
351
|
-
|
351
|
+
gnosis_router.redeem_to_base(
|
352
|
+
api_keys,
|
352
353
|
market=Web3.to_checksum_address(market.id),
|
353
|
-
|
354
|
+
outcome_indexes=list(range(len(market.payout_numerators))),
|
354
355
|
amounts=amounts_to_redeem,
|
356
|
+
web3=web3,
|
355
357
|
)
|
356
|
-
gnosis_router.redeem_to_base(api_keys, params=params, web3=web3)
|
357
358
|
logger.info(f"Redeemed market {market.url}.")
|
358
359
|
except Exception:
|
359
360
|
logger.exception(
|
@@ -8,13 +8,13 @@ from prediction_market_agent_tooling.gtypes import (
|
|
8
8
|
ABI,
|
9
9
|
ChecksumAddress,
|
10
10
|
OutcomeStr,
|
11
|
+
OutcomeWei,
|
11
12
|
TxReceipt,
|
12
13
|
Wei,
|
13
14
|
xDai,
|
14
15
|
)
|
15
16
|
from prediction_market_agent_tooling.markets.seer.data_models import (
|
16
17
|
ExactInputSingleParams,
|
17
|
-
RedeemParams,
|
18
18
|
)
|
19
19
|
from prediction_market_agent_tooling.markets.seer.subgraph_data_models import (
|
20
20
|
CreateCategoricalMarketsParams,
|
@@ -102,12 +102,18 @@ class GnosisRouter(ContractOnGnosisChain):
|
|
102
102
|
def redeem_to_base(
|
103
103
|
self,
|
104
104
|
api_keys: APIKeys,
|
105
|
-
|
105
|
+
market: ChecksumAddress,
|
106
|
+
outcome_indexes: list[int],
|
107
|
+
amounts: list[OutcomeWei],
|
106
108
|
web3: Web3 | None = None,
|
107
109
|
) -> TxReceipt:
|
108
|
-
params_dict = params.model_dump(by_alias=True)
|
109
110
|
# We explicity set amounts since OutcomeWei gets serialized as dict
|
110
|
-
params_dict
|
111
|
+
params_dict = {
|
112
|
+
"market": market,
|
113
|
+
"outcomeIndexes": outcome_indexes,
|
114
|
+
"amounts": [amount.value for amount in amounts],
|
115
|
+
}
|
116
|
+
|
111
117
|
receipt_tx = self.send(
|
112
118
|
api_keys=api_keys,
|
113
119
|
function_name="redeemToBase",
|
@@ -116,6 +122,22 @@ class GnosisRouter(ContractOnGnosisChain):
|
|
116
122
|
)
|
117
123
|
return receipt_tx
|
118
124
|
|
125
|
+
def split_from_base(
|
126
|
+
self,
|
127
|
+
api_keys: APIKeys,
|
128
|
+
market_id: ChecksumAddress,
|
129
|
+
amount_wei: Wei,
|
130
|
+
web3: Web3 | None = None,
|
131
|
+
) -> TxReceipt:
|
132
|
+
"""Splits using xDAI and receives outcome tokens"""
|
133
|
+
return self.send_with_value(
|
134
|
+
api_keys=api_keys,
|
135
|
+
function_name="splitFromBase",
|
136
|
+
amount_wei=amount_wei,
|
137
|
+
function_params=[market_id],
|
138
|
+
web3=web3,
|
139
|
+
)
|
140
|
+
|
119
141
|
def split_position(
|
120
142
|
self,
|
121
143
|
api_keys: APIKeys,
|
@@ -434,6 +434,25 @@ class ContractWrapped1155BaseClass(ContractERC20BaseClass):
|
|
434
434
|
)
|
435
435
|
)
|
436
436
|
|
437
|
+
def factory(self, web3: Web3 | None = None) -> ChecksumAddress:
|
438
|
+
return Web3.to_checksum_address(self.call("factory", web3=web3))
|
439
|
+
|
440
|
+
def mint(
|
441
|
+
self,
|
442
|
+
api_keys: APIKeys,
|
443
|
+
to_address: ChecksumAddress,
|
444
|
+
amount: Wei,
|
445
|
+
tx_params: t.Optional[TxParams] = None,
|
446
|
+
web3: Web3 | None = None,
|
447
|
+
) -> TxReceipt:
|
448
|
+
return self.send(
|
449
|
+
api_keys=api_keys,
|
450
|
+
function_name="mint",
|
451
|
+
function_params=[to_address, amount],
|
452
|
+
tx_params=tx_params,
|
453
|
+
web3=web3,
|
454
|
+
)
|
455
|
+
|
437
456
|
|
438
457
|
class OwnableContract(ContractBaseClass):
|
439
458
|
abi: ABI = abi_field_validator(
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|