Polymarket-bot 是 MrFadiAi 開源的 TypeScript 自動交易機器人,在 Polymarket 預測市場上同時運行四種策略:套利、逢低買進、跟單聰明錢、直接下單。每一筆下單前都會通過每日、每月、回撤、總虧損四層風險上限,並提供 localhost:3001 視覺化儀表板與 dry-run 模擬模式。
Polymarket-bot 是一個自動交易機器人,目標市場是 Polymarket——以 Polygon 上 USDC 結算的預測市場。它把四種交易策略包進同一個執行迴圈:Arbitrage(套利)、DipArb(逢低買進)、Smart Money(跟單聰明錢)、Direct Trading(直接下單),並在每筆下單前加上一層風險檢查。
它要解決的問題是:預測市場的機會出現得快、結算邏輯固定,但人工盯盤與下單跟不上。這個機器人把訊號偵測、部位大小、風險上限、下單與監控自動化,並用 DRY_RUN 模式讓你在投入真實資金前先空跑驗證。整個程式以 TypeScript 寫成,主進入點是 bot-with-dashboard.ts,啟動後會一併開啟一個本機儀表板。
風控是這個專案的重點。它內建四層虧損上限——每日、每月、回撤、總虧損——以及動態部位大小、最低 $1.50 交易門檻(確保有足夠流動性出場)。跟單策略還會先過濾交易對象:勝率須達 60% 以上、獲利因子 1.5 倍、並通過一致性檢查,才會被複製。
前置需求:Node.js 環境與一個 Polygon 上、持有 USDC 的錢包私鑰。依序執行以下指令,先安裝主程式,再建置儀表板,最後用 npx tsx 啟動。
在 .env 設定錢包私鑰、起始資金與風險上限。第一次啟動時把 DRY_RUN 設為 true,機器人會走完整個決策流程但不送出真實訂單。
DRY_RUN 改為 false。私鑰寫在 .env 內,切勿提交到版本庫。
機器人提供四種可獨立開關的交易策略,搭配一組風控與監控元件。下表列出每一項的角色與用途。所有策略共用同一套風險上限與部位大小邏輯。
| 你想做什麼 | 適合的策略 |
|---|---|
| 捕捉市場定價落差 | Arbitrage |
| 在價格回落時找進場點 | DipArb |
| 複製高勝率交易者 | Smart Money |
| 自己決定方向與標的 | Direct Trading |
以下為 README 記載的風控與安全機制,並非社群實測技巧。每一條都對應程式中既有的保護邏輯。
每日 5%、每月 15%、回撤 25%、總虧損 40%。任一上限觸發後機器人停止開新倉,避免單日或單月的連續虧損擴大。
依官方 README · 風控設定Smart Money 策略只複製通過門檻的對象:勝率 60% 以上、獲利因子 1.5 倍、並通過一致性檢查,降低跟到運氣帳戶的機率。
依官方 README · Smart Money部位規模隨連續勝負調整。連敗時自動縮小單筆下注,連勝時才放大,讓資金曲線在逆風時更平緩。
依官方 README · 部位管理每筆交易設有 $1.50 下限,確保部位規模足以在需要時平倉出場,而不會卡在無法成交的微小倉位。
依官方 README · 交易門檻把 DRY_RUN 設為 true,機器人會完整跑過策略與風控判斷但不送單。用於驗證設定與行為,再決定是否投入真實資金。
localhost:3001 儀表板提供策略開關、緊急停止與一鍵平倉(panic sell),讓你在市況異常時能立即介入。
依官方 README · Dashboard
以下示範從設定 .env、啟動機器人、在儀表板觀察策略與風控,到關閉 dry-run 的流程。命令使用 repo 實際的啟動方式;市場數字僅為情境說明,非實際結果。
預測市場的下單是不可逆的鏈上交易。dry-run 讓你在不冒資金風險的前提下,先確認策略訊號、部位大小與風控上限的實際行為。儀表板則提供實盤時的即時監控與緊急介入。先驗證、後實盤,是降低自動交易風險最直接的一步。
POLYMARKET_PRIVATE_KEY 寫在 .env,擁有錢包完整控制權。切勿提交到版本庫或分享,建議使用獨立的交易專用錢包。
機器人的行為大多透過 .env 與 bot-config.ts 控制,不必改動核心程式碼即可調整風險上限、起始資金與策略開關。
1. 調整風控參數。在 .env 修改 DAILY_MAX_LOSS_PCT、MONTHLY_MAX_LOSS_PCT 等上限,讓風險容忍度符合你的資金規模。
2. 從 dry-run 轉實盤。確認策略與風控行為後,把 DRY_RUN 改為 false。建議先用小額 CAPITAL_USD 起步。
3. 逐一開關策略。透過儀表板或設定,先單獨跑一種策略觀察表現,再決定是否同時啟用多個。
4. 研究 poly-sdk 與 examples。repo 內含 poly-sdk/ 與 examples/,是理解下單封裝與自訂行為的入口。