源文件:research/quant_digests/2026-04-15_0152_binance-listing-poloniex-catchup-alpha.md
先回答 base alpha:这不是“又一个自动化公告机器人”,而是一条能独立成立的 event-driven raw alpha——Binance 上新公告本身就是公开催化剂,若同币在别的 venue 已可交易,那条腿通常会先被动补涨。
这轮主材料是 2025 GitHub repo CyberPunkMetalHead/new-listings-trading-bot。repo 表面上是在做“监听 Binance 公告、去 Poloniex 市价买入”,但对 desk 更有价值的 intake 不是 C# 工程壳,而是背后的 公告→跨 venue 重估 逻辑:
Poloniex)1m / 3m 高强度 alpha,而不是 15m 慢节奏 carry/pairsrepo 的公开结构也很清楚:
ListingsGetterService.cs:直接轮询 Binance 公告 APIBuyListingWorker.cs:检测到 will list 就抓 ticker 并下市价单ExitStrategyWorker.cs:用固定止损 + 动态 trailing take-profit 管理离场Program.cs:写死接入 Poloniexappsettings.example.json:给出默认 BuyAmount=20、StopLoss=1%、TakeProfit=1%所以这轮最该记住的不是“这个 bot 能不能直接跑真钱”,而是:公开公告本身就是事件源,listing 前的跨 venue 可交易腿就是 lagging leg。
listing-phase overheat short 不是一回事:那篇赌的是上线几天后的过热回落;这篇赌的是公告后几分钟的先手补涨。ExitStrategyWorker.cs 里的卖出单还把 IsBuy 写成了 true,说明工程实现本身需要先修。repo 的核心链路非常直接:
ListingsGetterService.cs 轮询 Binance 公告接口:/bapi/apex/v1/public/apex/cms/article/list/query?type=1&pageNo=1&pageSize=10will list 的公告\(([A-Z]+)\) 从公告标题里抽 tickerPoloniex)对 ${symbol}_USDT 下 市价买单TakeProfitPrice = entry * (1 + TP%)StopLossPrice = entry * (1 - SL%)ExitStrategyWorker.cs 每秒轮询一次当前价:翻成人话就是: > 事件确认后,立刻买 lagging venue;如果继续冲,就跟着抬 trailing stop;如果冲不动就很快认错。
这是一条非常典型的 public event → cross-venue repricing raw alpha,不是 filter,也不是只给别的策略做 overlay。
因为它把 alpha 本体讲得很清楚:
所以它本质上更像:
event-drivencross-venue lead-lagsingle-asset catch-up momentum而不是传统的 pairs / basis / funding 玩法。
否不是因为它没有 entry/exit——它其实都有;而是因为它离 production 还差几块关键砖:
ExitStrategyWorker.cs 的“卖出”分支里 ExchangeOrderRequest.IsBuy = trueFees = 0所以更合理的结论是: > alpha 本体清楚、执行壳雏形也有,但现在更像可复现 skeleton,不像已经能直接上线的完整策略。
这轮对当前 desk 有直接价值,而且不是重复最近的 pairs / funding / XS 主题:
1m / 3m 事件驱动 raw alpha 素材池。最近 intake 里很多是持续型 alpha(pairs、carry、cross-sectional)。这条线则是稀缺的“触发式 alpha”:平时不交易,一旦来事件就要求极快响应。
不是“可能有点情绪影响”,而是:Binance 上新公告 → 其他 venue 同币补涨。
即便最后不做 listing,这条 skeleton 也可以迁到:
announcement == will list 且外部 venue 已有可交易市场时激活min quote depth / max spread / fresh listing age / announcement category whitelist如果 Binance 首次发布某币“will list”公告,而该币在 Poloniex/Bybit/KuCoin 等 venue 已可交易,那么公告后 1m / 3m / 5m / 15m 的 forward return 会显著偏正;其中真正可交易的 edge 主要活在最初几分钟。
1m bar + announcement timestamp 做 event studytrades/BBO 做 latency/cost stress test第一版先做最简单的 event study:
1~2 年 Binance will list 公告t0:公告 API 首次出现该标题的时间t0+1m、t0+3m 两档5m / 15m / 60m1% trailing / 1% stop-loss15m 最大回撤至少同时跑这四组:
15m 才买,估计 edge 衰减这条线不要先看 Sharpe,先看:
net bps / eventannouncement-to-entry latencyspread + slippage as % of gross movewin rate in first 5m / 15mtime-to-peakavailability ratio(有多少公告对应外部 venue 真有可交易腿)1m event study,确认 edge 是否集中在 0~5m 还是还能活到 15~60m。1m study 显示 gross edge 足够厚,再加 spread / fee / slippage / latency 四件套做 friction ladder。15m 连续交易主线。\(([A-Z]+)\) 抽 ticker,遇到多个 ticker 或公告格式变化时需要额外清洗。Fees=0,卖出分支的 IsBuy=true 也说明这更像概念验证,不是上线版。Repo URL: https://github.com/CyberPunkMetalHead/new-listings-trading-bot
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/readme.md
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/Program.cs
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/Workers/BuyListingWorker.cs
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/Workers/ExitStrategyWorker.cs
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/Services/ListingsGetterService.cs
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/Services/ExchangeService.cs
Readable URL: https://raw.githubusercontent.com/CyberPunkMetalHead/new-listings-trading-bot/main/appsettings.example.json
research/quant_digests/2026-04-15_0152_binance-listing-poloniex-catchup-alpha.md