EA炒金執行環境:數據公布時點差放大的真實代價與成本清單

EA炒金執行環境:數據公布時點差放大的真實代價與成本清單

2026-10-26

作者:Dicky CCY|Ace Fortune 領財智庫 AI Trading Academy 講師、量化交易·盈利分裂教練

有位學員把回測報告寄給我看,曲線很平順,最大回撤不到百分之八,他問我為什麼一上實盤,每到非農、CPI、FOMC 那幾個晚上就開始出問題。他做 ea炒金 已經兩年,策略邏輯沒改過,參數也沒改過,唯一改變的是帳戶裡放的是真錢。我先問他一個問題:你那份回測的成交價,是用什麼報價餵進去的?他想了很久,回答我「應該是中間價吧」。你這個「應該」是從哪裡來的?如果連成交價的來源都沒有寫進規格,那條曲線再漂亮,也只是在測一個不存在的市場。

回測裡沒有的那一層:成交價從哪裡來

多數回測引擎預設用中間價成交,也就是買價與賣價的平均值,這個假設在常態時段誤差不大。黃金主要交易時段的點差只有二十美分上下,相對三百美分的止損,只佔百分之六點七。問題是數據公布那一刻,買價與賣價會同時往外拉開,中間價還停在原來的位置,但你實際能成交的價格已經離它很遠。換句話說,回測算的是價格走到哪裡,實盤決定的是你能用什麼價格成交。這兩件事在平靜時段幾乎重合,在劇烈時段會完全分開,而分開的那一段,就是這篇文章要算給你看的成本。想把這一層落差先補起來,可以讀我們整理過的 回測與實盤為什麼對不上。

點差為什麼會在數據公布時放大

點差本質上是做市商替你承擔存貨風險的報價,它不是固定的費率,而是一個隨時在變的價格。市場平靜、成交量穩定時,做市商願意用較窄的價差換取流量;一旦重大數據即將公布,他們面對的是無法定價的方向風險,最理性的做法就是把報價拉寬,甚至暫時把掛單收回。你在報價上看到的結果,是買價與賣價同時往外跳,看起來像點差突然膨脹,實際上是深度被抽走了。點差擴大是表象,真正讓你成交變差的是同一價位上可成交的數量變少。價格還在那裡,籌碼已經不在,這個差別決定了你付出的是滑價,還是滑價加滑點。黃金的流動性高度集中在倫敦與紐約交易時段重疊的那幾個小時。其他時段掛單深度本來就薄,而多數重大數據剛好落在深度最薄、波動最大的交界。

你在那個窗口下單,等於在只有兩線道的路上遇上雙向同時封閉的施工。工程上這叫瓶頸段,車流不會消失,只會被擠進更少的通道裡。價格也一樣,它不會不成交,只會用更差的價格成交,而這個「更差」在統計上是可以量的。還有一個更少人提到的條件:點差放大不是瞬間恢復的。數據公布後第一波衝擊過去,報價通常還要幾十秒到幾分鐘才回到常態,而這段時間正好是策略訊號最密集的時候。價格在動,均線在交叉,突破在成立,EA 會認為機會來了,於是在最貴的時刻下最多的單。這不是程式寫錯,是程式不知道「現在很貴」這件事,它只認價格,不認成本。倫敦金屬於場外交易,報價由交易商提供,這一點在 投資者教育中心對倫敦金的說明 裡寫得很清楚,點差是交易商的報價行為,不是市場規定的常數。

夜間公路一側封閉施工,三角錐收窄車道,車流擠成長龍緩慢前行。

三種典型的執行落差

把上面幾層合起來,ea炒金 在數據窗口內會遇到三種結構不同的落差,它們的成因不一樣,應對方式也完全不一樣。很多人把它們統稱為「滑價」,這個統稱會讓你在排查時找不到真正斷掉的那一環。維修的第一個原則是先確認哪一段壞了,不要整台換掉,策略排查也是同一個道理。下面先給一張總表,再逐項拆開講,讓你可以對著自己的成交紀錄逐格核對。

