IPRoyal 轮换 IP Python 实战:自动切换 + 失败重试完整代码

IPRoyal 住宅 IP 池有 2000 万+ IP,关键是怎么用。粘性(Sticky)一个 IP 用 30 分钟适合账号登录场景,轮换(Rotating)每次请求换 IP 适合爬虫、批量注册、反风控。本文用 Python 实现轮换 + 重试的完整方案。 两种模式区别 模式 IP 切换频率 适用场景 Sticky 每 10/30 分钟换一次 账号登录、API 调用、量化持续会话 Rotating 每次请求随机换 爬虫、批量注册、反风控 IPRoyal 后台可以生成两种模式的代理凭证。 Rotating 代理凭证格式 登录 IPRoyal Dashboard → Residential → Generate → 选 Rotating → 拿到: Proxy: gw.iproyal.com Port: 12321 Username: YOUR_USER Password: YOUR_PASS_country-us_session-rotate session-rotate 是关键:每次发请求都会从池子里抓新 IP。 Python 基础用法 import requests proxy_url = "http://USER:[email protected]:12321" proxies = {"http": proxy_url, "https": proxy_url} for i in range(5): r = requests.get("https://ipinfo.io/json", proxies=proxies, timeout=10) print(f"Request {i+1}: {r.json()['ip']} ({r.json().get('city')})") 预期输出: ...

2026-04-19 · 3 min · 525 words · Panshi

用 Claude 写 Binance API 自动风控脚本:爆仓前 3 小时预警

💡 国内提示:Binance 官网在中国大陆无法直连,访问需自备网络工具;法币入金不支持银行卡,主要走 C2C(USDT↔CNY)通道完成。 加密圈有句话:“爆仓不是突然的事,是慢慢恶化的结果”。爆仓前 2-4 小时维持保证金率(MMR)通常已经很危险了,但很多人因为手机没通知,等看到时已经被强平。 这篇用 Claude Code 写了一个小脚本监控 Binance U 本位合约账户的保证金健康度,低于阈值时立即 Telegram 推送。完整代码 + 部署。 需求描述(给 Claude) 写一个 Python 脚本监控 Binance 合约账户: 1. 用 Binance API Key(只勾"读取"权限)查 U 本位合约账户 2. 算每个开仓的 "维持保证金率" 维持保证金率 = 维持保证金 / 账户余额 3. 整个账户的健康度: - 安全:账户余额/总维持保证金 > 5 - 警戒:2-5 - 危险:< 2(大概率爆仓进程启动) 4. 危险时立即 Telegram 推送(含仓位明细 + 当前 MMR) 5. 每 10 分钟跑一次 6. 用环境变量存 API key,不写死在代码里 一稿即可用的代码 binance_risk_monitor.py: ...

2026-04-19 · 3 min · 545 words · Panshi

用 Claude Code 给 Pionex 机器人加智能监控:边沿预警 + Telegram 推送

⚠️ 注册门槛:Pionex 不支持中国大陆身份证通过 KYC,需持有台湾 / 新加坡 / 马来西亚 / 美国等地有效证件。参考 Pionex 受限地区官方说明。 Pionex 网格机器人跑了 4 个月,最大的痛点是到达区间边沿时没有预警。价格上穿 / 下穿区间机器人会自动停,但你不知道什么时候需要手动干预(重配区间或暂停)。 解决方法:写一个小脚本监控价格,到达边沿前预警。我用 Claude Code 从零写到跑起来花了 25 分钟,把过程和最终代码都放出来。 为什么要 Claude Code 写 比起自己从头想: 我不熟悉 Pionex API(Claude 查文档比我快) Telegram Bot API 我记不住细节(Claude 会直接出正确代码) 我倾向于过度设计,Claude 会给"最小可用"版本 调试环节 Claude 看报错直接改 整个过程就是对 Claude 说人话,它输出代码 + 解释。 需求定义(我给 Claude 的) 写一个 Python 脚本: 1. 每 5 分钟查 BTC/USDT 和 XAU/USDT 的当前价格 2. 如果价格接近预设区间的上沿或下沿(10% 以内),推送 Telegram 3. 推送内容含:当前价、区间、距离边沿百分比 4. 配置放在环境变量:TG_TOKEN, TG_CHAT_ID, BOT_CONFIGS 5. BOT_CONFIGS 是 JSON,格式: [ {"symbol": "BTC/USDT", "low": 60000, "high": 70000, "name": "BTC 网格"}, {"symbol": "XAU/USDT", "low": 3400, "high": 3600, "name": "黄金网格"} ] 6. 用 Binance 公开 API 查价格(Pionex 用的价格源和 Binance 一致) 7. 部署到 Mac,用 launchd 每 5 分钟跑 Claude 输出的代码(几乎一稿过) 文件 1:pionex_monitor.py ...

2026-04-19 · 3 min · 575 words · Panshi

量化策略止损参数研究方法论:如何用历史数据找到最优止损距离

