版本:2026-11-04 | 適用:全套 zip 內所有元件
這本手冊從零開始,一步一步帶你把整套系統裝起來、每天怎麼用、出問題怎麼查。每一節開頭有「你需要什麼」和「做完會得到什麼」。沒有碰過主機也沒關係,照著打就好。
| 資料夾 | 內容 | 跑在哪 | 用途 |
|---|---|---|---|
1_原版POC指標與EA/ |
poc_signal_原版.pine、POC_Intraday_EA.mq5 |
TradingView、MT5 | 看圖、MT5 回測 |
2_雲端機器人/ |
poc_bot/、poc_bot.zip |
Oracle 主機 | 24 小時產生信號,推播到 ntfy 與 Discord |
3_獲利模組包/ |
modules_pack/(246 個資料夾)、POC獲利模組目錄.md |
TradingView、主機 | 每個模組獨立的指標與機器人設定 |
4_回測平台/ |
回測中心、三個回測台 HTML | 任何瀏覽器 | 看回測結果(不裝也能開) |
5_文件/ |
交接文件、策略手冊、安裝教學 | — | 參考 |
6_自架平台/ |
poc_web/、poc_web.zip |
Oracle 主機 | 帳號密碼登入的交易日誌+回測中心網站 |
資料怎麼流動:
幣安行情 ──► poc_bot(主機)──► ntfy 手機 App
│ └► Discord 機器人(/status /modules /report …)
├─ backtest.py ──► backtest.json / report.html / modules.html
└─ 實盤紀錄 live_trades.jsonl ──► live.json
│
poc_web(主機,8080 埠)◄───────────────┘ 自動讀取,顯示在回測中心
├─ 交易日誌(帳號密碼、截圖、筆記)
└─ 回測中心(01 POC、02 EA、03 模組)
MT5 策略測試器 ──► 報告 .html/.xlsx ──► 02 EA 回測台(手動載入)
建議安裝順序:第 1 節(連主機)→ 第 2 節(機器人)→ 第 5 節(自架平台),其他依需要。
你需要什麼:Windows 電腦、金鑰檔 pocbot.key(在 C:\Users\USER\)、主機 IP 168.138.195.111。
做完會得到什麼:一個黑色視窗,開頭是 ubuntu@pocbot:~$,之後所有「在主機上」的指令都在這裡打。
PowerShell,按 Enter。ssh -i $HOME\pocbot.key ubuntu@168.138.195.111Are you sure you want to continue connecting (yes/no)?,輸入 yes 按 Enter。ubuntu@pocbot:~$ 就是連上了。| 畫面出現 | 原因 | 怎麼辦 |
|---|---|---|
No such file or directory |
金鑰不在那個位置 | 執行 dir $HOME\*.key、dir $HOME\Downloads\*.key 找到檔案,把路徑換掉 |
UNPROTECTED PRIVATE KEY FILE / bad permissions |
金鑰權限太寬 | 依序執行:icacls $HOME\pocbot.key /inheritance:r 再 icacls $HOME\pocbot.key /grant:r "$($env:USERNAME):(R)",然後重連 |
Connection timed out |
主機沒開 | 到 Oracle 網頁 Compute → Instances,確認 pocbot 是綠色 Running,不是就按 Start |
Permission denied (publickey) |
金鑰不對或帳號打錯 | 確認帳號是 ubuntu、金鑰是建主機時下載的那把 |
在電腦的 PowerShell(不是主機裡)執行,檔名.zip 換成實際檔名,zip 放在「下載」資料夾:
scp -i $HOME\pocbot.key $HOME\Downloads\檔名.zip ubuntu@168.138.195.111:~
看到 100% 就是傳好了。然後再用 1.1 的指令連進主機。
lscd poc_bot;回家目錄:cd ~nano 檔名,改完按 Ctrl+O、Enter 存檔,Ctrl+X 離開exit你需要什麼:主機連線、手機裝好 ntfy App、(選用)Discord 伺服器、FRED API 金鑰。 做完會得到什麼:機器人 24 小時跑,手機和 Discord 會收到信號、套保、止盈、止損、暴漲暴跌警告。
2_雲端機器人/poc_bot.zip 傳上主機(1.3)。cd ~ && unzip -o poc_bot.zip && cd poc_bot && chmod +x install.sh && ./install.sh
會安裝 Python 環境、設定台北時區、建立開機自啟的服務 pocbot。sudo systemctl restart pocbot。cp ~/poc_bot/config.yaml ~/config.backup.yaml
cd ~ && unzip -o poc_bot.zip
cp ~/config.backup.yaml ~/poc_bot/config.yaml
cd ~/poc_bot && ./venv/bin/pip install -r requirements.txt
sudo systemctl restart pocbot
第一行備份你的設定,第三行還原,這樣不會被新版的空白設定蓋掉。state.json(單號流水號、模組累計)會保留,不要刪。
開啟:nano ~/poc_bot/config.yaml
| 區塊 | 欄位 | 填什麼 |
|---|---|---|
ntfy |
topic |
必填。手機 ntfy App 訂閱的主題名稱,取別人猜不到的,例如 poc-k7x2m9q。 |
discord |
bot_token |
Discord 機器人 Token(見 2.5)。留空就不用機器人。 |
channel_id |
要發信號的頻道 ID;留空會自動選名稱含「信號/signal」的頻道。 | |
owner_ids |
可用 /pause /resume 的使用者 ID;留空=伺服器管理員。 |
|
webhook_url |
只想單向發訊息時改填 Webhook 網址(有 bot_token 就以機器人為主)。 | |
news |
fred_key |
建議填。到 https://fred.stlouisfed.org 免費註冊 → My Account → API Keys 申請。用來讀官方公布值。 |
impacts |
監看的數據重要度,預設 [High]。 |
|
nq_hawk |
數據偏鷹時納指與加密貨幣方向,預設 偏空。 |
|
morning_summary |
每天早上 8 點推播今日數據。 | |
products |
每個商品 | enabled: false 可關掉某商品。max_sl 只能更小不能更大(黃金 10、納指 100、BTC 1000、ETH 40)。納指 price_scale = MT5 US100 價格 ÷ 幣安 QQQUSDT 價格,偶爾更新。 |
modules |
track |
true=246 個模組在背景靜默累計。 |
live |
要推播的模組 ID,例如 ["M002", "M017"];all=全部(很多)。 |
|
routes |
模組專屬頻道,見 2.8。 | |
strategy |
main_enabled |
false=不推主策略只推模組。其他參數是打法細節,預設即可。 |
存檔後一定要 sudo systemctl restart pocbot。
topic → 訂閱。cd ~/poc_bot && ./venv/bin/python bot.py --test,手機應收到「POC 測試」。bot_token)。bot 和 applications.commandsSend Messages、Embed Links、Attach Files、Read Message Historychannel_id。sudo systemctl restart pocbot,頻道會出現「POC 信號機器人啟動」。/ 應該看到指令清單(第一次同步可能要等 1 分鐘,或重開 Discord)。| 指令 | 用途 |
|---|---|
/status |
各商品最新價、盤面、持倉、數據是否更新 |
/positions |
目前持倉與掛單(單號、入場、SL、TP、浮動損益) |
/today |
今天每一單與合計 R |
/modules |
246 個模組自機器人啟動以來的累計排行 |
/report |
把實盤信號紀錄做成回測台報表(report_live.html、modules_live.html、live.json)上傳 |
/news |
今日重要數據與判讀 |
/pause /resume |
暫停/恢復發新信號(管理員) |
【黃金|做多|#XAU-012】趨勢回測(VWAP/POC 共振+Delta)
MT5:XAUUSD
時間:11/04 21:35(美盤・流動性高)
標籤:① 維加斯順向・VWAP 斜率順向・強 Delta・常態日・帶內
入場:市價(參考 3995.20)
SL:−6.40 點(3988.80)
TP1:+9.60 點(1.50R)
TP2:+16.00 點(2.50R)
TP3:+22.40 點(3.50R)
套保:K 棒收盤達 +6.40 點 或 TP1 先到 → SL 移至入場 +0.64 點
出場管理:TP1 減倉 50%,TP2 後 SL 移至 TP1
#XAU-012 是單號,之後的套保、TP、止損訊息都會帶同一個單號。XAU-M012-003。modules:
live: ["M002", "M017"]
routes:
M002: {discord_channel: "頻道ID", ntfy_topic: "poc-m002-xxxx", only: true}
"①": {discord_channel: "頻道ID"} # 整個打法 ① 的模組都發到這
only: true=只發專屬頻道,不混進主頻道。客戶買哪個模組就給他那個 ntfy 主題或 Discord 頻道。
sudo systemctl status pocbot # 是否運作中(active (running) 為正常)
sudo journalctl -u pocbot -n 50 # 最近 50 行日誌
sudo journalctl -u pocbot -f # 即時看日誌(Ctrl+C 離開)
sudo systemctl restart pocbot # 重啟
cd ~/poc_bot && ./venv/bin/python bot.py --test # 測推播、行情、日曆、FRED
cd ~/poc_bot && ./venv/bin/python bot.py --replay # 用最近 3 天歷史跑一遍印出信號
你需要什麼:機器人已安裝(第 2 節)。
做完會得到什麼:report.html(主策略)、modules.html(246 模組)、backtest.json、trades.csv、modules_catalog.md;自架平台會自動顯示。
cd ~/poc_bot
./venv/bin/python backtest.py --months 12 --discord # 最近 12 個月,四商品,結果傳 Discord
./venv/bin/python backtest.py --start 2026-01 --end 2026-10 # 指定期間
./venv/bin/python backtest.py --products gold,nq # 只跑部分商品(gold nq btc eth)
./venv/bin/python backtest.py --live --discord # 不跑回測,把實盤信號紀錄做成報表
./venv/bin/python backtest.py --catalog # 只輸出模組目錄
第一次會下載幣安歷史 1 分 K(每商品每月約 5~10 MB),快取在 data/,第二次很快。12 個月四商品大約 5~15 分鐘。
report.html(Discord 收到的檔,或自架平台 /backtest/poc.html)。modules.html:排行、卡片、勾選模組 → 複製產生的 modules: 設定貼到 config.yaml → 重啟,那些模組就開始推播。strategy 區關掉(例如 use_gap_fill: false)或用模組只推優勢模組。你需要什麼:TradingView 帳號(免費版可),圖表開 XAUUSD/US100/BTCUSD/ETHUSD,5 分或 15 分。
Ctrl+A 全選、Delete 刪光,再貼上 poc_signal_原版.pine 的全部內容(只貼一次,貼兩次會出現「2 declarations」錯誤)。3_獲利模組包/modules_pack/,找要的資料夾(例如 M002_趨勢回測_順勢加碼版)。M002.pine。設定面板「0. 模組」已鎖好條件,不用改。poc_module_base.pine 是通用版:加一次,在設定面板切換「打法」和各濾網,就能模擬任何模組。你需要什麼:主機連線(第 1 節)。
做完會得到什麼:一個網址 http://168.138.195.111:8080/,每個人用自己的帳號密碼登入,有交易日誌、截圖、筆記、回測中心。
6_自架平台/poc_web.zip 傳上主機(1.3)。poc2026;不想要就不填):
cd ~ && unzip -o poc_web.zip && cd poc_web && chmod +x install_web.sh && ./install_web.sh 8080 poc2026
最後一行會印出網址。pocbot-vcn → 左欄 Security Lists → 點 Default Security List for pocbot-vcn。CIDR、Source CIDR 0.0.0.0/0、IP Protocol TCP、Destination Port Range 8080、Description pocweb → Add。http://168.138.195.111:8080/,看到登入畫面就成功。Ctrl+V 貼上剪貼簿裡的截圖(Windows 用 Win+Shift+S 截圖後直接貼)。可放多張,點縮圖放大,右上「移除」。勝率、合計 R、平均每筆、獲利因子、最大回撤、進行中單數、權益曲線,以及依商品/打法/進場條件/盤面/出場方式/情緒的拆解。只統計「已結束」且算得出 R 的單。
/ 出現類型選單:文字、大標題、小標題、待辦、項目符號、引言、重點框、程式/數字、分隔線、圖片、引用交易。也可用方塊右側「⌄」換類型。Ctrl+V 貼圖會自動插入圖片方塊。左欄「回測中心(三台)」或網址 /backtest/:
- 01 POC 回測台:自動讀主機 ~/poc_bot/backtest.json(第 3 節跑過就有)。頁首有「切換看實盤信號」,等同網址加 ?src=live,讀 live.json(用 Discord /report 或 backtest.py --live 產生)。
- 02 EA 回測台:載入 MT5 報告(第 6 節)。
- 03 獲利模組庫:同 01,顯示 246 模組。
- 入口頁底部顯示兩個 json 的更新時間。
sudo systemctl status pocweb # 狀態
sudo journalctl -u pocweb -f # 日誌
sudo systemctl restart pocweb # 重啟
cp -r ~/poc_web/data ~/poc_web_backup_$(date +%F);要下載到電腦,在 PowerShell:scp -r -i $HOME\pocbot.key ubuntu@168.138.195.111:~/poc_web/data $HOME\Downloads\pocweb_dataamy 換成帳號):
sudo apt install -y sqlite3
sqlite3 ~/poc_web/data/poc.db "DELETE FROM users WHERE username='amy';"
請他重新註冊同一個帳號;他原本的交易與筆記會因為帳號 id 不同而看不到,所以忘記密碼前先匯出。若要保留資料,改成:sqlite3 ~/poc_web/data/poc.db "UPDATE users SET pw='' WHERE username='amy';" 然後請我幫你設一組新密碼雜湊。poc_web.zip 上去,cd ~ && unzip -o poc_web.zip && sudo systemctl restart pocweb(data/ 不會被覆蓋)。sudo apt install -y caddy,然後 sudo caddy reverse-proxy --from 你的網域 --to localhost:8080;Oracle 安全清單再開 80、443。你需要什麼:MT5(Exness)、MetaEditor。
MQL5 資料夾;把 POC_Intraday_EA_UTF16_給MetaEditor.mq5 複製到 MQL5\Experts\。POC_Intraday_EA 拖到 XAUUSD M5 圖表。RUN_SIGNAL 只推播不下單;RUN_TRADE 自動下單(請先在模擬帳戶)。InpLots,或 InpRiskPct 大於 0 時依止損算手數。https://ntfy.sh)。TZ_NYCLOSE 自動;不準改固定模式填 UTC 偏移。POC_Intraday_EA、商品 XAUUSD、週期 M5、日期自訂、模型「每個 tick 基於真實 tick」、存款、槓桿。RUN_TRADE,其餘預設。/backtest/ea.html(自架平台)或 4_回測平台/POC_EA回測台.html。POC L|趨勢回測,所以要用這版 EA 跑出來的報告才分得出打法。/modules 看模組排行;/report 產生實盤報表,和回測台比較哪些打法偏離。backtest.py --months 12 --discord 重跑,調整 modules.live 與 strategy 開關。| 症狀 | 檢查 | 解法 |
|---|---|---|
| 手機收不到信號 | --test 有沒有成功;主題名稱大小寫 |
重新訂閱主題;sudo systemctl restart pocbot |
| Discord 沒有啟動訊息 | sudo journalctl -u pocbot -n 40 有無「Discord 頻道設定失敗」 |
Token 重設、機器人有沒有被邀請、頻道權限、channel_id 其實是使用者 ID(改留空) |
/ 指令沒出現 |
邀請時沒勾 applications.commands |
重新用 URL Generator 邀請一次 |
| 日誌出現「取得數據失敗」 | 幣安連線 | 通常短暫;連續 20 次會推播警告,看網路 |
| 回測台顯示「還沒有 backtest.json」 | 主機沒跑過 backtest.py | 第 3 節 |
| 自架平台連不上 | Oracle 安全清單 8080、sudo systemctl status pocweb |
5.1 第 3 步;sudo iptables -L INPUT -n 有沒有 8080 |
| 截圖上傳失敗 | 檔案 > 15 MB 或不是圖片 | 用 PNG/JPG,截圖通常不到 1 MB |
| 兩個人看到同一份資料 | 用了同一個帳號 | 各自註冊 |
| Pine 貼上出現 2 declarations | 貼了兩次 | Ctrl+A → Delete → 只貼一次 |
| EA 編譯錯誤 | 用了 UTF-8 版 | 用 _UTF16_給MetaEditor 那份 |
| Oracle 扣了 35 元 | 信用卡驗證預授權 | 會退回,Always Free 不收費;預算警示 $1 已設 |
pocbot.key 私鑰只放自己電腦;曾經貼到任何對話或訊息裡的金鑰都應更換。