Skip to content

rfk1118/bn_postion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Binance Position Monitor

币安合约持仓实时监控工具,用于监控 USDT 合约账户的持仓情况和盈亏状态。

功能特点

  • 实时监控:每 5 秒自动刷新持仓数据
  • 盈亏统计:显示各个持仓的未实现盈亏,以及总盈利、总亏损和总盈亏
  • 语音提醒
    • 当单个仓位超过 50,000 USDT 时语音提醒
    • 当总亏损超过 20,000 USDT 时语音提醒
    • 当 1 分钟内网络错误超过 5 次时语音提醒
  • 网络异常监控:自动检测和记录网络错误,防止频繁告警
  • 优雅退出:支持 Ctrl+C 安全退出程序

环境要求

  • Node.js 16+
  • TypeScript 5.x

安装

  1. 克隆项目
git clone <repository-url>
cd bn_postion
  1. 安装依赖
npm install
  1. 配置环境变量

在项目根目录创建 .env 文件,添加币安 API 凭证:

BINANCE_API_KEY=your_api_key_here
BINANCE_API_SECRET=your_api_secret_here

使用方法

开发模式

npm run dev

生产模式

# 编译
npm run build

# 运行
npm start

输出示例

--------------------------------------
[2025-10-14 09:50:00] BTCUSDT: 150.50 USDT
[2025-10-14 09:50:00] ETHUSDT: -80.30 USDT
[2025-10-14 09:50:00] 总盈亏: 70.20 USDT
[2025-10-14 09:50:00] 盈利总和: 150.50 USDT
[2025-10-14 09:50:00] 亏损总和: -80.30 USDT
--------------------------------------

配置说明

监控参数

可在 src/index.ts 中调整以下参数:

  • 刷新间隔5000 毫秒(第 107 行)
  • 大仓位阈值50000 USDT(第 60 行)
  • 亏损警告阈值-20000 USDT(第 81 行)
  • 网络错误告警阈值:1 分钟内 5 次(第 46 行)

语音设置

默认使用 "Tingting" 语音(中文女声)。可在代码中修改为其他语音:

  • macOS: "Tingting", "Sinji" 等
  • 其他系统:参考 node-say 文档

项目结构

bn_postion/
├── src/
│   └── index.ts          # 主程序文件
├── dist/                 # 编译输出目录
├── node_modules/         # 依赖包
├── .env                  # 环境变量配置(需自行创建)
├── .gitignore
├── package.json
├── tsconfig.json
└── README.md

依赖说明

  • binance: 币安官方 API 客户端
  • dotenv: 环境变量管理
  • say: 文本转语音库
  • typescript: TypeScript 编译器
  • ts-node-dev: 开发模式热重载

安全提示

  • 请妥善保管 .env 文件,不要提交到版本控制系统
  • API Key 建议设置为只读权限,不需要交易权限
  • 建议在币安 API 管理中限制 IP 白名单

许可证

ISC

注意事项

  1. 本工具仅用于监控持仓,不提供交易功能
  2. 语音提醒功能需要系统支持 TTS(文本转语音)
  3. 网络不稳定时可能出现短暂的数据获取失败,程序会自动重试
  4. 退出程序请使用 Ctrl+C,避免强制终止

About

临时睡午觉时候用,需要配合电话使用

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •