Создаю бота для быстрой и одновременной отправки соланы (пробовал применить JITO). Итак, я создал код ниже, он создает TX, но не выполняется. Я хотел бы знать, что мне следует изменить, что я могу сделать, а что не работает в этом случае.
Мне удалось совершить транзакцию через RPC Solana, поэтому в итоге я объединил две идеи. Я не знаю, действительно ли это или чего-то не может быть.
```
client = Client("https://api.mainnet-beta.solana.com/")
def create_tx_bundles(send_keypair_wallet: str, receiver_keypair_wallet: str, amount:float):
send_keypair = Keypair.from_base58_string(send_keypair_wallet)
receiver_keypair = Keypair.from_base58_string(receiver_keypair_wallet)
latest_blockhash = client.get_latest_blockhash().value.blockhash
disponivel = client.get_balance(send_keypair.pubkey()).value
ix = transfer(
TransferParams(
from_pubkey=send_keypair.pubkey(),
to_pubkey=receiver_keypair.pubkey(),
lamports=int(disponivel * (amount/100))
)
)
msg = MessageV0.try_compile(
payer=send_keypair.pubkey(),
instructions=[ix],
address_lookup_table_accounts=[],
recent_blockhash=latest_blockhash,
)
print(msg)
tx = VersionedTransaction(msg, [send_keypair])
# signedTx
return tx
transactions = [
{
"send_keypair": "example sendkey",
"receiver_keypair":"example receivekey",
"amount": 18.45,
},
# {
# "send_keypair": msg['walletfund']['wallet'],
# "receiver_keypair": msg['wallet1']['wallet'],
# "amount": msg['wallet1']['parte'],
# },
]
encodedSignedTransactions = []
txSignatures = []
# Access transaction data using its index in the loop
for index, transaction in enumerate(transactions):
signedTx = create_tx_bundles(transaction["send_keypair"],transaction["receiver_keypair"],transaction["amount"])
print(signedTx)
encodedSignedTransactions.append(base58.b58encode(bytes(signedTx)).decode())
txSignatures.append(str(signedTx.signatures[0]))
jito_response = requests.post(
"https://mainnet.block-engine.jito.wtf/api/v1/bundles",
headers={"Content-Type": "application/json"},
json={
"jsonrpc": "2.0",
"id": 1,
"method": "sendBundle",
"params": [
encodedSignedTransactions
]
}
)
for i, signature in enumerate(txSignatures):
print(f'Transaction {i}: {signature}')```
Подробнее здесь: https://stackoverflow.com/questions/793 ... using-jito
Отправка соланы между кошельками (с использованием jito) ⇐ Python
Программы на Python
-
Anonymous
1735340564
Anonymous
Создаю бота для быстрой и одновременной отправки соланы (пробовал применить JITO). Итак, я создал код ниже, он создает TX, но не выполняется. Я хотел бы знать, что мне следует изменить, что я могу сделать, а что не работает в этом случае.
Мне удалось совершить транзакцию через RPC Solana, поэтому в итоге я объединил две идеи. Я не знаю, действительно ли это или чего-то не может быть.
```
client = Client("https://api.mainnet-beta.solana.com/")
def create_tx_bundles(send_keypair_wallet: str, receiver_keypair_wallet: str, amount:float):
send_keypair = Keypair.from_base58_string(send_keypair_wallet)
receiver_keypair = Keypair.from_base58_string(receiver_keypair_wallet)
latest_blockhash = client.get_latest_blockhash().value.blockhash
disponivel = client.get_balance(send_keypair.pubkey()).value
ix = transfer(
TransferParams(
from_pubkey=send_keypair.pubkey(),
to_pubkey=receiver_keypair.pubkey(),
lamports=int(disponivel * (amount/100))
)
)
msg = MessageV0.try_compile(
payer=send_keypair.pubkey(),
instructions=[ix],
address_lookup_table_accounts=[],
recent_blockhash=latest_blockhash,
)
print(msg)
tx = VersionedTransaction(msg, [send_keypair])
# signedTx
return tx
transactions = [
{
"send_keypair": "example sendkey",
"receiver_keypair":"example receivekey",
"amount": 18.45,
},
# {
# "send_keypair": msg['walletfund']['wallet'],
# "receiver_keypair": msg['wallet1']['wallet'],
# "amount": msg['wallet1']['parte'],
# },
]
encodedSignedTransactions = []
txSignatures = []
# Access transaction data using its index in the loop
for index, transaction in enumerate(transactions):
signedTx = create_tx_bundles(transaction["send_keypair"],transaction["receiver_keypair"],transaction["amount"])
print(signedTx)
encodedSignedTransactions.append(base58.b58encode(bytes(signedTx)).decode())
txSignatures.append(str(signedTx.signatures[0]))
jito_response = requests.post(
"https://mainnet.block-engine.jito.wtf/api/v1/bundles",
headers={"Content-Type": "application/json"},
json={
"jsonrpc": "2.0",
"id": 1,
"method": "sendBundle",
"params": [
encodedSignedTransactions
]
}
)
for i, signature in enumerate(txSignatures):
print(f'Transaction {i}: {signature}')```
Подробнее здесь: [url]https://stackoverflow.com/questions/79312636/sending-solana-between-wallets-using-jito[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия