prediction-market-agent-tooling 0.62.0.dev470__tar.gz → 0.62.0.dev472__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.
Files changed (127) hide show
  1. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/PKG-INFO +1 -1
  2. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/betting_strategy.py +4 -4
  3. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/gtypes.py +8 -8
  4. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/agent_market.py +20 -20
  5. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/data_models.py +11 -11
  6. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/manifold/data_models.py +9 -9
  7. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/manifold/manifold.py +8 -3
  8. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/market_fees.py +5 -3
  9. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/data_models.py +8 -8
  10. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/omen.py +15 -15
  11. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/polymarket/polymarket.py +2 -2
  12. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/seer/data_models.py +2 -2
  13. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/seer/seer.py +7 -7
  14. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/balances.py +9 -4
  15. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/betting_strategies/kelly_criterion.py +6 -6
  16. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/betting_strategies/market_moving.py +6 -2
  17. prediction_market_agent_tooling-0.62.0.dev472/prediction_market_agent_tooling/tools/betting_strategies/utils.py +8 -0
  18. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/contract.py +2 -2
  19. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/cow/cow_manager.py +2 -2
  20. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tokens/usd.py +6 -6
  21. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/utils.py +3 -3
  22. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/pyproject.toml +1 -1
  23. prediction_market_agent_tooling-0.62.0.dev470/prediction_market_agent_tooling/tools/betting_strategies/utils.py +0 -8
  24. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/LICENSE +0 -0
  25. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/README.md +0 -0
  26. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/debuggingcontract.abi.json +0 -0
  27. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/depositablewrapper_erc20.abi.json +0 -0
  28. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/erc20.abi.json +0 -0
  29. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/erc4626.abi.json +0 -0
  30. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/erc721.abi.json +0 -0
  31. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_agentresultmapping.abi.json +0 -0
  32. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_dxdao.abi.json +0 -0
  33. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_fpmm.abi.json +0 -0
  34. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_fpmm_conditionaltokens.abi.json +0 -0
  35. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_fpmm_factory.abi.json +0 -0
  36. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_kleros.abi.json +0 -0
  37. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_oracle.abi.json +0 -0
  38. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_realitio.abi.json +0 -0
  39. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/omen_thumbnailmapping.abi.json +0 -0
  40. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/ownable.abi.json +0 -0
  41. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/ownable_erc721.abi.json +0 -0
  42. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/proxy.abi.json +0 -0
  43. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/abis/seer_market_factory.abi.json +0 -0
  44. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/benchmark/__init__.py +0 -0
  45. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/benchmark/agents.py +0 -0
  46. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/benchmark/benchmark.py +0 -0
  47. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/benchmark/utils.py +0 -0
  48. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/config.py +0 -0
  49. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/agent.py +0 -0
  50. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/agent_example.py +0 -0
  51. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/constants.py +0 -0
  52. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/gcp/deploy.py +0 -0
  53. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/gcp/kubernetes_models.py +0 -0
  54. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/gcp/utils.py +0 -0
  55. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/deploy/trade_interval.py +0 -0
  56. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/jobs/__init__.py +0 -0
  57. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/jobs/jobs_models.py +0 -0
  58. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/jobs/omen/omen_jobs.py +0 -0
  59. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/loggers.py +0 -0
  60. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/base_subgraph_handler.py +0 -0
  61. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/blockchain_utils.py +0 -0
  62. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/categorize.py +0 -0
  63. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/manifold/__init__.py +0 -0
  64. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/manifold/api.py +0 -0
  65. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/manifold/utils.py +0 -0
  66. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/markets.py +0 -0
  67. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/metaculus/api.py +0 -0
  68. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/metaculus/data_models.py +0 -0
  69. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/metaculus/metaculus.py +0 -0
  70. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/__init__.py +0 -0
  71. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/omen_constants.py +0 -0
  72. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/omen_contracts.py +0 -0
  73. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/omen_resolving.py +0 -0
  74. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/omen/omen_subgraph_handler.py +0 -0
  75. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/polymarket/api.py +0 -0
  76. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/polymarket/data_models.py +0 -0
  77. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/polymarket/data_models_web.py +0 -0
  78. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/polymarket/utils.py +0 -0
  79. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/seer/seer_contracts.py +0 -0
  80. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/markets/seer/seer_subgraph_handler.py +0 -0
  81. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/financial_metrics/financial_metrics.py +0 -0
  82. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/markets/manifold.py +0 -0
  83. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/markets/metaculus.py +0 -0
  84. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/markets/omen.py +0 -0
  85. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/markets/polymarket.py +0 -0
  86. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/monitor.py +0 -0
  87. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/monitor_app.py +0 -0
  88. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/monitor/monitor_settings.py +0 -0
  89. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/py.typed +0 -0
  90. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/_generic_value.py +0 -0
  91. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/betting_strategies/minimum_bet_to_win.py +0 -0
  92. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/betting_strategies/stretch_bet_between.py +0 -0
  93. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/caches/db_cache.py +0 -0
  94. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/caches/inmemory_cache.py +0 -0
  95. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/caches/serializers.py +0 -0
  96. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/costs.py +0 -0
  97. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/cow/cow_order.py +0 -0
  98. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/custom_exceptions.py +0 -0
  99. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/datetime_utc.py +0 -0
  100. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/db/db_manager.py +0 -0
  101. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/google_utils.py +0 -0
  102. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/hexbytes_custom.py +0 -0
  103. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/httpx_cached_client.py +0 -0
  104. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/image_gen/image_gen.py +0 -0
  105. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/image_gen/market_thumbnail_gen.py +0 -0
  106. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/ipfs/ipfs_handler.py +0 -0
  107. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/is_invalid.py +0 -0
  108. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/is_predictable.py +0 -0
  109. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/langfuse_.py +0 -0
  110. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/langfuse_client_utils.py +0 -0
  111. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/omen/reality_accuracy.py +0 -0
  112. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/omen/sell_positions.py +0 -0
  113. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/parallelism.py +0 -0
  114. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/relevant_news_analysis/data_models.py +0 -0
  115. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/relevant_news_analysis/relevant_news_analysis.py +0 -0
  116. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/relevant_news_analysis/relevant_news_cache.py +0 -0
  117. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/safe.py +0 -0
  118. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/singleton.py +0 -0
  119. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/streamlit_user_login.py +0 -0
  120. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tavily/tavily_models.py +0 -0
  121. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tavily/tavily_search.py +0 -0
  122. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tokens/auto_deposit.py +0 -0
  123. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tokens/auto_withdraw.py +0 -0
  124. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tokens/main_token.py +0 -0
  125. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/tokens/token_utils.py +0 -0
  126. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/transaction_cache.py +0 -0
  127. {prediction_market_agent_tooling-0.62.0.dev470 → prediction_market_agent_tooling-0.62.0.dev472}/prediction_market_agent_tooling/tools/web3_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: prediction-market-agent-tooling
