NQ 期貨交易機器人:怎麼建立、測試與上線
NQ 期貨交易機器人是一套寫明的規則,不經人工判斷就交易那斯達克 100 期貨。建立分六步:寫下規則、設定 NQ 的成本與時段、回測、用未見過的資料檢驗、匯出到你的交易平台,再把實單成交與回測逐週比對。決定成敗的數字,是扣除成本後的平均每筆損益。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
目錄
如何建立並測試 NQ 期貨交易機器人?
NQ 期貨交易機器人是一套寫明的規則,不經人工判斷就進出那斯達克 100 期貨。建立分六步:寫下規則、設定 NQ 的成本與時段、回測、用規則從未見過的資料檢驗、把程式碼匯出到交易平台,之後每週比對實單成交與回測。
六個步驟只往一個方向走。後面步驟的結果,不會讓你回頭改前面步驟的設定。看到實單或樣本外結果後想改規則,就從第一步重來,換成新的候選策略,因為改過的規則已經看過不該看的資料。這個順序適用於任何日內系統,當沖演算法的建立與測試逐步說明了通則。本文把這六步套用在 NQ 上。
- 完整寫下規則。進場、出場、停損、部位大小,以及機器人可以交易的時段。所有數值都以指數點數表示,後面的章節會換算成美元。
- 設定 NQ 的成本與時段。每口手續費、以跳動點計的滑價,以及機器人交易的時段。這些設定要放進第一次回測,不是最後一次。
- 以完整歷史回測,並計入成本。先看交易筆數與扣除成本後的平均每筆損益,再看淨損益。
- 用未見過的資料檢驗。依日期切開歷史,規則原封不動拿到後段評分,再以視窗往前推進測試。
- 匯出到交易平台。AlphaPrime(Valynox)把完成的規則輸出成交易平台的原始碼,支援的平台列在平台匯出頁面,上線的機器人就是通過檢驗的那套規則,不是手打的複本。
- 以回測為準,監控實單成交。滑價、交易筆數與回撤,每週與回測假設的數值比對。
NQ 期貨交易機器人能賺錢嗎?
機器人只能留住扣除手續費與滑價後剩下的部分,所以決定成敗的數字,是扣除成本後的平均每筆損益與來回成本的比較。來回成本是開倉與平倉一次所付的全部費用:買賣兩邊的手續費與交易所費用,加上兩邊的滑價。滑價是回測假設的價格與實際成交價之間的差。多數候選規則過不了的是這項比較,而不是未扣成本的回測。
NQ 在美股現貨交易時段流動性充足,所以停損單或市價進場單每邊一個跳動點的滑價,是合理的起始估計。NQ 一個跳動點是 $5(CME Group 合約規格),一買一賣每邊一個跳動點,滑價就是 $10,尚未計入手續費。單看金額似乎不大,直到規則每筆的平均波動也偏小,情況就不同了。
假設性範例
某規則在一口 NQ 上的平均每筆毛損益為 $35。手續費與費用是每一買一賣 $5,滑價為每邊一個跳動點,共 $10。平均每筆淨損益是 $35 − $5 − $10 = $20。現在把滑價加倍到每邊兩個跳動點(開盤前後或消息公布時屬正常):平均每筆淨損益降到 $35 − $5 − $20 = $10。平均每筆毛損益只有 $35 的規則,成敗取決於成交品質;平均每筆毛損益 $150 的規則,對同樣的變化幾乎沒有感覺。
不少系統化交易人採用一條實務準則:平均每筆毛損益至少要是來回成本的三到五倍。道理不難懂:成本估計本身有誤差,只在最低估計下才成立的規則,撐不過第一個高波動的週。回測裡的交易成本說明如何設定手續費與滑價,讓候選策略的排序已經反映你實際能成交的條件。
NQ 的每跳動點價值、保證金與波動率,對機器人意味著什麼?
NQ 每指數點 $20、每 0.25 點的跳動點 $5,所以機器人裡的每個停損、停利與部位大小,都要先以點數表示,再換算成美元,才能判斷風險。合約規模是 $20 乘以那斯達克 100 指數,最小價格變動是 0.25 指數點,兩者都由 CME Group 合約規格訂定。免費的期貨合約與損益計算機可把點數與跳動點換算成 NQ 及其他合約的美元金額。
跳動點是交易所允許的最小價格變動。NQ 上四個跳動點等於一個指數點。因此寫成「50 點」的停損就是 200 個跳動點,換算成美元的比例由合約決定,與券商無關。
假設性範例
機器人在一口 NQ 上使用 50 點停損。50 點 × $20 = 每筆風險 $1,000(未計滑價)。若規則常見的獲利波動是 100 點,獲利就是 $2,000。帳戶 $30,000、每筆想冒 2% 風險($600)的交易人,無法用一口 NQ 執行這條規則;帳戶容許的最小停損是 30 點,對 NQ 的波動方式來說可能過窄。
保證金是交易所與券商要求持有一口合約所需的押金。交易所訂出基準金額,並在波動率改變時調整,券商也可能加收自己的日內要求。由於這個數字會變動,不要寫死在程式裡:決定機器人的部位大小前,先到交易所的合約頁面讀取當前金額,波動劇烈的一週過後再讀一次。同一個合約頁面也列出交易時段,時段同樣會不定期調整。
波動率之所以重要,是因為與其他指數期貨相比,NQ 的單日波動區間較寬。在 ES 上以點數衡量合適的停損,放到 NQ 上常常過窄。請用波動率指標,在自己的 K 棒資料上量測區間,不要照抄別人的數字,並把停損寫成該量測值的倍數。NQ 與 MNQ 期貨的規格、交易時段與回測成本逐一說明會影響區間量測位置的時段界線。
小帳戶該用 MNQ 而不是 NQ 執行機器人嗎?
MNQ 是 NQ 的十分之一,每指數點 $2、每跳動點 $0.50,小帳戶得以把每筆風險壓低;但每口手續費不會縮小到十分之一,所以同一條規則在被信任之前,必須在 MNQ 上重新檢查扣除成本後的平均每筆損益。MNQ 是 CME Group 掛牌的微型 E-mini 那斯達克 100 期貨,與 NQ 並列,追蹤同一個指數。
兩個合約的價格波動相同,所以在 NQ 觸發的規則,會在 MNQ 的同一根 K 棒觸發。改變的是每段波動的美元大小,以及成本在波動中所占的比例。
| 項目 | NQ | MNQ |
|---|---|---|
| 每點價值 | 20 美元 | 2 美元 |
| 每跳動點價值(0.25 點) | 5 美元 | 0.50 美元 |
| 40 點停損的美元風險 | 800 美元 | 80 美元 |
| 兩個跳動點的滑價 | 10 美元 | 1 美元 |
| 每口手續費 | 由券商訂定 | 由券商訂定;通常不是 NQ 的十分之一 |
假設性範例
前面範例的規則,在 NQ 上平均每筆毛損益 $35,換成 MNQ 就是 $3.50。兩個跳動點的滑價在 MNQ 上是 $1。若券商對 MNQ 每一買一賣收 $1.50,而非 NQ 的 $5,平均每筆淨損益就是 $3.50 − $1.50 − $1 = $1.00。成本在 MNQ 上占毛波動的 43%,與 NQ 上的 43% 相同,這只有在手續費也降到 $0.50 時才成立;實際並沒有。規則仍然過關,但餘裕較小,交易人應在第一口實單前先知道這一點。
對小帳戶的實務答案是可以,用 MNQ,並把 MNQ 的手續費與跳動點價值填入後重跑回測。一條規則在 NQ 過關、在 MNQ 失敗,表示它每筆的優勢本來就貼近成本線。十口 MNQ 的曝險等於一口 NQ,所以隨帳戶成長,機器人也能逐步放大部位大小。
哪些規則最適合 NQ 機器人?
適合 NQ 的規則,要顧及它的時段結構與寬廣的單日波動區間:開盤區間突破,以及搭配以波動率為基礎的停損與時間出場的趨勢跟隨;依賴微小波動的規則,會先輸給成本。時段結構之所以重要,是因為 NQ 在 CME Globex 上幾乎全天交易,每天美國中部時間下午 4:00 至 5:00 休市,但大部分成交量與波動出現在美股現貨交易時段,也就是美國中部時間上午 8:30 至下午 3:00。機器人在安靜的夜間時段,用與現貨盤相同的停損交易,等於在同一個名稱下跑著兩套不同的策略。
開盤區間突破,是等現貨盤開始的前幾分鐘,記下該區間的最高價與最低價,價格離開區間時進場的規則。它適合 NQ,因為開盤時區間最寬,每筆的波動相對於兩個跳動點的滑價就大。搭配 ATR 平均真實區間停損的趨勢跟隨,適合的原因相同:平均真實區間(Average True Range)衡量 NQ 每根 K 棒的移動幅度,所以停損在波動大的日子放寬、在安靜的日子收緊,不會被雜訊打到。
| 規則類型 | 每筆常見波動(點) | 每日交易筆數 | 成本占波動的比例 | 適合 NQ 機器人的程度 |
|---|---|---|---|---|
| 開盤區間突破 | 數十點 | 0 到 2 | 低 | 良好 |
| 搭配 ATR 停損的趨勢跟隨 | 數十到數百點 | 少於 1 | 低 | 良好 |
| 小波動的均值回歸 | 數點 | 數筆 | 中到高 | 計入成本後再檢查 |
| 賺取數個跳動點的極短線 | 少於 2 點 | 多 | 高 | 不佳 |
時間出場,是在固定的時鐘時間(例如現貨收盤前幾分鐘)平掉所有未平倉部位,值得加進多數 NQ 日內規則。它讓機器人避開沒有測試過的夜盤,也讓交易筆數可以預期,有助於後面說明的實單監控。
如何回測並檢驗 NQ 機器人?
第一次執行前先設好時段、成本與下一根 K 棒成交,再用樣本內與樣本外切分,以及推進分析的視窗,在規則從未見過的資料上評分。下一根 K 棒成交的意思是:某根 K 棒收盤時算出的訊號,在下一根 K 棒的開盤成交,因為機器人無法交易剛看到的收盤價。指數期貨最常設錯的五項設定,列在ES 與 NQ 期貨回測先設好的五項基本設定。
把檢驗想成一座階梯。每一階都用前一階沒用過的資料給規則評分,沒過其中一階的規則,就停在那一階。
- 以完整歷史回測,並計入成本。對照來回成本,檢查交易筆數與平均每筆損益。
- 樣本內調整區段。只用歷史前 70% 到 80% 選定設定。
- 樣本外區段。把選定的設定原封不動套用到其餘歷史,並拿平均每筆損益與樣本內的數字比較。
- 推進分析視窗。推進分析是在一個視窗調整、在下一個視窗原封不動交易,再往前推並重複的測試,把樣本外的區段接起來,就能看出你實際能交易到的成績。
為什麼需要這座階梯,在搜尋嘗試許多候選策略時就清楚了。Bailey 等人(2014)指出,多次嘗試中最好的那個回測,光憑挑選就被灌高,還沒算進任何真正的優勢。下面的回測顯示一個被保留的候選策略,摘要長什麼樣子。它是 ES 日 K 棒的測試,不是 NQ,而且用的是替代規則:以蠟燭圖(Candlesticks)規則作為唯一的進場與出場,沒有停損、沒有停利、沒有濾網,不是 NQ 機器人的規則。搜尋嘗試了 1,024 個候選策略,因為報酬相對回撤的表現,保留了這一個。事後挑出保留的那個,會讓它看起來比實際好,所以這些數字只描述該候選策略在那段歷史上的表現,不代表其他。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。ES 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $25。
| 數字 | 結果 |
|---|---|
| 淨利(已平倉) | $129,630 |
| 最大回撤 | $59,010 |
| 交易筆數 | 56 |
| 勝率 | 57.14% |
| 獲利因子 | 2.022 |
| 平均每筆 | $2,314.82 |
| 在場時間 | 93.48% |