止损距离是量化策略里最难确定的参数之一。太紧频繁被扫止损,太松单次亏损超预期。 凭直觉设参数没有说服力。更可靠的方法是:用历史数据系统地研究不同止损距离对策略表现的影响,找到在多个评估维度上表现均衡的参数区间。 这篇文章讲这个研究过程的方法论,包括数据准备、参数搜索、评估指标、以及防止过拟合的注意事项。 研究框架 1. 数据准备 ├─ 选取历史数据区间(训练集) └─ 准备价格序列和信号序列 2. 参数网格搜索 ├─ 定义止损参数范围(如 0.5% - 5%,步长 0.1%) └─ 对每个参数值跑完整回测 3. 评估指标计算 ├─ 总收益率 ├─ 最大回撤 ├─ 夏普比率 ├─ 胜率 × 盈亏比 └─ 止损触发率 4. 结果分析 ├─ 绘制参数敏感性曲线 ├─ 找稳健区间(小变化 → 小影响) └─ 在验证集上验证 5. 确定最终参数 数据准备 import pandas as pd import numpy as np from binance.client import Client def get_klines(symbol: str, interval: str, start: str, end: str) -> pd.DataFrame: """获取 Binance K 线数据""" client = Client() # 公开数据不需要 API 密钥 klines = client.get_historical_klines(symbol, interval, start, end) df = pd.DataFrame(klines, columns=[ 'timestamp', 'open', 'high', 'low', 'close', 'volume', 'close_time', 'quote_vol', 'trades', 'taker_buy_base', 'taker_buy_quote', 'ignore' ]) for col in ['open', 'high', 'low', 'close', 'volume']: df[col] = df[col].astype(float) df['timestamp'] = pd.to_datetime(df['timestamp'], unit='ms') df.set_index('timestamp', inplace=True) return df # 获取数据:分成训练集和验证集(时间序列不能随机分割!) df_train = get_klines("BTCUSDT", "4h", "2023-01-01", "2024-06-30") # 训练集 df_val = get_klines("BTCUSDT", "4h", "2024-07-01", "2024-12-31") # 验证集 为什么不能随机分割? ...

2026-04-15 · 4 min · 660 words · Panshi

量化工具栈:Binance API + Grafana + 自动化告警全套配置

跑一个量化策略需要的不只是策略本身——还需要一套支撑它运行、监控它状态、在出问题时及时告警的工具链。这篇文章分享我的完整工具栈,从策略执行到告警通知。 整体架构 策略层(Python) ↓ 交易指令 Binance API ↓ 执行结果 状态文件 / CF KV ↓ 指标 Prometheus + node_exporter ↓ 存储 Grafana 可视化 ↓ 告警规则 Alertmanager → Telegram 策略执行层 技术栈 语言:Python 3.11 Binance SDK:python-binance 定时任务:APScheduler 或系统 cron 依赖管理:requirements.txt + venv 目录结构 quant/ ├── strategy/ │ ├── main.py # 主策略逻辑(信号生成 + 下单) │ ├── signals.py # 指标计算(技术指标库) │ └── risk.py # 仓位管理、止损逻辑 ├── exchange/ │ └── binance_client.py # Binance API 封装 ├── monitor/ │ └── exporter.py # 状态指标写入 Prometheus 格式 ├── config/ │ └── settings.py # 配置(从环境变量读取) └── run.py # 入口 关键代码:状态指标暴露 策略运行时,把关键指标写成 Prometheus textfile 格式,供 node_exporter 抓取: ...

2026-04-15 · 3 min · 520 words · Panshi

用 Gemini CLI 自动巡检服务器集群:Python + SSH + Telegram 推送实战

管理多台 VPS 时,每天检查一遍状态是刚需:磁盘快满了、某个服务挂了、内存用量异常……这些如果不主动检查,可能等到出了问题才发现。 这篇文章讲一个实际方案:Python 脚本 SSH 到各台服务器采集指标 → Gemini CLI 分析异常 → Telegram Bot 推送日报。 整个流程每天定时跑一次,不需要手动干预。 架构 定时任务(cron) └─ Python 巡检脚本 ├─ SSH 到每台服务器 │ └─ 采集:CPU / 内存 / 磁盘 / 服务状态 / 近期错误日志 ├─ 汇总成文本报告 ├─ 调用 Gemini CLI 分析报告(找异常、给建议) └─ 发送到 Telegram Bot 前置准备 1. 安装 Gemini CLI npm install -g @google/gemini-cli gemini auth # 用 Google 账号登录 验证: ...

2026-04-15 · 4 min · 814 words · Panshi

Binance API 从零到第一笔下单:完整教程

💡 国内提示:Binance 官网在中国大陆无法直连,访问需自备网络工具;法币入金不支持银行卡,主要走 C2C(USDT↔CNY)通道完成。 Binance API 是量化交易的起点。如果你想让策略自动执行——自动买入、自动止损、自动监控仓位——都需要通过 API 实现。 这篇文章从零开始,覆盖申请 API Key、安全配置、Python 环境搭建,到发出第一个查询和第一笔(测试)订单。不假设你有量化经验,跟着做能跑通。 准备工作 已完成 Binance 账号 KYC 实名认证 Python 3.8+(python --version 确认) 已完成双重验证(2FA),建议用 Google Authenticator Binance 注册:→ 注册 Binance(通过推荐链接注册可享手续费返佣) 申请 API Key 步骤 登录 Binance,点击右上角头像 → API 管理 点击"创建 API" 选择"系统生成(推荐)" 输入 API 标签(名称),点击下一步 完成 2FA 验证 保存 API Key 和 Secret Key 重要:Secret Key 只显示一次,页面关闭后无法再次查看。必须立即保存到安全位置(密码管理器)。 ...

2026-04-15 · 2 min · 423 words · Panshi