3
- Version: 0.62.0.dev470
3
+ Version: 0.62.0.dev472
4
4
  Summary: Tools to benchmark, deploy and monitor prediction market agents.
5
5
  Author: Gnosis
6
6
  Requires-Python: >=3.10,<3.13
@@ -2,7 +2,7 @@ from abc import ABC, abstractmethod
2
2
 
3
3
  from scipy.optimize import minimize_scalar
4
4
 
5
- from prediction_market_agent_tooling.gtypes import USD, OutcomeToken, Token
5
+ from prediction_market_agent_tooling.gtypes import USD, CollateralToken, OutcomeToken
6
6
  from prediction_market_agent_tooling.loggers import logger
7
7
  from prediction_market_agent_tooling.markets.agent_market import AgentMarket, MarketFees
8
8
  from prediction_market_agent_tooling.markets.data_models import (
@@ -209,7 +209,7 @@ class KellyBettingStrategy(BettingStrategy):
209
209
  def calculate_price_impact_for_bet_amount(
210
210
  self,
211
211
  buy_direction: bool,
212
- bet_amount: Token,
212
+ bet_amount: CollateralToken,
213
213
  yes: OutcomeToken,
214
214
  no: OutcomeToken,
215
215
  fees: MarketFees,
@@ -232,7 +232,7 @@ class KellyBettingStrategy(BettingStrategy):
232
232
  self,
233
233
  market: AgentMarket,
234
234
  kelly_bet: SimpleBet,
235
- ) -> Token:
235
+ ) -> CollateralToken:
236
236
  def calculate_price_impact_deviation_from_target_price_impact(
237
237
  bet_amount_usd: float, # Needs to be float because it's used in minimize_scalar internally.
238
238
  ) -> float:
@@ -269,7 +269,7 @@ class KellyBettingStrategy(BettingStrategy):
269
269
  tol=1e-11,
270
270
  options={"maxiter": 10000},
271
271
  )
272
- return Token(optimized_bet_amount.x)
272
+ return CollateralToken(optimized_bet_amount.x)
273
273
 
274
274
  def __repr__(self) -> str:
275
275
  return f"{self.__class__.__name__}(max_bet_amount={self.max_bet_amount}, max_price_impact={self.max_price_impact})"
@@ -27,7 +27,7 @@ from prediction_market_agent_tooling.tools.hexbytes_custom import ( # noqa: F40
27
27
  )
28
28
 
29
29
 