這張表有三個讀法,示範了任何報表該怎麼讀。第一,六年半 56 筆交易是小樣本,只要幾筆交易改變,平均每筆損益 $2,314.82 就可能大幅變動。第二,平均每筆損益遠大於每筆 $45 的手續費與滑價,也就是第二節的成本檢查有餘裕地通過。第三,持倉時間占比 93.48%,表示規則幾乎一直持有部位,所以結果有相當大的部分來自該期間市場本身的方向,不是進出場時機。這些都不是說這條規則賺到了那些錢,也不是說讀者可以期待同樣的成果;它們只說明該讀哪些欄位、依什麼順序讀。在 AlphaPrime 裡,樣本內、樣本外與推進分析這幾階,是以你在搜尋前先設定的門檻,作為策略檢驗來執行,沒過其中一階的候選策略,不會送上下一階。
機器人上線後該監控什麼?
每週把三個實單數字與回測比較:每筆滑價、每週交易筆數,以及目前回撤與回測最大回撤;一旦碰到上線前寫好的界線,就停掉機器人。界線要事先寫好,因為看著實單虧損的交易人,總會找到理由再等一週。
| 項目 | 回測假設 | 實單讀數 | 事先寫好的停機規則 |
|---|---|---|---|
| 每筆滑價 | 每一買一賣兩個跳動點 | 成交價減訊號價,取該週所有交易的平均 | 平均高於假設值兩倍,持續兩週 |
| 每週交易筆數 | 回測報表的筆數除以週數 | 機器人實際下的交易筆數 | 遠高於或遠低於回測筆數:觸發頻率是兩倍的規則,已不是測過的那條規則 |
| 目前回撤 | 回測最大回撤 | 權益高點減目前權益 | 高於回測最大回撤的 1.5 倍 |
滑價最容易量測,也最先偏離。平台的成交紀錄有成交價;下一根 K 棒成交的回測裡,機器人的訊號價就是下一根 K 棒的開盤價。兩者的差,以跳動點計,取該週平均,就是實單滑價。若明顯高於兩個跳動點,在決定其他事情之前,要先用量到的數值重跑回測。交易筆數抓的是另一種錯誤:研究資料與實際圖表的時段設定不同,機器人因此交易了從未測過的時段。回撤界線訂為回測最大回撤的 1.5 倍是常見做法,因為實單回撤若已經大於歷史上出現過的最糟情況,就是歷史對這條規則過於寬容的證據。
第一口實單之前,先跑完演算法上線前的六項檢查,這週再做一件事:取出你目前的 NQ 候選策略,從報表記下平均每筆毛損益,除以兩個跳動點滑價下的來回成本。若答案低於三,在繼續處理進場之前,下一個要跑的測試,就是同一條規則加倍滑價。
常見問題
NQ 期貨交易機器人能賺錢嗎?
機器人只留得住扣除手續費與滑價後剩下的部分,所以問題在於規則扣除成本後的平均每筆損益,在沒有拿來調整的資料上是否維持為正。NQ 一個跳動點是 $5,所以每邊一個跳動點滑價的一買一賣,在計入手續費前成本是 $10。平均每筆毛損益是該成本數倍、且樣本外平均每筆損益仍為正的規則,已通過多數候選策略過不了的檢查。沒有任何回測能把這變成預測。
我可以用 MNQ 取代 NQ 來執行機器人嗎?
可以。MNQ 追蹤同一個指數,規模是十分之一,每點 $2、每跳動點 $0.50,所以同樣的訊號會在同樣的 K 棒觸發。請填入 MNQ 的跳動點價值與 MNQ 的手續費重跑回測,因為每口手續費通常不是 NQ 的十分之一,在每段波動中占的比例也較大。十口 MNQ 等於一口 NQ 的曝險,小帳戶因此可以分段放大部位。
NQ 機器人需要多少保證金?
保證金由交易所按每口合約訂定,並在波動率改變時調整,券商可能要求隔夜部位更高、日內部位更低。決定機器人的部位大小前,先讀交易所合約頁面與券商保證金表上的當前金額。帳戶規模要以回測最大回撤加保證金來定,不能只看保證金,因為持有部位期間,帳戶要承受的是回撤。
哪些規則最適合 NQ 機器人?
相對於成本、每筆波動大的規則:現貨開盤的開盤區間突破,以及搭配以 ATR 為基礎的停損、收盤前時間出場的趨勢跟隨。只想賺幾個跳動點的極短線規則,會把每段波動的大部分交給手續費與滑價。無論哪種規則,都限定在你測過的時段內,因為 NQ 的夜間時段與現貨盤的表現不同。
參考文獻
- CME Group. E-mini Nasdaq-100 Futures contract specifications (contract size $20 × index, minimum tick 0.25 index points = $5.00). cmegroup.com/markets/equities/nasdaq/e-mini-nasdaq-100.contractSpecs.html
- CME Group. Micro E-mini Nasdaq-100 Index Futures Contract Specs. https://www.cmegroup.com/markets/equities/nasdaq/micro-e-mini-nasdaq-100.contractSpecs.html
- Bailey, D. H., Borwein, J., López de Prado, M., & Zhu, Q. J. (2014). Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance. Notices of the American Mathematical Society, 61(5), 458–471.

