Я пытаюсь сделать произвольный торговый бот в цепочке арбитра на Python, но у вас есть проблемы с ABIPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Я пытаюсь сделать произвольный торговый бот в цепочке арбитра на Python, но у вас есть проблемы с ABI

Сообщение Anonymous »

Я пытаюсь создать производный торговый бот с видом на арбитра. Sepolia testnet, прежде чем идти вперед. < /P>
Однако я не могу проверить контракты и получить ошибки. 'mainnet': {
'rpc_urls': [
'https://arb1.arbitrum.io/rpc',
'https://arbitrum-one.publicnode.com',
],
'tokens': {
'WETH': '0x82aF49447D8a07e3bd95BD0d56f35241523fBab1',
'DAI': '0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1'
},
'routers': {
'Uniswap': '0x4C60051384bd2d3C01bfc845Cf5F4b44bcbE9de5',
'Camelot': '0xc873fEcbd354f5A56E00E710B90EF4201db2448d'
}
},
'testnet': {
'rpc_urls': [
'https://sepolia-rollup.arbitrum.io/rpc',
'https://arbitrum-sepolia.publicnode.com',
'https://arbitrum-sepolia-rpc.publicnode.com',
'https://arb-sepolia.g.alchemy.com/v2/MYKEY'
],
'tokens': {
'WETH': '0x980B62Da83eFf3D4576C647993b0c1D7faf17c73',
'DAI': '0x9bc8388dD439fa3365B1F78A81242aDBB4677759'
},
'routers': {
'Uniswap': '0x101F443a4A2D26158236F5aD075C6591b03Fc3c5',
'Camelot': '0x171B925C51565F5D2a7d8C494ba3188D304EFD93'
}
}
< /code>
С помощью какого -то Клода я смог добавить эти ABI, потому что тот, который я получил от исследователя, тоже не работал. < /p>
self.erc20_abi = [
{
"constant": False,
"inputs": [
{"name": "_spender", "type": "address"},
{"name": "_value", "type": "uint256"}
],
"name": "approve",
"outputs": [{"name": "success", "type": "bool"}],
"type": "function"
},
{
"constant": True,
"inputs": [{"name": "_owner", "type": "address"}],
"name": "balanceOf",
"outputs": [{"name": "balance", "type": "uint256"}],
"type": "function"
}
]

# Uniswap V2 Router ABI (simplified)
self.uniswap_v2_abi = [
{
"inputs": [],
"name": "WETH",
"outputs": [{"internalType": "address", "name": "", "type": "address"}],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{"internalType": "uint256", "name": "amountIn", "type": "uint256"},
{"internalType": "address[]", "name": "path", "type": "address[]"}
],
"name": "getAmountsOut",
"outputs": [{"internalType": "uint256[]", "name": "amounts", "type": "uint256[]"}],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{"internalType": "uint256", "name": "amountOutMin", "type": "uint256"},
{"internalType": "address[]", "name": "path", "type": "address[]"},
{"internalType": "address", "name": "to", "type": "address"},
{"internalType": "uint256", "name": "deadline", "type": "uint256"}
],
"name": "swapExactETHForTokens",
"outputs": [{"internalType": "uint256[]", "name": "amounts", "type": "uint256[]"}],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{"internalType": "uint256", "name": "amountIn", "type": "uint256"},
{"internalType": "uint256", "name": "amountOutMin", "type": "uint256"},
{"internalType": "address[]", "name": "path", "type": "address[]"},
{"internalType": "address", "name": "to", "type": "address"},
{"internalType": "uint256", "name": "deadline", "type": "uint256"}
],
"name": "swapExactTokensForETH",
"outputs": [{"internalType": "uint256[]", "name": "amounts", "type": "uint256[]"}],
"stateMutability": "nonpayable",
"type": "function"
}
]

# Camelot Router ABI
self.camelot_abi = [
{
"inputs": [],
"name": "WETH",
"outputs": [{"internalType": "address", "name": "", "type": "address"}],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{"internalType": "uint256", "name": "amountIn", "type": "uint256"},
{"internalType": "address[]", "name": "path", "type": "address[]"}
],
"name": "getAmountsOut",
"outputs": [{"internalType": "uint256[]", "name": "amounts", "type": "uint256[]"}],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{"internalType": "uint256", "name": "amountOutMin", "type": "uint256"},
{"internalType": "address[]", "name": "path", "type": "address[]"},
{"internalType": "address", "name": "to", "type": "address"},
{"internalType": "address", "name": "referrer", "type": "address"},
{"internalType": "uint256", "name": "deadline", "type": "uint256"}
],
"name": "swapExactETHForTokensSupportingFeeOnTransferTokens",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{"internalType": "uint256", "name": "amountIn", "type": "uint256"},
{"internalType": "uint256", "name": "amountOutMin", "type": "uint256"},
{"internalType": "address[]", "name": "path", "type": "address[]"},
{"internalType": "address", "name": "to", "type": "address"},
{"internalType": "address", "name": "referrer", "type": "address"},
{"internalType": "uint256", "name": "deadline", "type": "uint256"}
],
"name": "swapExactTokensForETHSupportingFeeOnTransferTokens",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
]
< /code>
Любые предложения или альтернативы являются наиболее приветствующими.https://ctxt.io/2/AAB4JyKlFQ
< /code>
Интегрированный ABI в Python - это просто предложение. Обе версии ABI не работают.

Подробнее здесь: https://stackoverflow.com/questions/796 ... on-but-hav
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»