2026-01-01 19:54:32 +06:00
|
|
|
import time
|
2026-01-01 18:41:11 +06:00
|
|
|
import asyncio
|
|
|
|
|
from utils.logger import setup_logging
|
|
|
|
|
from utils.tokens import fetch_tokens
|
2026-01-01 18:56:35 +06:00
|
|
|
from utils.clob_client import init_clob_client
|
2026-01-01 19:54:32 +06:00
|
|
|
from utils.orderbook import OrderBook
|
2026-01-01 18:41:11 +06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
async def main():
|
|
|
|
|
logger = setup_logging()
|
|
|
|
|
logger.info("Polymarket HFT Market Maker started")
|
|
|
|
|
|
|
|
|
|
up_token, down_token, market_slug = await fetch_tokens()
|
2026-01-01 18:56:35 +06:00
|
|
|
client = await init_clob_client()
|
2026-01-01 19:54:32 +06:00
|
|
|
book = OrderBook(up_token, down_token, market_slug)
|
|
|
|
|
book.start()
|
|
|
|
|
|
|
|
|
|
while True:
|
|
|
|
|
await asyncio.sleep(10)
|
2026-01-01 18:41:11 +06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
try:
|
|
|
|
|
asyncio.run(main())
|
|
|
|
|
except KeyboardInterrupt:
|
|
|
|
|
print("\nMarket maker stopped by user")
|
|
|
|
|
except Exception as e:
|
|
|
|
|
print(f"Fatal error: {e}")
|
|
|
|
|
exit(1)
|