# 简明上手指南(给零基础小白) 这份文档一步一步教你在 Windows 或 macOS 本地把项目跑起来:从下载代码、安装工具、配置环境变量(.env)、获取 Aster API,到运行项目。每一步都尽量写得很直白。 --- ## 1. 下载代码(两种方式) - 方式 A:使用 Git(推荐) 1) 安装 Git: - Windows:到 `https://git-scm.com/download/win` 下载并安装,一路“下一步”。 - macOS:打开“终端”(Terminal),输入 `git --version` 看是否已自带。如果提示未安装,会引导你安装 Xcode Command Line Tools,按提示安装即可。 2) 打开命令行: - Windows:开始菜单搜索“PowerShell”或“Windows Terminal”→ 打开。 - macOS:按 `⌘ + 空格` 搜索“Terminal”→ 打开。 3) 在命令行输入(会把代码下载到当前目录下的 ritmex-bot 文件夹): ```bash git clone https://github.com/discountry/ritmex-bot.git ``` - 方式 B:不用 Git,直接下压缩包 1) 打开项目页面:`https://github.com/discountry/ritmex-bot` 2) 点绿色的 `Code` 按钮 → `Download ZIP` 3) 下载后解压到一个好找的位置,例如: - Windows:`C:\Users\你的用户名\Desktop\ritmex-bot` - macOS:`~/Desktop/ritmex-bot` --- ## 2. 安装 VS Code(代码编辑器) - 下载地址:`https://code.visualstudio.com/` - Windows/macOS 都可以一路“下一步”安装。 - 安装完成后,打开 VS Code,点“文件 → 打开文件夹(Open Folder)”,选中你刚下载/解压的 `ritmex-bot` 文件夹。 --- ## 3. 安装 Bun(运行环境) 项目使用 Bun 作为运行环境(类似 Node.js,但更快,命令更简单)。 - macOS / Linux:在“终端”输入: ```bash curl -fsSL https://bun.sh/install | bash ``` 安装后请关闭并重新打开终端,再输入 `bun -v`,能看到版本号就说明成功。 - Windows(PowerShell): ```powershell powershell -c "irm bun.sh/install.ps1 | iex" ``` 安装后关闭并重新打开 PowerShell,输入 `bun -v` 出现版本号即成功。 - 如果上述办法不行,去 Bun 官网查看其他方式:`https://bun.com/get` - 首次进入项目目录后,安装依赖: ```bash bun install ``` --- ## 4. 找到项目目录,并在命令行跳转过去 - 你需要知道 `ritmex-bot` 文件夹具体在哪。 - Windows 常见路径:`C:\Users\你的用户名\Desktop\ritmex-bot` - macOS 常见路径:`~/Desktop/ritmex-bot` - 命令行使用 `cd` 跳转: ```bash # macOS 示例 cd ~/Desktop/ritmex-bot # Windows 示例(注意替换“你的用户名”) cd C:\Users\你的用户名\Desktop\ritmex-bot ``` - 成功进入后,输入 `ls`(macOS)或 `dir`(Windows)应能看到 `package.json`、`index.ts` 等文件。 --- ## 5. 配置环境变量(.env 文件) 项目运行需要你的 Aster API 密钥,以及一些策略参数。Bun 会自动读取根目录的 `.env` 文件。 1) 在项目根目录创建 `.env` 文件(如果没有的话)。可以先复制下面这份最小示例: ```bash # 复制以下内容到 .env(用记事本/VS Code 打开也可以) ASTER_API_KEY=在这里填你的Key ASTER_API_SECRET=在这里填你的Secret # 可选参数(都有默认值,不填也能跑) TRADE_SYMBOL=BTCUSDT TRADE_AMOUNT=0.001 LOSS_LIMIT=0.03 TRAILING_PROFIT=0.2 TRAILING_CALLBACK_RATE=0.2 PROFIT_LOCK_TRIGGER_USD=0.1 PROFIT_LOCK_OFFSET_USD=0.05 PRICE_TICK=0.1 QTY_STEP=0.001 ``` 2) 在 Windows 下怎么编辑 `.env`? - 方法 A:在 VS Code 左侧资源管理器里右键新建文件,命名为 `.env`,然后把上面的内容粘贴进去保存。 - 方法 B:在资源管理器勾选“查看 → 显示文件扩展名”,然后新建文本文件,重命名为 `.env`(注意不要叫 `.env.txt`)。用记事本或 VS Code 打开,把内容粘贴进去保存。 3) 这些变量的作用(知道大概即可): - `ASTER_API_KEY` / `ASTER_API_SECRET`:你在 Aster 交易所申请的 API 凭证(必填)。 - `TRADE_SYMBOL`:交易对,默认 `BTCUSDT`。 - `TRADE_AMOUNT`:每次下单的数量。 - `LOSS_LIMIT`:每笔最大允许亏损(美元计)。 - `TRAILING_PROFIT` / `TRAILING_CALLBACK_RATE`:移动止盈的触发值与回撤百分比。 - `PROFIT_LOCK_*`:达到一定浮盈后,自动把基础止损往有利方向移动的参数。 - `PRICE_TICK` / `QTY_STEP`:该交易对的最小价格变动单位和最小下单步长。 > 进阶:做市策略还有一些 `MAKER_*` 参数(如 `MAKER_PRICE_CHASE`、`MAKER_REFRESH_INTERVAL_MS` 等),需要时可在 `src/config.ts` 查到名称并按需加到 `.env` 重写默认值。 --- ## 6. 去哪里获取 Aster 的 API Key/Secret? - 打开 Aster 的 API 管理页面:`https://www.asterdex.com/zh-CN/api-management` - 登录后创建新的 API,记录下 `API Key` 和 `Secret` 并填入 `.env`。 - 权限仅勾选你需要的,谨慎保管。不要把 `.env` 上传到任何地方。 --- ## 7. 运行项目(命令) 确保你已在项目根目录,并且 `.env` 已配置好: ```bash bun install # 第一次运行需要安装依赖 bun run index.ts # 启动程序(等同于 npm run start,但我们用 Bun) ``` 启动后,终端里会出现一个交互界面: - 使用键盘 ↑ / ↓ 选择“趋势策略”或“做市策略”,回车启动。 - 按 `Esc` 返回菜单。 - 按 `Ctrl + C` 退出程序。 如果你更喜欢用脚本,也可以: ```bash bun run start # 或 bun run dev ``` --- ## 8. 常见问题(简单排查) - 运行时报错“缺少 ASTER_API_KEY/SECRET”:说明 `.env` 没正确配置或没被读取。确认 `.env` 在项目根目录,变量名拼写无误。 - 终端显示连不上:检查你的网络是否能访问 `wss://fstream.asterdex.com/ws` 和 `https://fapi.asterdex.com`。 - 显示权限错误/下单失败:到 Aster 后台检查 API 权限,确认已开启合约交易相关权限。 - 界面卡着没反应:请在“真”终端里运行(Windows Terminal、PowerShell、macOS Terminal),不要在只读的输出窗口里运行。 - API 填写错误(Key/Secret 格式问题): - 确认 `.env` 中没有多余空格、引号或换行。示例: ```bash ASTER_API_KEY=你的Key ASTER_API_SECRET=你的Secret ``` - 避免中文标点或全角字符;从网页复制后,先粘到纯文本再粘回。 - 修改 `.env` 后,重新打开终端或重新运行命令以生效。 - 本地时间与交易所时间不同步(签名/时间戳错误): - 现象:HTTP 4xx 提示 `timestamp expired` / `invalid signature`。 - macOS:系统设置 → 通用 → 日期与时间 → 开启“自动设置日期与时间”。 - Windows:设置 → 时间和语言 → 日期和时间 → 开启“自动设置时间”,并点击“立即同步”。 - 命令行快速同步(可选): - macOS: ```bash sudo sntp -sS time.apple.com ``` - Windows(管理员 PowerShell): ```powershell w32tm /resync ``` - Linux: ```bash sudo timedatectl set-ntp true ``` - 无法访问外网/需要代理: - 现象:`curl https://bun.sh` 超时、连接 `fapi.asterdex.com` / `fstream.asterdex.com` 失败。 - 临时为当前终端配置代理(按本地代理端口调整 7890/1080 等): - macOS / Linux: ```bash export HTTP_PROXY=http://127.0.0.1:7890 export HTTPS_PROXY=http://127.0.0.1:7890 ``` - Windows PowerShell: ```powershell $env:HTTP_PROXY="http://127.0.0.1:7890" $env:HTTPS_PROXY="http://127.0.0.1:7890" ``` - 验证连通性: ```bash curl -I https://fapi.asterdex.com ``` - 公司/校园网络可能屏蔽 WebSocket(wss://);必要时切换到个人网络或 VPN。 - 下单精度/步长或交易对不匹配: - 现象:下单被拒,提示精度/步长错误。 - 处理:在 `.env` 中调整 `TRADE_SYMBOL`、`PRICE_TICK`、`QTY_STEP` 与交易所规则一致。 --- ## 9. 风险提示 量化策略并非稳赚不赔。请从小额开始,先在仿真或小资金环境验证,逐步加大。务必妥善保管 API 密钥,并只开启必要权限。