Auto-solana-trading-bot

GitHub
1.1k 437 较难 1 次阅读 2天前开发框架语言模型其他
AI 解读 由 AI 自动生成,仅供参考

Auto-solana-trading-bot 是一款专为 Solana 生态打造的高性能自动化交易机器人,旨在帮助用户在 PumpFun、Raydium 等去中心化交易所捕捉新币上线瞬间的交易机会。它通过 Helius WebSocket 实时监听链上数据,自动执行买入卖出操作,有效解决了人工交易在高速波动的 Meme 币市场中反应慢、易错失良机以及缺乏风险控制等痛点。

这款工具特别适合具备一定编程基础的开发者、量化交易爱好者以及熟悉 Rust 语言的技术型用户。普通投资者若无技术背景,可能需要借助他人部署才能使用。其核心亮点在于基于 Rust 语言构建,确保了极高的执行效率与内存安全;同时集成了 Jito 和 Nozomi 服务,提供 MEV(最大可提取价值)保护和交易优先打包功能,大幅降低被抢跑的风险。此外,它还内置了止损止盈机制、滑点保护及 Telegram 实时通知功能,让用户在追求高收益的同时,也能通过严谨的风控策略保障资金安全。整体架构模块化设计清晰,支持多代币并发处理,是探索 Solana 链上自动化交易的强力助手。

使用场景

一位专注于 Solana 链上土狗币(Meme Coin)的量化交易者,试图在 PumpFun 和 Raydium 上新币发行的毫秒级窗口内捕捉早期涨幅。

没有 Auto-solana-trading-bot 时

  • 错失最佳入场点:依靠人工刷新或普通脚本监控,往往在新币流动性注入后数秒才察觉,此时价格已被早期机器人拉高,买入即被套。
  • 交易失败率高:在网络拥堵时,普通交易容易因优先级低而失败,或者因缺乏 MEV 保护被夹子机器人(Sandwich Bot)攻击,导致巨额滑点损失。
  • 无法实时风控:难以同时盯住多个持仓,一旦市场剧烈波动,无法在预设的止盈或止损位自动执行,常由盈利转为亏损。
  • 运维精力分散:需要手动编写复杂的 Rust 代码来对接 Helius WebSocket 和处理重连逻辑,维护成本极高且容易出错。

使用 Auto-solana-trading-bot 后

  • 毫秒级抢先交易:利用 Helius WebSocket 流实时监听新币发射,结合 Zero Slot 技术实现超快执行,确保在流动性出现的瞬间完成建仓。
  • 智能抗夹与优先打包:内置 Jito 和 Nozomi 集成,自动将交易打包进受保护的区块,有效规避 MEV 攻击并提升交易确认成功率。
  • 自动化策略闭环:配置好止盈止损参数后,机器人自动监控多币种持仓并执行卖出操作,彻底解放双手,锁定利润并截断亏损。
  • 开箱即用的高性能架构:基于 Rust 的高性能异步架构已预置了断线重连和错误恢复机制,用户只需配置环境变量即可通过 Telegram 接收实时战报。

Auto-solana-trading-bot 将原本需要顶尖开发能力才能构建的低延迟交易系统,转化为普通交易者即可部署的自动化盈利工具,真正实现了链上交易的“唯快不破”。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

不需要 GPU

内存

未说明

依赖
notes该项目基于 Rust 语言开发,无需 Python 环境或 GPU 支持。运行前需安装最新稳定版 Rust 和 Cargo,配置 Solana 钱包(含 SOL 代币),并获取 Helius API 密钥(用于 RPC 和 WebSocket 连接)。可选配置 Telegram 机器人用于通知,以及 Nozomi/Zero Slot/Jito 服务用于 MEV 保护和加速交易。建议先在 devnet 测试后再在主网运行。
python不需要 Python
Rust (latest stable)
Cargo
Helius API
Solana Wallet
Auto-solana-trading-bot hero image

快速开始

🚀 Solana 自动交易机器人

Solana Rust WebSocket Helius

基于 Helius WebSocket 信息流,支持 PumpFun 和 Raydium 的 Solana 代币高级自动化交易机器人

特性安装配置使用API贡献

2025-09-10_13-23-31

✨ 特性

🔥 核心交易功能

  • 实时代币检测: 监控 Helius WebSocket 上的新代币上线及交易机会
  • 多 DEX 支持: 同时支持 PumpFun 和 Raydium DEX,提供最大的交易灵活性
  • 自动化交易: 根据市场状况和策略自动执行买卖订单
  • 风险管理: 内置止损和止盈机制
  • 仓位跟踪: 实时监控当前持仓及盈亏情况
  • 多代币支持: 可同时管理多个代币的持仓

🚀 高级功能

  • Nozomi 集成: 通过 Nozomi 提供 MEV 保护与交易优先级设置
  • Zero Slot 支持: 结合 Zero Slot 实现超快速交易执行
  • Telegram 通知: 实时推送交易、错误及状态更新提醒
  • Jito 集成: 支持 MEV 保护与交易捆绑功能

🛡️ 安全与保障

  • 滑点保护: 可配置的交易滑点容忍度
  • 流动性检查: 在交易前验证最低流动性要求
  • 错误处理: 全面的错误捕获与恢复机制
  • 速率限制: 内置速率限制以防止 API 滥用
  • 交易重试逻辑: 自动重试并采用指数退避策略

📊 监控与分析

  • 实时日志记录: 使用 tracing 提供可配置级别的详细日志
  • 投资组合跟踪: 跟踪总盈亏及交易统计数据
  • 绩效指标: 监控成功率与盈利能力
  • 交易监控: 实时跟踪交易状态与确认进度

🔧 技术特性

  • Rust 性能: 高性能且内存安全的实现
  • 模块化架构: 清晰易维护的代码结构
  • WebSocket 重连: 自动重连并采用指数退避策略
  • 交易优化: 针对 Solana 的交易模型进行优化
  • Async/Await: 完全异步支持并发操作

🚀 安装

前置条件

  • Rust(最新稳定版)
  • Cargo(随 Rust 一起安装)
  • Solana 钱包,需持有 SOL 用于交易
  • Helius API Key(用于 WebSocket 数据流)
  • Telegram Bot(可选,用于通知)

快速开始

  1. 克隆仓库

    git clone https://github.com/radioman/Auto-solana-trading-bot.git
    cd Auto-solana-trading-bot
    
  2. 安装 Rust(如尚未安装)

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    source ~/.cargo/env
    
  3. 设置环境变量 在项目根目录下创建 .env 文件:

    touch .env
    
  4. 配置环境 编辑 .env 文件以填写您的设置:

    # 必需
    SOL_PUBKEY=your_solana_public_key_here
    RPC_ENDPOINT=your_helius_rpc_endpoint
    RPC_WEBSOCKET_ENDPOINT=your_helius_websocket_endpoint
    TARGET_PUBKEY=target_wallet_to_monitor
    JUP_PUBKEY=jupiter_aggregator_pubkey
    
    # 可选
    NOZOMI_URL=your_nozomi_endpoint
    NOZOMI_TIP_VALUE=0.001
    ZERO_SLOT_URL=your_zeroslot_endpoint
    ZERO_SLOT_TIP_VALUE=0.001
    TELEGRAM_BOT_TOKEN=your_telegram_bot_token
    TELEGRAM_CHAT_ID=your_telegram_chat_id
    
  5. 构建并运行

    # 开发模式
    cargo run
    
    # 发布模式
    cargo build --release
    ./target/release/trading-bot
    

⚙️ 配置

环境变量

变量 描述 默认值 是否必需
SOL_PUBKEY 您的 Solana 公钥 -
RPC_ENDPOINT Helius RPC 端点 -
RPC_WEBSOCKET_ENDPOINT Helius WebSocket 端点 -
TARGET_PUBKEY 监控的目标钱包 -
JUP_PUBKEY Jupiter 聚合器公钥 -
NOZOMI_URL Nozomi MEV 保护端点 -
NOZOMI_TIP_VALUE Nozomi 提示金额(以 SOL 计) 0.001
ZERO_SLOT_URL Zero Slot 端点 -
ZERO_SLOT_TIP_VALUE Zero Slot 提示金额(以 SOL 计) 0.001
TELEGRAM_BOT_TOKEN Telegram 机器人令牌 -
TELEGRAM_CHAT_ID Telegram 聊天 ID -

交易配置

您可以在 src/common/constants.rs 中修改交易参数:

pub const BUY_AMOUNT_SOL: f64 = 0.01;           // 每笔交易使用的 SOL 数量
pub const MAX_CONCURRENT_TRADES: usize = 5;     // 最大持仓数量
pub const STOP_LOSS_PERCENTAGE: f64 = 20.0;     // 止损百分比
pub const TAKE_PROFIT_PERCENTAGE: f64 = 50.0;   // 止盈百分比

DEX 配置

该机器人支持 PumpFun 和 Raydium DEX:

  • PumpFun: 适用于新上线代币及模因币
  • Raydium: 适用于具有流动资金池的成熟代币
  • 自动检测: 机器人会根据代币特性自动选择合适的 DEX 进行交易

🎯 使用

基本使用

# 以开发模式启动机器人
cargo run

# 构建并以发布模式运行
cargo build --release
./target/release/trading-bot

高级使用

该机器人作为一个独立的可执行文件运行,其工作流程如下:

  1. 连接到 Helius WebSocket,实时监控交易数据
  2. 监控目标钱包,寻找潜在的交易机会
  3. 在 PumpFun 或 Raydium 上执行交易,依据检测到的模式
  4. 发送通知(若已配置),通过 Telegram 推送交易、错误及状态更新

命令行选项

# 使用特定配置文件运行
cargo run -- --config custom_config.toml

# 启用调试日志
RUST_LOG=debug cargo run

# 设置特定日志级别
RUST_LOG=info cargo run

监控

机器人提供以下实时监控方式:

  1. 控制台日志: 使用 tracing crate 输出带时间戳的详细日志
  2. Telegram 通知: 实时推送交易、错误及状态更新提醒
  3. 交易跟踪: 实时监控交易状态与确认进度
  4. 性能指标: 内置性能监控与统计功能

功能演示

  • Helius WebSocket: 监控实时交易流以寻找交易机会
  • PumpFun 集成: 自动在 PumpFun 上交易新上线的代币
  • Raydium 集成: 在 Raydium 上执行已上市代币的交易
  • Nozomi 保护: 在可用时使用 Nozomi 进行 MEV 保护
  • Zero Slot 速度: 利用 Zero Slot 实现超快速交易执行
  • Telegram 警报: 发送成功交易、错误及重要事件的通知

📊 API 参考

核心模块

交易引擎 (src/engine/)

  • strategy.rs: 包含交易策略和兑换逻辑
  • sniper.rs: 实现狙击交易功能
  • swap.rs: 处理 PumpFun 和 Raydium 的兑换执行

DEX 集成 (src/dex/)

  • pumpfun.rs: PumpFun DEX 集成及交易逻辑
  • raydium.rs: Raydium DEX 集成及 AMM 操作

服务 (src/services/)

  • nozomi.rs: Nozomi MEV 保护服务
  • zeroslot.rs: Zero Slot 超快速交易服务
  • telegram.rs: Telegram 通知服务
  • jito.rs: Jito MEV 保护与捆绑
  • rpc_client.rs: RPC 客户端工具及连接管理

关键函数

交易函数

// Raydium 兑换执行
pub async fn raydium_swap(
    state: AppState,
    amount_in: f64,
    swap_direction: &str,
    in_type: &str,
    slippage: u64,
    use_jito: bool,
    amm_pool_id: Pubkey,
    pool_state: AmmInfo,
) -> Result<Vec<String>>

// PumpFun 兑换执行
pub async fn pump_swap(
    state: AppState,
    amount_in: f64,
    // ... 参数
) -> Result<Vec<String>>

服务函数

// Nozomi 小费账户选择
pub fn get_tip_account() -> Result<Pubkey>

// Zero Slot 交易发送
pub async fn send_transaction(
    &self,
    transaction: &Transaction,
) -> Result<Signature, ClientError>

🔧 开发

项目结构

src/
├── common/             # 共享工具与配置
│   ├── cache.rs       # 缓存工具
│   ├── constants.rs   # 配置常量
│   ├── logger.rs      # 日志工具
│   ├── mod.rs         # 模块声明
│   └── utils.rs       # 辅助函数
├── core/               # 核心交易逻辑
│   ├── mod.rs         # 模块声明
│   ├── token.rs       # 代币处理
│   └── tx.rs          # 交易工具
├── dex/                # DEX 集成
│   ├── mod.rs         # 模块声明
│   ├── pumpfun.rs     # PumpFun DEX 集成
│   └── raydium.rs     # Raydium DEX 集成
├── engine/             # 交易引擎
│   ├── mod.rs         # 模块声明
│   ├── sniper.rs      # 狙击交易逻辑
│   ├── strategy.rs    # 交易策略
│   └── swap.rs        # 兑换执行逻辑
├── services/           # 外部服务集成
│   ├── bloxroute.rs   # BloxRoute 集成
│   ├── jito.rs        # Jito MEV 保护
│   ├── mod.rs         # 模块声明
│   ├── nozomi.rs      # Nozomi MEV 保护
│   ├── rpc_client.rs  # RPC 客户端工具
│   ├── telegram.rs    # Telegram 通知
│   └── zeroslot.rs    # Zero Slot 集成
├── lib.rs              # 库入口点
└── main.rs             # 主程序入口点