落差類型 成因 後果 應對
市價單滑價 送出到撮合之間報價跳動,該價位深度不足 成交價偏離訊號價,止損與目標同時位移 設定單筆最大可接受滑價,超過就放棄這次訊號
限價單不成交 掛單排在隊尾,報價瞬時被抽走 錯過行情,且成交樣本偏向不利的一側 統計未成交率,把它計入策略的實際勝率
止損在擴張點差上觸發 止損以市價離場,成交落在買賣價外緣 虧損超出預算,又被誤判成方向判斷錯誤 改成觸發後限價離場,或加大緩衝並縮小手數

市價單:成交價不是你看到的那個價

市價單的定義是用當前最優可得價格立即成交,重點在「可得」兩個字。當你按下送出,訂單進到撮合的那幾十毫秒裡,報價可能已經換了三輪,成交價落在新的買賣價上,不是你螢幕看到的那一個。這段偏移就是滑價,它在常態時段通常只有幾個美分,在數據公布時可以擴大到幾十美分。對一筆止損三百美分的交易來說,多滑三十美分等於你的實際賠率被改寫了一成。這就是為什麼同一套 ea炒金 邏輯,回測期望值是正數,實盤跑三個月卻是負數。

限價單:掛得到,不一定成交

限價單看起來比較安全,因為你指定了最高買價或最低賣價。問題是它不保證成交,尤其在報價快速抽走的那幾秒,你的掛單可能排在隊尾,價格穿過去了卻沒有你的份。更麻煩的是選擇性偏誤:會成交的那幾次,往往是價格回頭找你的那幾次,也就是方向對你不利的時候。長期下來,限價單策略的實際成交分布會偏向虧損的一側,而回測通常假設價格觸及即成交,完全看不到這一層。你把兩份成交紀錄並排看,就會發現同一個訊號在兩邊的命運不一樣。

止損:在擴張的點差上被觸發

止損單在多數平台上以市價觸發,價格碰到觸發價之後,系統送出一張市價單離場。在點差正常的時段,這個設計沒有問題;在點差擴大到一百美分的時段,你的止損會在買賣價的外緣成交,實際虧損會超出你預算的那個數字。我見過學員的成交明細,同一套策略在數據公布那幾分鐘的成交價明顯偏離訊號價,而偏離的方向幾乎總是對他不利。這不是運氣問題,是機制問題:止損保護的是價格,不是成本。把這兩件事混為一談,你就會一直以為自己輸在判斷,其實是輸在成交。

算一次:單筆多付多少,一年侵蝕多少

上面那張表要橫著看,不要只挑一列。三種落差的成因不同,但你會發現它們共用同一個分母,就是你的止損距離。我不用「點差變貴了」這種說法,因為它沒有數字,不能寫進 ea炒金 的規格,也不能拿去跟任何人核對。要變成可執行的東西,只有一個方法:把它換算成每筆多少錢、每年多少錢、佔帳戶多少百分比。下面這組假設是我在課堂上示範用的標準例,數字刻意取整,方便你跟著算一遍。以下數字全部是假設,不是任何一家平台的實際報價。假設常態點差二十美分,數據公布前後五分鐘擴大到一百美分,標的是黃金,一手合約一百盎司,因此每一美分的點差等於每手一美元。這個換算關係必須先確認,因為不同品種、不同合約規格,每一點的價值完全不同,搞錯這一步,後面的數全部作廢。關於每點價值怎麼算,我們另外寫過一篇 黃金每點價值與止損距離的換算,可以照著核對自己的合約規格。

差額 100 − 20 = 80 美分

單筆多付 80 × 1 × 1 = 80 美元

這兩個乘數分別是每點價值(美元/美分/手)與手數(手)。算出來的八十美元,就是你在數據窗口內開平一個來回,比常態時段多付出的金額。單看一筆,八十美元不算什麼,很多人一頓飯就花掉了。但成本這種東西從來不是看單筆,是看它一年重複幾次。假設這套策略每個月有四次重大數據落在持倉或開倉窗口內,全年就是四十八個來回。八十乘以四十八等於三千八百四十,這個數就是一年下來多付的點差差額。把這個數字放回兩萬美元的帳戶,三千八百四十除以兩萬等於百分之十九點二。換句話說,在計入佣金與隔夜利息之前,策略必須先賺回百分之十九點二才回到原點。這個門檻不是市場給的,是執行環境給的,而它不會出現在任何回測報告的第一頁。

