很多自動化程式至今仍只能在 Windows 上執行:交易終端、沒有 Linux 版本的桌面工具、巨集軟體,還有您們社群多年前用 C# 寫的那個機器人。很多服務也仍然按 IP 決定信任誰:綁定到某個位址的交易所 API 金鑰、帶白名單的合作方介面、回撥固定主機的 webhook。
當兩者同時成立時,您需要一台擁有獨立公用 IPv4 的 Windows 伺服器。這就是這種設定。
您會得到什麼
一台 Windows Server 2022 VPS,帶獨立 IPv4。RDP 在您自己位址的標準 3389 埠上監聽;您在 Windows 防火牆中開放的每個埠都可以從網際網路存取。
有兩個方案合適:
| 方案 | vCPU / 記憶體 / 磁碟 | 價格 |
|---|---|---|
| Windows Small-IP | 4 / 4 GB / 50 GB | $28/月 |
| Windows Medium-IP | 6 / 6 GB / 60 GB | $36/月 |
一兩個機器人選 Small-IP 就對了。Windows 空閒時約佔 2 GB 記憶體,所以 4 GB 中留給您軟體的大約是 2 GB——跑一個終端或 .NET 機器人足夠,跑開很多分頁的 Chromium 自動化就有點緊。這時候 Medium-IP 多出的 $8 就物有所值。
如果沒有任何外部系統需要存取您的伺服器,也沒人要把它的位址加入白名單,Windows NAT 方案更便宜(每月 $11 起),並透過個人埠提供 RDP。不要為用不上的 IP 付費。
授權
映像是自備授權的 Windows Server 2022:首次登入後用您自己的金鑰啟用,重灌後需再次啟用。關於作業系統本身的一切——版本、啟用、更新——都在 Windows Server 頁面上。本頁講的是如何讓機器人持續執行。
讓機器人保持線上
Windows 上大多數「機器人半夜停了」的故事,都可以歸結為三件事。
登出而不是斷開連線。 關閉 RDP 視窗會斷開工作階段,程式繼續執行。選擇 Sign out(登出)則會結束它們。養成直接關視窗的習慣。
沒有開機啟動。 Windows 會重新啟動——為了更新、重灌之後、維護之後。讓機器人隨機器一起啟動。對於控制台程式,一個觸發器為 At startup、並設定為 Run whether user is logged on or not 的計畫任務就夠了:
$a = New-ScheduledTaskAction -Execute "C:\bots\mybot.exe" -WorkingDirectory "C:\bots"
$t = New-ScheduledTaskTrigger -AtStartup
Register-ScheduledTask -TaskName "mybot" -Action $a -Trigger $t -User "SYSTEM" -RunLevel Highest
需要桌面的圖形介面程式更麻煩:它們需要一個已登入使用者的工作階段。對於這類程式,為一個專用使用者開啟自動登入,並從該使用者的「啟動」資料夾啟動程式。
在錯誤的時間更新。 在 Windows 更新中設定 Active hours(使用時段),覆蓋機器人最繁忙的時間段,這樣重新啟動就不會落在中間。
IP 方面
您的 IPv4 在伺服器整個生命週期內保持不變,重灌後也一樣——這正是白名單需要的。把它填進交易所 API 金鑰的設定裡就完成了。如果合作方需要符合的反向 DNS 名稱,可以在控制面板中自行設定。需要給另一個機器人或服務配第二個位址?可以以每月 $5 加到同一台伺服器上——見更換 IP 位址。
有兩個限制需要提前考慮。Windows 方案的埠為 150 Mbit/s,不限流量——對 API 機器人來說綽綽有餘,見流量與網路速度。另外,所有方案預設關閉對外郵件埠 25 和 465,所以發郵件的機器人應透過郵件服務供應商的 587 埠傳送。
付款與開始
用電子郵件註冊,用 USDC、USDT、BTC 或其他加密貨幣付款,或在結帳時用信用卡購買加密貨幣。伺服器通常在付款後幾分鐘內就緒,Administrator 密碼會在控制面板中顯示一次。如果您弄丟了密碼,或者用防火牆規則把自己鎖在外面,重設密碼和使用網頁控制台可以讓您不提交工單就重新進入。透過 RDP 連線介紹了首次登入;如果您的機器人做交易,用於加密貨幣交易的 Windows VPS 會更深入地討論終端和延遲。
評論
目前還沒有評論。歡迎成為第一位。