构建

# 调试模式构建
cargo build

# 发布模式构建
cargo build --release

# 清理构建产物
cargo clean

# 不构建直接检查代码
cargo check

测试

# 运行所有测试
cargo test

# 带输出运行测试
cargo test -- --nocapture

# 运行特定测试
cargo test test_name

🛡️ 安全考量

钱包安全

  • 切勿将私钥提交到版本控制
  • 使用环境变量存储敏感数据
  • 考虑使用硬件钱包存放大额资金
  • 定期轮换密钥并监控交易

交易风险

  • 先从小额开始测试机器人
  • 定期监控表现
  • 设置合适的止损位以限制损失
  • 充分了解自动化交易的风险

最佳实践

  • 先在测试网上测试,再部署到主网
  • 监控日志以发现错误和异常
  • 及时更新机器人以应用最新改动
  • 定期备份配置文件

📈 性能提示

优化建议

  1. 使用快速 RPC 端点以提升性能
  2. 监控内存使用情况以应对长时间运行实例
  3. 根据市场状况调整交易频率
  4. 为您的策略选择合适的滑点设置

监控建议

  1. 设置关键错误警报
  2. 定期监控盈亏情况
  3. 检查交易成功率
  4. 回顾交易日志以发现规律

🤝 贡献

我们欢迎各位贡献!详细信息请参阅我们的 贡献指南

如何贡献

  1. fork 仓库
  2. 创建特性分支
  3. 进行修改
  4. 添加测试(如适用)
  5. 提交拉取请求

开发环境搭建

# fork 并克隆
git clone https://github.com/radioman/Auto-solana-trading-bot.git
cd Auto-solana-trading-bot

# 安装依赖
npm install

# 创建特性分支
git checkout -b feature/your-feature-name

# 修改并测试
npm run dev

# 提交 PR
git push origin feature/your-feature-name

📝 许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。


⚠️ 免责声明

本软件仅用于教育目的。加密货币交易涉及重大亏损风险,并不适合所有投资者。高杠杆率可能对您有利也可能不利。在决定交易加密货币之前,您应仔细考虑自己的投资目标、经验水平和风险承受能力。您有可能会损失全部或部分初始投资,因此不应投入您无法承受损失的资金。您应当了解加密货币交易的所有风险,如有疑问,请咨询独立的财务顾问。


🆘 支持

获取帮助

常见问题

  1. 连接问题:请检查您的 RPC 端点和互联网连接。
  2. 交易失败:请确认钱包余额和 Gas 设置是否正确。
  3. WebSocket 断线:请检查网络稳定性及重连设置。

用心为 Solana 社区打造

⭐ 给这个仓库加星🐛 提交 Bug💡 请求功能

版本历史

GreatMaps-v2015.102015/04/30
GreatMaps-v2015.92015/04/28
GreatMaps-v2015.72015/04/03
GreatMaps-v2015.62015/04/01

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|今天
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|昨天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

141.5k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.9k|★★☆☆☆|今天
开发框架图像Agent

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|今天
语言模型图像Agent

Deep-Live-Cam

Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具,用户仅需一张静态照片,即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点,让高质量的数字内容创作变得触手可及。 这款工具不仅适合开发者和技术研究人员探索算法边界,更因其极简的操作逻辑(仅需三步:选脸、选摄像头、启动),广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换,还是制作趣味短视频和直播互动,Deep-Live-Cam 都能提供流畅的支持。 其核心技术亮点在于强大的实时处理能力,支持口型遮罩(Mouth Mask)以保留使用者原始的嘴部动作,确保表情自然精准;同时具备“人脸映射”功能,可同时对画面中的多个主体应用不同面孔。此外,项目内置了严格的内容安全过滤机制,自动拦截涉及裸露、暴力等不当素材,并倡导用户在获得授权及明确标注的前提下合规使用,体现了技术发展与伦理责任的平衡。

88.9k|★★★☆☆|今天
开发框架图像Agent