mirror of
https://github.com/discountry/ritmex-bot.git
synced 2026-09-09 08:18:07 +00:00
新增一键安装脚本和相关说明,简化用户安装和配置流程,支持自动安装 Bun、依赖及生成 .env 文件。
This commit is contained in:
@@ -10,6 +10,23 @@
|
||||
|
||||
遇到Bug,返回问题,请到 [Telegram群组](https://t.me/+4fdo0quY87o4Mjhh)
|
||||
|
||||
一键安装并启动(macOS / Linux):
|
||||
```bash
|
||||
chmod +x ./setup.sh && ./setup.sh
|
||||
```
|
||||
脚本会自动安装 Bun、安装依赖、引导输入 API Key/Secret,生成 `.env` 并启动程序。
|
||||
|
||||
Windows 使用 WSL(推荐):
|
||||
1. 先安装并启用 WSL,参考微软官方文档:[在 Windows 上安装 WSL](https://learn.microsoft.com/zh-cn/windows/wsl/install)
|
||||
2. 在 Microsoft Store 安装 Ubuntu(或其他 Linux 发行版),打开 “Ubuntu” 终端。
|
||||
3. 在 WSL 中运行一键脚本:
|
||||
```bash
|
||||
git clone https://github.com/discountry/ritmex-bot.git
|
||||
cd ritmex-bot
|
||||
chmod +x ./setup.sh && ./setup.sh
|
||||
```
|
||||
按提示输入 ASTER_API_KEY / ASTER_API_SECRET,脚本将自动安装 Bun、依赖并启动程序。
|
||||
|
||||
1. **下载代码**
|
||||
- 如果会使用 Git:`git clone https://github.com/discountry/ritmex-bot.git`
|
||||
- 如果不会使用 Git:点击仓库页面的 `Code` → `Download ZIP`,将压缩包解压到如 `桌面/ritmex-bot` 的目录。
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# One-click setup for ritmex-bot (Linux/macOS)
|
||||
# - Ensures Bun is installed
|
||||
# - Installs dependencies
|
||||
# - Prompts for API credentials
|
||||
# - Generates .env
|
||||
# - Starts the bot
|
||||
|
||||
main() {
|
||||
require_unix
|
||||
ensure_bun
|
||||
install_deps
|
||||
prompt_env
|
||||
write_env
|
||||
echo
|
||||
echo "✅ Setup complete. Starting ritmex-bot..."
|
||||
echo
|
||||
start_bot
|
||||
}
|
||||
|
||||
require_unix() {
|
||||
case "$(uname -s)" in
|
||||
Linux|Darwin) ;;
|
||||
*) echo "This script supports only Linux and macOS." >&2; exit 1 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
ensure_bun() {
|
||||
if command -v bun >/dev/null 2>&1; then
|
||||
echo "✔ Bun found: $(bun --version)"
|
||||
return
|
||||
fi
|
||||
echo "ℹ Bun not found. Installing Bun..."
|
||||
if [ "$(uname -s)" = "Darwin" ] && command -v brew >/dev/null 2>&1; then
|
||||
brew install bun
|
||||
else
|
||||
# Non-interactive install via official script
|
||||
curl -fsSL https://bun.sh/install | bash
|
||||
# shellcheck disable=SC1090
|
||||
if [ -f "$HOME/.bun/bun" ] || [ -d "$HOME/.bun" ]; then
|
||||
export BUN_INSTALL="$HOME/.bun"
|
||||
export PATH="$BUN_INSTALL/bin:$PATH"
|
||||
fi
|
||||
fi
|
||||
if ! command -v bun >/dev/null 2>&1; then
|
||||
echo "❌ Failed to install Bun. Please install it manually from https://bun.sh" >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "✔ Bun installed: $(bun --version)"
|
||||
}
|
||||
|
||||
install_deps() {
|
||||
echo "Installing dependencies with Bun..."
|
||||
bun install
|
||||
}
|
||||
|
||||
prompt_env() {
|
||||
echo
|
||||
echo "Please enter your AsterDex API credentials."
|
||||
read -r -p "ASTER_API_KEY: " ASTER_API_KEY
|
||||
read -r -s -p "ASTER_API_SECRET (input hidden): " ASTER_API_SECRET
|
||||
echo
|
||||
read -r -p "TRADE_SYMBOL (default BTCUSDT): " TRADE_SYMBOL || true
|
||||
TRADE_SYMBOL=${TRADE_SYMBOL:-BTCUSDT}
|
||||
|
||||
# Optional trading parameters
|
||||
read -r -p "TRADE_AMOUNT (default 0.001): " TRADE_AMOUNT || true
|
||||
TRADE_AMOUNT=${TRADE_AMOUNT:-0.001}
|
||||
read -r -p "LOSS_LIMIT (default 0.03): " LOSS_LIMIT || true
|
||||
LOSS_LIMIT=${LOSS_LIMIT:-0.03}
|
||||
read -r -p "KLINE_INTERVAL (default 1m): " KLINE_INTERVAL || true
|
||||
KLINE_INTERVAL=${KLINE_INTERVAL:-1m}
|
||||
}
|
||||
|
||||
write_env() {
|
||||
local env_file=".env"
|
||||
echo "Writing ${env_file}..."
|
||||
cat > "${env_file}" <<EOF
|
||||
# Generated by setup.sh
|
||||
ASTER_API_KEY=${ASTER_API_KEY}
|
||||
ASTER_API_SECRET=${ASTER_API_SECRET}
|
||||
TRADE_SYMBOL=${TRADE_SYMBOL}
|
||||
TRADE_AMOUNT=${TRADE_AMOUNT}
|
||||
LOSS_LIMIT=${LOSS_LIMIT}
|
||||
KLINE_INTERVAL=${KLINE_INTERVAL}
|
||||
|
||||
# Optional maker params (uncomment and tune as needed)
|
||||
# MAKER_LOSS_LIMIT=0.03
|
||||
# MAKER_PRICE_CHASE=0.3
|
||||
# MAKER_BID_OFFSET=0
|
||||
# MAKER_ASK_OFFSET=0
|
||||
# MAKER_REFRESH_INTERVAL_MS=1500
|
||||
# MAKER_MAX_CLOSE_SLIPPAGE_PCT=0.05
|
||||
# MAKER_PRICE_TICK=0.1
|
||||
EOF
|
||||
echo "✔ .env created at $(pwd)/${env_file}"
|
||||
}
|
||||
|
||||
start_bot() {
|
||||
# Bun auto-loads .env; no need to run dotenv explicitly
|
||||
bun run start
|
||||
}
|
||||
|
||||
main "$@"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user