年度 80 × 48 = 3,840 美元

佔帳戶 3,840 ÷ 20,000 = 19.2%

再換一個角度看同一組假設。如果這套策略的止損距離是三百美分,常態點差二十美分只吃掉止損空間的百分之六點七,還在可接受範圍。數據公布時點差一百美分,吃掉的是百分之三十三點三,等於你的止損有三分之一是在為成交品質付費,而不是在為判斷錯誤付費。對於止損只有五十美分的高頻策略,一百美分的點差已經大於止損本身,這筆交易在數學上根本無法成立。所以問題不是點差會不會放大,而是你的止損距離有沒有大到容得下它放大。

止損佔比 20 ÷ 300 = 6.7%

公布時佔比 100 ÷ 300 = 33.3%

把執行成本寫進流程

知道成本在哪裡,下一步是把它變成規則,而不是變成一個願望。我一直在講同一件事:紀律不是靠意志,是靠清單。清單的好處是你不需要在當下判斷,你只要照著走,而照著走的動作在壓力下不會變形。以下四條是我會寫進 ea炒金 規格的最低要求,你可以照抄,也可以改成適合自己品種的版本,但不要刪到只剩一條。第一條是時間窗,在重大數據公布前十五分鐘到公布後十分鐘之間不開新倉,只允許既有倉位按原計畫離場。這條的參數要按品種與數據等級調整,非農與 FOMC 是最高級別,CPI 與 PCE 次一級,次一級的窗口可以縮短,但不要取消。窗口的意義不是預測行情,而是承認你在那個時段的成交品質無法控制,既然無法控制,就不要讓策略在那裡做新的決定。

第二條是點差閾值。把當下的點差與過去二十個交易日的同時段均值比較,超過三倍就暫停開倉,超過五倍就把掛單全部撤掉。這條需要平台提供即時點差資料,多數 ea炒金 環境都拿得到,問題是很少人把它接進程式的判斷邏輯。你要讓程式知道現在很貴,否則它永遠只會看到價格便宜,看不到成本貴。第三條是滑價上限,每一筆市價單送出前先記錄當時的買賣價,成交後比對,超過設定值就記一次異常。異常次數不需要每天看,但每個月要統計一次,因為它會直接決定你回測裡那個成交價假設是否還成立。這條的重點不是抓平台,是抓你自己的假設有沒有過期。

第四條是平台條款。同一份策略在不同報價源上跑,結果可能不一樣,因為點差擴大的幅度與持續時間都不同。簽約前把點差計算方式、滑價處理、數據中斷的責任歸屬問清楚,最好書面留底,涉及合約條款的部分建議向持牌人士查證。香港讀者可以先用 證監會的懷疑投資產品警示名單 核對對方名稱,這一步花三十秒,比事後追討便宜太多。把成本寫回回測是最後一件,也是最容易被跳過的一件,你只要把數據窗口的點差從二十美分改成一百美分重跑一次,就會看到策略在那幾段的表現完全不同。CFTC 關於降低外匯交易風險的說明 也提到,成本與執行條件是評估這類交易時最常被忽略的一塊。還有一種落差跟數據無關,機理卻相同,就是持倉過週末的跳空,窗口從幾分鐘拉長到兩天。我們在 黃金 EA 的週末跳空風險 裡拆過一次,處理原則一樣:先承認它存在,再決定用時間窗、手數還是品種去避開它。

交易者書桌上翻開打勾的清單筆記本,旁有計時器與馬克杯,螢幕曲線陡升。

課堂上兩種最常見的反應