30
- class Token(_GenericValue[int | float | str | Decimal, float], parser=float):
30
+ class CollateralToken(_GenericValue[int | float | str | Decimal, float], parser=float):
31
31
  """
32
32
  Represents any token in its decimal form, it could be 1.1 GNO, WXDAI, XDAI, Mana, whatever. We don't know the currency, just that it's in the decimal form.
33
33
  """
@@ -46,7 +46,7 @@ class OutcomeToken(_GenericValue[int | float | str | Decimal, float], parser=flo
46
46
  """
47
47
 
48
48
  @staticmethod
49
- def from_token(token: Token) -> "OutcomeToken":
49
+ def from_token(token: CollateralToken) -> "OutcomeToken":
50
50
  return OutcomeToken(token.value)
51
51
 
52
52
  @property
@@ -54,11 +54,11 @@ class OutcomeToken(_GenericValue[int | float | str | Decimal, float], parser=flo
54
54
  return OutcomeWei(Web3.to_wei(self.value, "ether"))
55
55
 
56
56
  @property
57
- def as_token(self) -> Token:
57
+ def as_token(self) -> CollateralToken:
58
58
  """
59
59
  OutcomeToken is essentialy Token as well, when you know you really need to convert it, you can convert it explicitly using this.
60
60
  """
61
- return Token(self.value)
61
+ return CollateralToken(self.value)
62
62
 
63
63
 
64
64
  class USD(_GenericValue[int | float | str | Decimal, float], parser=float):
@@ -69,11 +69,11 @@ class xDai(_GenericValue[int | float | str | Decimal, float], parser=float):
69
69
  """Represents values in xDai."""
70
70
 
71
71
  @property
72
- def as_token(self) -> Token:
72
+ def as_token(self) -> CollateralToken:
73
73
  """
74
74
  xDai is essentialy Token as well, when you know you need to pass it, you can convert it using this.
75
75
  """
76
- return Token(self.value)
76
+ return CollateralToken(self.value)
77
77
 
78
78
  @property
79
79
  def as_xdai_wei(self) -> "xDaiWei":
@@ -92,8 +92,8 @@ class Wei(_GenericValue[Web3Wei | int | str, Web3Wei], parser=int):
92
92
  """Represents values in Wei. We don't know what currency, but in its integer form called Wei."""
93
93
 
94
94
  @property
95
- def as_token(self) -> Token:
96
- return Token(Web3.from_wei(self.value, "ether"))
95
+ def as_token(self) -> CollateralToken:
96
+ return CollateralToken(Web3.from_wei(self.value, "ether"))
97
97
 
98
98
 
99
99
  class OutcomeWei(_GenericValue[Web3Wei | int | str, Web3Wei], parser=int):
@@ -7,20 +7,20 @@ from pydantic_core.core_schema import FieldValidationInfo
7
7
 
8
8
  from prediction_market_agent_tooling.config import APIKeys
9
9
  from prediction_market_agent_tooling.gtypes import (
10
+ CollateralToken,
10
11
  OutcomeStr,
11
12
  OutcomeToken,
12
13
  Probability,
13
- Token,
14
14
  )
15
15
  from prediction_market_agent_tooling.markets.data_models import (
16
16
  USD,
17
17
  Bet,
18
+ CollateralToken,
18
19
  ExistingPosition,
19
20
  PlacedTrade,
20
21
  ProbabilisticAnswer,
21
22
  Resolution,
22
23
  ResolvedBet,
23
- Token,
24
24
  )
25
25
  from prediction_market_agent_tooling.markets.market_fees import MarketFees
26
26
  from prediction_market_agent_tooling.tools.utils import (
@@ -71,7 +71,7 @@ class AgentMarket(BaseModel):
71
71
  close_time: DatetimeUTC | None
72
72
  current_p_yes: Probability
73
73
  url: str
74
- volume: Token | None
74
+ volume: CollateralToken | None
75
75
  fees: MarketFees
76
76
 
77
77
  @field_validator("outcome_token_pool")
@@ -103,24 +103,24 @@ class AgentMarket(BaseModel):
103
103
  return Probability(1 - self.current_p_yes)
104
104
 
105
105
  @property
106
- def yes_outcome_price(self) -> Token:
106
+ def yes_outcome_price(self) -> CollateralToken:
107
107
  """
108
108
  Price at prediction market is equal to the probability of given outcome.
109
109
  Keep as an extra property, in case it wouldn't be true for some prediction market platform.
110
110
  """
111
- return Token(self.current_p_yes)
111
+ return CollateralToken(self.current_p_yes)
112
112
 
113
113
  @property
114
114
  def yes_outcome_price_usd(self) -> USD:
115
115
  return self.get_token_in_usd(self.yes_outcome_price)
116
116
 
117
117
  @property
118
- def no_outcome_price(self) -> Token:
118
+ def no_outcome_price(self) -> CollateralToken:
119
119
  """
120
120
  Price at prediction market is equal to the probability of given outcome.
121
121
  Keep as an extra property, in case it wouldn't be true for some prediction market platform.
122
122
  """
123
- return Token(self.current_p_no)
123
+ return CollateralToken(self.current_p_no)
124
124
 
125
125
  @property
126
126
  def no_outcome_price_usd(self) -> USD:
@@ -159,11 +159,11 @@ class AgentMarket(BaseModel):
159
159
  """
160
160
  raise NotImplementedError("Subclasses must implement this method")
161
161
 
162
- def get_last_trade_yes_outcome_price(self) -> Token | None:
162
+ def get_last_trade_yes_outcome_price(self) -> CollateralToken | None:
163
163
  # Price on prediction markets are, by definition, equal to the probability of an outcome.
164
164
  # Just making it explicit in this function.
165
165
  if last_trade_p_yes := self.get_last_trade_p_yes():
166
- return Token(last_trade_p_yes)
166
+ return CollateralToken(last_trade_p_yes)
167
167
  return None
168
168
 
169
169
  def get_last_trade_yes_outcome_price_usd(self) -> USD | None:
@@ -171,11 +171,11 @@ class AgentMarket(BaseModel):
171
171
  return self.get_token_in_usd(last_trade_yes_outcome_price)
172
172
  return None
173
173
 
174
- def get_last_trade_no_outcome_price(self) -> Token | None:
174
+ def get_last_trade_no_outcome_price(self) -> CollateralToken | None:
175
175
  # Price on prediction markets are, by definition, equal to the probability of an outcome.
176
176
  # Just making it explicit in this function.
177
177
  if last_trade_p_no := self.get_last_trade_p_no():
178
- return Token(last_trade_p_no)
178
+ return CollateralToken(last_trade_p_no)
179
179
  return None
180
180
 
181
181
  def get_last_trade_no_outcome_price_usd(self) -> USD | None:
@@ -187,13 +187,13 @@ class AgentMarket(BaseModel):
187
187
  tiny_amount = self.get_tiny_bet_amount()
188
188
  return OutcomeToken.from_token(tiny_amount / 10)
189
189
 
190
- def get_token_in_usd(self, x: Token) -> USD:
190
+ def get_token_in_usd(self, x: CollateralToken) -> USD:
191
191
  """
192
192
  Token of this market can have whatever worth (e.g. sDai and ETH markets will have different worth of 1 token). Use this to convert it to USD.
193
193
  """
194
194
  raise NotImplementedError("Subclasses must implement this method")
195
195
 
196
- def get_usd_in_token(self, x: USD) -> Token:
196
+ def get_usd_in_token(self, x: USD) -> CollateralToken:
197
197
  """
198
198
  Markets on a single platform can have different tokens as collateral (sDai, wxDai, GNO, ...). Use this to convert USD to the token of this market.
199
199
  """
@@ -201,24 +201,24 @@ class AgentMarket(BaseModel):
201
201
 
202
202
  def get_sell_value_of_outcome_token(
203
203
  self, outcome: str, amount: OutcomeToken
204
- ) -> Token:
204
+ ) -> CollateralToken:
205
205
  """
206
206
  When you hold OutcomeToken(s), it's easy to calculate how much you get at the end if you win (1 OutcomeToken will equal to 1 Token).
207
207
  But use this to figure out, how much are these outcome tokens worth right now (for how much you can sell them).
208
208
  """
209
209
  raise NotImplementedError("Subclasses must implement this method")
210
210
 
211
- def get_in_usd(self, x: USD | Token) -> USD:
211
+ def get_in_usd(self, x: USD | CollateralToken) -> USD:
212
212
  if isinstance(x, USD):
213
213
  return x
214
214
  return self.get_token_in_usd(x)
215
215
 
216
- def get_in_token(self, x: USD | Token) -> Token:
217
- if isinstance(x, Token):
216
+ def get_in_token(self, x: USD | CollateralToken) -> CollateralToken:
217
+ if isinstance(x, CollateralToken):
218
218
  return x
219
219
  return self.get_usd_in_token(x)
220
220
 
221
- def get_tiny_bet_amount(self) -> Token:
221
+ def get_tiny_bet_amount(self) -> CollateralToken:
222
222
  """
223
223
  Tiny bet amount that the platform still allows us to do.
224
224
  """
@@ -234,7 +234,7 @@ class AgentMarket(BaseModel):
234
234
  return self.place_bet(outcome=outcome, amount=amount)
235
235
 
236
236
  def get_buy_token_amount(
237
- self, bet_amount: USD | Token, direction: bool
237
+ self, bet_amount: USD | CollateralToken, direction: bool
238
238
  ) -> OutcomeToken:
239
239
  raise NotImplementedError("Subclasses must implement this method")
240
240
 
@@ -319,7 +319,7 @@ class AgentMarket(BaseModel):
319
319
  def is_resolved(self) -> bool:
320
320
  return self.resolution is not None
321
321
 
322
- def get_liquidity(self) -> Token:
322
+ def get_liquidity(self) -> CollateralToken:
323
323
  raise NotImplementedError("Subclasses must implement this method")
324
324
 
325
325
  def has_liquidity(self) -> bool:
@@ -5,10 +5,10 @@ from pydantic import BaseModel, BeforeValidator, computed_field
5
5
 
6
6
  from prediction_market_agent_tooling.gtypes import (
7
7
  USD,
8
+ CollateralToken,
8
9
  OutcomeStr,
9
10
  OutcomeToken,
10
11
  Probability,
11
- Token,
12
12
  )
13
13
  from prediction_market_agent_tooling.tools.utils import DatetimeUTC
14
14
 
@@ -26,7 +26,7 @@ class Resolution(str, Enum):
26
26
 
27
27
  class Bet(BaseModel):
28
28
  id: str
29
- amount: Token
29
+ amount: CollateralToken
30
30
  outcome: bool
31
31
  created_time: DatetimeUTC
32
32
  market_question: str
@@ -39,7 +39,7 @@ class Bet(BaseModel):
39
39
  class ResolvedBet(Bet):
40
40
  market_outcome: bool
41
41
  resolved_time: DatetimeUTC
42
- profit: Token
42
+ profit: CollateralToken
43
43
 
44
44
  @computed_field # type: ignore[prop-decorator]
45
45
  @property
@@ -145,12 +145,12 @@ class SimulatedBetDetail(BaseModel):
145
145
  market_p_yes: float
146
146
  agent_p_yes: float
147
147
  agent_conf: float
148
- org_bet: Token
149
- sim_bet: Token
148
+ org_bet: CollateralToken
149
+ sim_bet: CollateralToken
150
150
  org_dir: bool
151
151
  sim_dir: bool
152
- org_profit: Token
153
- sim_profit: Token
152
+ org_profit: CollateralToken
153
+ sim_profit: CollateralToken
154
154
  timestamp: DatetimeUTC
155
155
 
156
156
 
@@ -162,10 +162,10 @@ class SharpeOutput(BaseModel):
162
162
 
163
163
  class SimulatedLifetimeDetail(BaseModel):
164
164
  p_yes_mse: float
165
- total_bet_amount: Token
166
- total_bet_profit: Token
167
- total_simulated_amount: Token
168
- total_simulated_profit: Token
165
+ total_bet_amount: CollateralToken
166
+ total_bet_profit: CollateralToken
167
+ total_simulated_amount: CollateralToken
168
+ total_simulated_profit: CollateralToken
169
169
  roi: float
170
170
  simulated_roi: float
171
171
  sharpe_output_original: SharpeOutput
@@ -5,11 +5,11 @@ from pydantic import BaseModel
5
5
 
6
6
  from prediction_market_agent_tooling.gtypes import (
7
7
  USD,
8
+ CollateralToken,
8
9
  Mana,
9
10
  OutcomeStr,
10
11
  OutcomeToken,
11
12
  Probability,
12
- Token,
13
13
  )
14
14
  from prediction_market_agent_tooling.markets.data_models import Resolution
15
15
  from prediction_market_agent_tooling.tools.utils import DatetimeUTC, should_not_happen
@@ -82,11 +82,11 @@ class ManifoldMarket(BaseModel):
82
82
  pool: ManifoldPool
83
83
  probability: Probability
84
84
  slug: str
85
- totalLiquidity: t.Optional[Token] = None
85
+ totalLiquidity: t.Optional[CollateralToken] = None
86
86
  uniqueBettorCount: int
87
87
  url: str
88
- volume: Token
89
- volume24Hours: Token
88
+ volume: CollateralToken
89
+ volume24Hours: CollateralToken
90
90
 
91
91
  @property
92
92
  def outcomes(self) -> t.Sequence[OutcomeStr]:
@@ -181,18 +181,18 @@ class ManifoldBet(BaseModel):
181
181
  https://docs.manifold.markets/api#get-v0bets
182
182
  """
183
183
 
184
- shares: Token
184
+ shares: CollateralToken
185
185
  probBefore: Probability
186
186
  isFilled: t.Optional[bool] = None
187
187
  probAfter: Probability
188
188
  userId: str
189
- amount: Token
189
+ amount: CollateralToken
190
190
  contractId: str
191
191
  id: str
192
192
  fees: ManifoldBetFees
193
193
  isCancelled: t.Optional[bool] = None
194
- loanAmount: Token | None
195
- orderAmount: t.Optional[Token] = None
194
+ loanAmount: CollateralToken | None
195
+ orderAmount: t.Optional[CollateralToken] = None
196
196
  fills: t.Optional[list[ManifoldBetFills]] = None
197
197
  createdTime: DatetimeUTC
198
198
  outcome: Resolution
@@ -205,7 +205,7 @@ class ManifoldBet(BaseModel):
205
205
  else:
206
206
  should_not_happen(f"Unexpected bet outcome string, '{self.outcome.value}'.")
207
207
 
208
- def get_profit(self, market_outcome: bool) -> Token:
208
+ def get_profit(self, market_outcome: bool) -> CollateralToken:
209
209
  profit = (
210
210
  self.shares - self.amount
211
211
  if self.get_resolved_boolean_outcome() == market_outcome
@@ -2,7 +2,12 @@ import typing as t
2
2
  from math import ceil
3
3
 
4
4
  from prediction_market_agent_tooling.config import APIKeys
5
- from prediction_market_agent_tooling.gtypes import USD, Mana, Probability, Token
5
+ from prediction_market_agent_tooling.gtypes import (
6
+ USD,
7
+ CollateralToken,
8
+ Mana,
9
+ Probability,
10
+ )
6
11
  from prediction_market_agent_tooling.markets.agent_market import (
7
12
  AgentMarket,
8
13
  FilterBy,
@@ -48,8 +53,8 @@ class ManifoldAgentMarket(AgentMarket):
48
53
  """On Manifold, probablities aren't updated after the closure, so we can just use the current probability"""
49
54
  return self.current_p_no
50
55
 
51
- def get_tiny_bet_amount(self) -> Token:
52
- return Token(1)
56
+ def get_tiny_bet_amount(self) -> CollateralToken:
57
+ return CollateralToken(1)
53
58
 
54
59
  def get_minimum_bet_to_win(self, answer: bool, amount_to_win: float) -> Mana:
55
60
  # Manifold lowest bet is 1 Mana, so we need to ceil the result.
@@ -1,6 +1,6 @@
1
1
  from pydantic import BaseModel, Field
2
2
 
3
- from prediction_market_agent_tooling.gtypes import Token
3
+ from prediction_market_agent_tooling.gtypes import CollateralToken
4
4
 
5
5
 
6
6
  class MarketFees(BaseModel):
@@ -34,5 +34,7 @@ class MarketFees(BaseModel):
34
34
  total_fee = self.total_fee_absolute_value(bet_amount)
35
35
  return total_fee / bet_amount
36
36
 
37
- def get_after_fees(self, bet_amount: Token) -> Token:
38
- return bet_amount - Token(self.total_fee_absolute_value(bet_amount.value))
37
+ def get_after_fees(self, bet_amount: CollateralToken) -> CollateralToken:
38
+ return bet_amount - CollateralToken(
39
+ self.total_fee_absolute_value(bet_amount.value)
40
+ )
@@ -6,13 +6,13 @@ from web3 import Web3
6
6
  from prediction_market_agent_tooling.gtypes import (
7
7
  USD,
8
8
  ChecksumAddress,
9
+ CollateralToken,
9
10
  HexAddress,
10
11
  HexBytes,
11
12
  HexStr,
12
13
  OutcomeStr,
13
14
  OutcomeWei,
14
15
  Probability,
15
- Token,
16
16
  Wei,
17
17
  xDai,
18
18
  xDaiWei,
@@ -226,7 +226,7 @@ class OmenMarket(BaseModel):
226
226
  collateralToken: HexAddress
227
227
  outcomes: t.Sequence[OutcomeStr]
228
228
  outcomeTokenAmounts: list[OutcomeWei]
229
- outcomeTokenMarginalPrices: t.Optional[list[Token]]
229
+ outcomeTokenMarginalPrices: t.Optional[list[CollateralToken]]
230
230
  fee: t.Optional[Wei]
231
231
  resolutionTimestamp: t.Optional[int] = None
232
232
  answerFinalizedTimestamp: t.Optional[int] = None
@@ -485,7 +485,7 @@ def calculate_liquidity_parameter(
485
485
 
486
486
  def calculate_marginal_prices(
487
487
  outcome_token_amounts: list[OutcomeWei],
488
- ) -> list[Token] | None:
488
+ ) -> list[CollateralToken] | None:
489
489
  """
490
490
  Converted to Python from https://github.com/protofire/omen-subgraph/blob/f92bbfb6fa31ed9cd5985c416a26a2f640837d8b/src/utils/fpmm.ts#L197.
491
491
  """
@@ -506,7 +506,7 @@ def calculate_marginal_prices(
506
506
  sum_weights = sum(weights, start=Wei(0))
507
507
 
508
508
  marginal_prices = [weights[i].value / sum_weights.value for i in range(n_outcomes)]
509
- return [Token(mp) for mp in marginal_prices]
509
+ return [CollateralToken(mp) for mp in marginal_prices]
510
510
 
511
511
 
512
512
  class OmenBetCreator(BaseModel):
@@ -517,8 +517,8 @@ class OmenBet(BaseModel):
517
517
  id: HexAddress # A concatenation of: FPMM contract ID, trader ID and nonce. See https://github.com/protofire/omen-subgraph/blob/f92bbfb6fa31ed9cd5985c416a26a2f640837d8b/src/FixedProductMarketMakerMapping.ts#L109
518
518
  title: str
519
519
  collateralToken: HexAddress
520
- outcomeTokenMarginalPrice: Token
521
- oldOutcomeTokenMarginalPrice: Token
520
+ outcomeTokenMarginalPrice: CollateralToken
521
+ oldOutcomeTokenMarginalPrice: CollateralToken
522
522
  type: str
523
523
  creator: OmenBetCreator
524
524
  creationTimestamp: int
@@ -530,7 +530,7 @@ class OmenBet(BaseModel):
530
530
  fpmm: OmenMarket
531
531
 
532
532
  @property
533
- def collateral_amount_token(self) -> Token:
533
+ def collateral_amount_token(self) -> CollateralToken:
534
534
  return self.collateralAmount.as_token
535
535
 
536
536
  @property
@@ -560,7 +560,7 @@ class OmenBet(BaseModel):
560
560
  self.collateral_amount_token, self.collateral_token_checksummed
561
561
  )
562
562
 
563
- def get_profit(self) -> Token:
563
+ def get_profit(self) -> CollateralToken:
564
564
  bet_amount = self.collateral_amount_token
565
565
  profit = (
566
566
  self.outcomeTokensTraded.as_outcome_token.as_token - bet_amount
@@ -8,13 +8,13 @@ from prediction_market_agent_tooling.config import APIKeys
8
8
  from prediction_market_agent_tooling.gtypes import (
9
9
  USD,
10
10
  ChecksumAddress,
11
+ CollateralToken,
11
12
  HexAddress,
12
13
  HexStr,
13
14
  OutcomeStr,
14
15
  OutcomeToken,
15
16
  OutcomeWei,
16
17
  Probability,
17
- Token,
18
18
  Wei,
19
19
  xDai,
20
20
  )
@@ -145,16 +145,16 @@ class OmenAgentMarket(AgentMarket):
145
145
  def get_liquidity_in_wei(self, web3: Web3 | None = None) -> Wei:
146
146
  return self.get_contract().totalSupply(web3)
147
147
 
148
- def get_liquidity(self, web3: Web3 | None = None) -> Token:
148
+ def get_liquidity(self, web3: Web3 | None = None) -> CollateralToken:
149
149
  return self.get_liquidity_in_wei(web3).as_token
150
150
 
151
- def get_tiny_bet_amount(self) -> Token:
151
+ def get_tiny_bet_amount(self) -> CollateralToken:
152
152
  return self.get_in_token(OMEN_TINY_BET_AMOUNT)
153
153
 
154
- def get_token_in_usd(self, x: Token) -> USD:
154
+ def get_token_in_usd(self, x: CollateralToken) -> USD:
155
155
  return get_token_in_usd(x, self.collateral_token_contract_address_checksummed)
156
156
 
157
- def get_usd_in_token(self, x: USD) -> Token:
157
+ def get_usd_in_token(self, x: USD) -> CollateralToken:
158
158
  return get_usd_in_token(x, self.collateral_token_contract_address_checksummed)
159
159
 
160
160
  def liquidate_existing_positions(
@@ -226,7 +226,7 @@ class OmenAgentMarket(AgentMarket):
226
226
 
227
227
  def get_sell_value_of_outcome_token(
228
228
  self, outcome: str, amount: OutcomeToken, web3: Web3 | None = None
229
- ) -> Token:
229
+ ) -> CollateralToken:
230
230
  """
231
231
  Market can have as collateral token GNO for example.
232
232
  When you place bet, you buy shares with GNO. For example, you get 10 shares for 1 GNO.
@@ -593,7 +593,7 @@ class OmenAgentMarket(AgentMarket):
593
593
  return get_omen_user_url(keys.bet_from_address)
594
594
 
595
595
  def get_buy_token_amount(
596
- self, bet_amount: USD | Token, direction: bool
596
+ self, bet_amount: USD | CollateralToken, direction: bool
597
597
  ) -> OutcomeToken:
598
598
  """
599
599
  Note: this is only valid if the market instance's token pool is
@@ -709,7 +709,7 @@ def pick_binary_market(
709
709
  )
710
710
  def omen_buy_outcome_tx(
711
711
  api_keys: APIKeys,
712
- amount: USD | Token,
712
+ amount: USD | CollateralToken,
713
713
  market: OmenAgentMarket,
714
714
  outcome: str,
715
715
  auto_deposit: bool,
@@ -761,7 +761,7 @@ def omen_buy_outcome_tx(
761
761
 
762
762
  def binary_omen_buy_outcome_tx(
763
763
  api_keys: APIKeys,
764
- amount: USD | Token,
764
+ amount: USD | CollateralToken,
765
765
  market: OmenAgentMarket,
766
766
  binary_outcome: bool,
767
767
  auto_deposit: bool,
@@ -779,7 +779,7 @@ def binary_omen_buy_outcome_tx(
779
779
 
780
780
  def omen_sell_outcome_tx(
781
781
  api_keys: APIKeys,
782
- amount: OutcomeToken | Token | USD,
782
+ amount: OutcomeToken | CollateralToken | USD,
783
783
  market: OmenAgentMarket,
784
784
  outcome: str,
785
785
  auto_withdraw: bool,
@@ -852,7 +852,7 @@ def omen_sell_outcome_tx(
852
852
 
853
853
  def binary_omen_sell_outcome_tx(
854
854
  api_keys: APIKeys,
855
- amount: OutcomeToken | Token | USD,
855
+ amount: OutcomeToken | CollateralToken | USD,
856
856
  market: OmenAgentMarket,
857
857
  binary_outcome: bool,
858
858
  auto_withdraw: bool,
@@ -870,7 +870,7 @@ def binary_omen_sell_outcome_tx(
870
870
 
871
871
  def omen_create_market_tx(
872
872
  api_keys: APIKeys,
873
- initial_funds: USD | Token,
873
+ initial_funds: USD | CollateralToken,
874
874
  question: str,
875
875
  closing_time: DatetimeUTC,
876
876
  category: str,
@@ -964,7 +964,7 @@ def omen_create_market_tx(
964
964
  )
965
965
 
966
966
  # Create the market.
967
- fee = Token(fee_perc).as_wei
967
+ fee = CollateralToken(fee_perc).as_wei
968
968
  (
969
969
  market_event,
970
970
  funding_event,
@@ -1000,7 +1000,7 @@ def omen_create_market_tx(
1000
1000
  def omen_fund_market_tx(
1001
1001
  api_keys: APIKeys,
1002
1002
  market: OmenAgentMarket,
1003
- funds: USD | Token,
1003
+ funds: USD | CollateralToken,
1004
1004
  auto_deposit: bool,
1005
1005
  web3: Web3 | None = None,
1006
1006
  ) -> None:
@@ -1350,7 +1350,7 @@ def send_keeping_token_to_eoa_xdai(
1350
1350
 
1351
1351
 
1352
1352
  def get_buy_outcome_token_amount(
1353
- investment_amount: Token,
1353
+ investment_amount: CollateralToken,
1354
1354
  buy_direction: bool,
1355
1355
  yes_outcome_pool_size: OutcomeToken,
1356
1356
  no_outcome_pool_size: OutcomeToken,
@@ -1,6 +1,6 @@
1
1
  import typing as t
2
2
 
3
- from prediction_market_agent_tooling.gtypes import USD, Token
3
+ from prediction_market_agent_tooling.gtypes import USD, CollateralToken
4
4
  from prediction_market_agent_tooling.markets.agent_market import (
5
5
  AgentMarket,
6
6
  FilterBy,
@@ -48,7 +48,7 @@ class PolymarketAgentMarket(AgentMarket):
48
48
  outcome_token_pool=None,
49
49
  )
50
50
 
51
- def get_tiny_bet_amount(self) -> Token:
51
+ def get_tiny_bet_amount(self) -> CollateralToken:
52
52
  raise NotImplementedError("TODO: Implement to allow betting on Polymarket.")
53
53
 
54
54
  def place_bet(self, outcome: bool, amount: USD) -> str:
@@ -10,11 +10,11 @@ from web3.constants import ADDRESS_ZERO
10
10
  from prediction_market_agent_tooling.config import RPCConfig
11
11
  from prediction_market_agent_tooling.gtypes import (
12
12
  ChecksumAddress,
13
+ CollateralToken,
13
14
  HexAddress,
14
15
  HexBytes,
15
16
  OutcomeStr,
16
17
  Probability,
17
- Token,
18
18
  Web3Wei,
19
19
  )
20
20
  from prediction_market_agent_tooling.loggers import logger
@@ -207,7 +207,7 @@ class SeerMarket(BaseModel):
207
207
  return Probability(price_yes)
208
208
 
209
209
  def _get_price_for_token(self, token: ChecksumAddress) -> float:
210
- collateral_exchange_amount = Token(1).as_wei
210
+ collateral_exchange_amount = CollateralToken(1).as_wei
211
211
  try:
212
212
  quote = CowManager().get_quote(
213
213
  collateral_token=self.collateral_token_contract_address_checksummed,