mirror of
https://github.com/chainstacklabs/pumpfun-bonkfun-bot.git
synced 2026-08-13 15:28:05 +00:00
fix: remove unused imports, update sell tx in learning
This commit is contained in:
@@ -17,7 +17,6 @@ from solders.instruction import AccountMeta, Instruction
|
|||||||
from solders.keypair import Keypair
|
from solders.keypair import Keypair
|
||||||
from solders.message import Message
|
from solders.message import Message
|
||||||
from solders.pubkey import Pubkey
|
from solders.pubkey import Pubkey
|
||||||
from solders.system_program import TransferParams, transfer
|
|
||||||
from solders.transaction import Transaction, VersionedTransaction
|
from solders.transaction import Transaction, VersionedTransaction
|
||||||
from spl.token.instructions import get_associated_token_address
|
from spl.token.instructions import get_associated_token_address
|
||||||
|
|
||||||
@@ -148,7 +147,7 @@ async def buy_token(
|
|||||||
break
|
break
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(
|
print(
|
||||||
f"Attempt {ata_attempt + 1} to create associated token account failed: {str(e)}"
|
f"Attempt {ata_attempt + 1} to create associated token account failed: {e!s}"
|
||||||
)
|
)
|
||||||
if ata_attempt < max_retries - 1:
|
if ata_attempt < max_retries - 1:
|
||||||
wait_time = 2**ata_attempt
|
wait_time = 2**ata_attempt
|
||||||
@@ -235,7 +234,7 @@ async def buy_token(
|
|||||||
|
|
||||||
|
|
||||||
def load_idl(file_path):
|
def load_idl(file_path):
|
||||||
with open(file_path, "r") as f:
|
with open(file_path) as f:
|
||||||
return json.load(f)
|
return json.load(f)
|
||||||
|
|
||||||
|
|
||||||
@@ -370,7 +369,7 @@ async def main():
|
|||||||
token_price_sol = calculate_pump_curve_price(curve_state)
|
token_price_sol = calculate_pump_curve_price(curve_state)
|
||||||
|
|
||||||
# Amount of SOL to spend (adjust as needed)
|
# Amount of SOL to spend (adjust as needed)
|
||||||
amount = 0.00001 # 0.00001 SOL
|
amount = 0.000_001 # 0.00001 SOL
|
||||||
slippage = 0.3 # 30% slippage tolerance
|
slippage = 0.3 # 30% slippage tolerance
|
||||||
|
|
||||||
print(f"Bonding curve address: {bonding_curve}")
|
print(f"Bonding curve address: {bonding_curve}")
|
||||||
|
|||||||
@@ -7,10 +7,11 @@ from construct import Flag, Int64ul, Struct
|
|||||||
from solana.rpc.async_api import AsyncClient
|
from solana.rpc.async_api import AsyncClient
|
||||||
from solana.rpc.commitment import Confirmed
|
from solana.rpc.commitment import Confirmed
|
||||||
from solana.rpc.types import TxOpts
|
from solana.rpc.types import TxOpts
|
||||||
|
from solders.compute_budget import set_compute_unit_price
|
||||||
from solders.instruction import AccountMeta, Instruction
|
from solders.instruction import AccountMeta, Instruction
|
||||||
from solders.keypair import Keypair
|
from solders.keypair import Keypair
|
||||||
|
from solders.message import Message
|
||||||
from solders.pubkey import Pubkey
|
from solders.pubkey import Pubkey
|
||||||
from solders.system_program import TransferParams, transfer
|
|
||||||
from solders.transaction import Transaction
|
from solders.transaction import Transaction
|
||||||
from spl.token.instructions import get_associated_token_address
|
from spl.token.instructions import get_associated_token_address
|
||||||
|
|
||||||
@@ -170,14 +171,13 @@ async def sell_token(
|
|||||||
)
|
)
|
||||||
sell_ix = Instruction(PUMP_PROGRAM, data, accounts)
|
sell_ix = Instruction(PUMP_PROGRAM, data, accounts)
|
||||||
|
|
||||||
recent_blockhash = await client.get_latest_blockhash()
|
msg = Message([set_compute_unit_price(1_000), sell_ix], payer.pubkey())
|
||||||
transaction = Transaction()
|
|
||||||
transaction.add(sell_ix)
|
|
||||||
transaction.recent_blockhash = recent_blockhash.value.blockhash
|
|
||||||
|
|
||||||
tx = await client.send_transaction(
|
tx = await client.send_transaction(
|
||||||
transaction,
|
Transaction(
|
||||||
payer,
|
[payer],
|
||||||
|
msg,
|
||||||
|
(await client.get_latest_blockhash()).value.blockhash,
|
||||||
|
),
|
||||||
opts=TxOpts(skip_preflight=True, preflight_commitment=Confirmed),
|
opts=TxOpts(skip_preflight=True, preflight_commitment=Confirmed),
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -188,7 +188,7 @@ async def sell_token(
|
|||||||
return # Success, exit the function
|
return # Success, exit the function
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"Attempt {attempt + 1} failed: {str(e)}")
|
print(f"Attempt {attempt + 1} failed: {e!s}")
|
||||||
if attempt < max_retries - 1:
|
if attempt < max_retries - 1:
|
||||||
wait_time = 2**attempt # Exponential backoff
|
wait_time = 2**attempt # Exponential backoff
|
||||||
print(f"Retrying in {wait_time} seconds...")
|
print(f"Retrying in {wait_time} seconds...")
|
||||||
@@ -199,10 +199,10 @@ async def sell_token(
|
|||||||
|
|
||||||
async def main():
|
async def main():
|
||||||
# Replace these with the actual values for the token you want to sell
|
# Replace these with the actual values for the token you want to sell
|
||||||
mint = Pubkey.from_string("EyLuyWV5N1GVSqLLeumFDWYkmmSkLED5s2xqu37Lpump")
|
mint = Pubkey.from_string("7aXYndxpkHRU9xg1hyAE6z3X3KYPc2LR3dJMzYTSpump")
|
||||||
bonding_curve = Pubkey.from_string("AGZLYVwmGL9cXCLN4C3ki9hXGix1kXYjr59B2H7jwRMQ")
|
bonding_curve = Pubkey.from_string("5UYdCZigGDyAh1doCW8FdnA7VwJTJePayTLCyZkAWMxg")
|
||||||
associated_bonding_curve = Pubkey.from_string(
|
associated_bonding_curve = Pubkey.from_string(
|
||||||
"74H2bo2hjNnWgf9oDHzsVsu3mcsoiYYWJ3s9dVnL5erV"
|
"BS2RUaPXjQpfzncizvmEfnARZG6SNp1imXnv5USA7PMA"
|
||||||
)
|
)
|
||||||
|
|
||||||
slippage = 0.25 # 25% slippage tolerance
|
slippage = 0.25 # 25% slippage tolerance
|
||||||
|
|||||||
Reference in New Issue
Block a user