Skip to content

Latest commit

 

History

History
142 lines (95 loc) · 4.31 KB

File metadata and controls

142 lines (95 loc) · 4.31 KB

🎯 PumpFun 内盘自动交易示例

在 PumpFun bonding curve 上使用多 SWQoS:买入 → 等待 → 卖出

适用于尚未毕业到 PumpSwap、仍在 PumpFun bonding curve 上的代币。私钥通过 PRIVATE_KEYconfig/*/solana.yamlprivate_key 配置。

GitHub stars

Rust Solana PumpFun

中文 | English | 仓库总览

提示:代币已 毕业到 PumpSwap 外盘 时,请使用 pumpswap_trade / pumpswap_trade_with_safekey


← 返回仓库总览


📋 目录

  • 何时使用本示例
  • 功能特性 · 安装 · 配置 · 运行 · 构建
  • 与 PumpSwap 示例的区别

何时使用本示例

使用 pumpfun_trade 请改用 pumpswap_trade
代币仍在 PumpFun 内盘(bonding curve) 代币已 毕业 到 PumpSwap 外盘 AMM
PumpFunParams::from_mint_by_rpc 能成功 需要按 mint 查找 池地址 走 PumpSwap

若误对内盘示例传入已毕业 mint,程序在「解析 bonding curve」步骤会失败。


功能特性

  1. 协议DexType::PumpFun,链上参数通过 PumpFunParams::from_mint_by_rpc 获取;卖出前再次拉取,避免 creator_vault 等字段过期。
  2. 流程:买入 → 等待约 30 秒 → 按钱包该 mint 的全部余额卖出;默认 1 轮(修改 src/run.rsROUNDSREST_SECS)。
  3. 多 SWQoSDurable Nonce(≥2 个 SWQoS 时必填有效 nonce)、trading.yaml 滑点与 Gas 配置——与 pumpswap_trade 一致。
  4. Nonce 占位solana.yamlbuy_nonce_accounts: [""] 等空串会被忽略,可仅用环境变量 NONCE_ACCOUNT

安装

git clone https://github.com/0xfnzero/fnzero-examples.git
cd fnzero-examples/pumpfun_trade

需安装 Rust / Cargo:https://rustup.rs


配置

运行前必做:从模板生成本地文件(勿提交;见仓库根目录 README_CN.md「运行前准备与隐私」):

cp .env.example .env
cp config/dev/solana.yaml.example config/dev/solana.yaml
cp config/dev/trading.yaml.example config/dev/trading.yaml
# prod 环境同理复制 config/prod/*.example

再编辑 .envyamlPRIVATE_KEYSOLANA_RPC_URL、SWQoS api_tokennonce_config 等。交易参数在 trading.yaml(买入金额、滑点、Gas)。

钱包与 SWQoS 细则可参考 pumpswap_trade/README_CN.md(仅协议与 mint 不同)。


运行

./run.sh <MINT_ADDRESS>
#
cargo run --release -- <MINT_ADDRESS>

环境变量 APP_ENV=dev|prod 决定读取 config/devconfig/prod


构建

本目录 .cargo/config.toml 将产物输出到 build-cache/release/

cargo build --release
./build-cache/release/pumpfun_trade <MINT_ADDRESS>

Linux 部署包:

./build-linux-release.sh

与 PumpSwap 示例的区别

项目 pumpfun_trade pumpswap_trade
DEX PumpFun 内盘 PumpSwap 外盘
池子 无独立 pool;由 mint 推导 bonding curve find_pool_by_mint 查池
Mint 要求 未毕业内盘币 已在外盘有池

加密钱包版本见 pumpfun_trade_with_safekey/README_CN.md


📄 许可证

MIT License


💬 联系方式