每次講到這裡,課堂上會出現兩種反應。第一種是馬上問那我要不要把 EA 停掉,第二種是問有沒有辦法在數據公布前自動平倉。這兩個問題都跳過了一步:你得先知道自己現在多付了多少。沒有這個數字,停掉或不停掉都只是換一種猜法,而猜法不能寫進清單。我見過學員的成交明細,同一套策略在數據公布那幾分鐘的成交價明顯偏離訊號價,他卻完全沒有發現,因為他只看最終盈虧。這件事對我的意義不是市場很黑,而是帳單上有資訊,只是多數人不會讀。一張成交明細至少要看三欄:訊號價、成交價、當下的點差,並排就看出落差。這也是我為什麼一直要求學員把規則寫下來,你寫下來才有東西可以對照;沒有寫下來,事後檢討就會變成記憶的重建,而記憶在虧損之後特別不可靠。把決策交給 ea炒金 的好處是它不會說謊,壞處是它也不會提醒你它的假設已經過期。

結論:執行環境不是背景條件,是策略的一部分

我的判斷很直接:一套沒有把數據公布時點差寫進去的 ea炒金 策略,不能算完成,只能算半成品。它在那幾個小時裡執行的不是你設計的規則,而是你沒有設計的那部分。你要嘛把成本假設補上,要嘛接受那幾個小時的結果不屬於策略,而屬於運氣。帶走三個問題就夠了:你的回測用什麼價格成交,是中間價還是買賣價;你的策略知不知道現在點差是多少,還是它只認價格;你一年在數據窗口內開幾個來回,把那個數字乘以八十美元,看它佔本金多少。三個問題都答得出來,你才有資格談優化;答不出來,你優化的是一個不存在的系統。什麼情況下我會改口?如果一套策略的持倉週期以週為單位,止損距離在兩千美分以上,數據公布那幾分鐘的點差差額佔止損空間不到百分之一,那我會說這一層可以放到最後再處理,因為它對結果的影響小於其他變數。反之,只要你的持倉時間以小時計、止損在幾百美分以內,這一層就是第一順位,沒有討論空間。

常見問題

問:數據公布時點差一定會放大嗎,還是只有某些平台會?

答:這是場外交易報價機制的結果,不是個別平台的行為,差別只在放大的幅度與持續時間。黃金在重大數據前後流動性結構會改變,做市商拉寬報價或暫時撤單都是合理反應。你要比較的是幅度與恢復速度。

問:把數據公布時段整個關掉,會不會讓策略失去最好的行情?

答:會失去一部分,但那部分本來就不屬於你。行情的大小和你能不能拿到,是兩件事。如果策略的優勢建立在數據公布後那幾秒的方向判斷,那它本質上是在賭流動性,不是在執行規則。

問:這些成本假設要怎麼驗證,我只能靠估算嗎?

答:不必估算,你的成交紀錄裡就有,這也是評估 ea炒金 成本最可靠的一條路。把訊號價、成交價、當下的點差三欄拉出來,按數據窗口與非數據窗口分組,兩組的平均落差就是你的真實成本。樣本一百筆以下沒有統計意義,這是底線。

問:如果我已經在用一套沒有考慮這件事的 EA,該怎麼補?

答:先在規格層補,不要在參數層補。加一條時間窗、一條點差閾值,然後把成本假設改回真實值重跑回測。參數微調會讓你以為問題解決了,但機制沒變,下一個數據窗口還是會出現同一種落差。

立即 WhatsApp 聯繫小風團隊免費諮詢:+852 5378 5383

網站:https://aitrading.ace-fortune.com/gold-trading

投資涉及風險,過往表現不代表未來回報。本內容僅供教育參考,不構成任何投資建議。

類別:投資攻略
分享到:
null

Ace Fortune 2018年成立於香港,早期研究方向包括面向 PI(個人專業投資者)的大數據智能指標及選股器,以及運用量化模型研究交易策略。
今天,我們將這份系統思維,延伸至 AI 工具與程式交易教育,讓新手學習運用 AI Agent 輔助整理資料、編撰程式與檢查邏輯。
從理解工具到動手實作,讓科技更容易入門,支持個人增值與成長。Let Intelligence Empower Your Growth. 

null
© 2026 Weber All Right Reserved