VALYNOXSTRATEGY RESEARCH TECHNOLOGY
AlphaPrimeAlphaPrime
策略學院 / 平台與匯出

MultiCharts 教學:台灣費用、券商版差異、接台指期資料與第一支策略

台灣交易者取得 MultiCharts 有券商版和凱衛資訊正版兩條路,之後的順序都一樣:接上台指期資料、載入一支簡單策略、把回測設定改成接近實際交易,再看報表。費用由軟體費或口數門檻、資料源費用和為達門檻付出的手續費三塊組成。

作者 · 發佈 · 更新於 · 編輯原則

目錄
  1. MultiCharts 教學:在台灣要怎麼開始?
  2. MultiCharts 多少錢?券商版和正版費用怎麼算
  3. 券商版和正版 MultiCharts 差在哪?
  4. MultiCharts 怎麼接台指期資料?
  5. MultiCharts 怎麼寫第一個策略?當沖訊號的五個區塊各做什麼
  6. 回測前要先改哪些設定?
  7. 不想自己寫 MultiCharts 程式碼,還能從哪裡拿到策略?
  8. 常見問答
  9. 參考文獻

MultiCharts 教學:在台灣要怎麼開始?

MultiCharts 教學的起點是取得軟體:台灣交易者有兩條路,一是元大、群益等券商依公告條件提供的券商版,二是向凱衛資訊購買的正版。之後的步驟相同:接上台指期資料、載入一支簡單策略、把回測設定改成接近實際交易,再看報表。

MultiCharts 是一套以 K 線圖為中心的交易軟體,可以寫策略、對歷史資料回測、再連到券商帳戶自動下單。它的策略語言叫 PowerLanguage,PowerLanguage 是一種用接近英文的句子描述進出場條件的程式語言,寫法和 TradeStation 的 EasyLanguage 很接近。凱衛資訊是 MultiCharts 在台灣的代理商;券商版則是券商向原廠取得授權後,依自家公告的條件提供給客戶使用。

不論從哪一條路拿到軟體,接下來的順序都一樣,而且順序本身就是重點:

  1. 接資料。選定資料源、設好台指期的商品代碼和交易時段,確認歷史資料回補的長度夠長。
  2. 載入第一支策略。用一支結構簡單、每一行都看得懂的當沖訊號,目的是學會軟體怎麼跑,不是追求好看的報表。
  3. 改回測設定。MultiCharts 的預設值沒有手續費和滑價,先改好再回測。
  4. 看報表。先看交易筆數和淨利方向對不對,再看其他數字。
兩條路徑通往 MultiCharts,券商版或 Kway 授權,最後合併成同樣四個步驟:連接資料、載入策略、設定回測參數、閱讀報表 兩條路徑,同一條步驟 兩種取得方式,之後步驟相同 券商版 Kway 1 2 3 4 連接資料 載入策略 設定參數 閱讀報表 路徑只影響第 1 步。 所以:資料、規則、設定要對。
兩種取得方式在第一步之後就走同一條路:接資料、載入第一支策略、改回測設定、看報表。

MultiCharts 多少錢?券商版和正版費用怎麼算

MultiCharts 在台灣的費用由三塊組成:軟體費或券商的口數門檻、資料源費用、以及為了達到門檻而多付出的手續費;第三塊最常被忽略。正版的軟體費以凱衛資訊網站公告為準,券商版的使用條件以各券商的公告頁為準,這些條件會變動,本文不寫金額,只說明結構。

三塊費用各自長這樣:

  • 軟體費或口數門檻。正版是向凱衛資訊付費取得授權。券商版通常不另收軟體費,但要求帳戶每月達到一定的交易口數或其他條件,達不到就可能失去使用資格。門檻的數字每家券商不同,也會調整。
  • 資料源費用。券商版多半搭配券商自己的報價資料;正版要自己選資料源,有的資料源免費提供給該券商客戶,有的按月收費。費用依資料源而定。
  • 為滿足門檻付出的手續費。如果你本來一個月只交易幾口,為了維持券商版資格而多下的每一口,手續費和期交稅都是使用 MultiCharts 的實際成本。這一塊不會出現在任何報價單上,要自己算。

假設範例

假設某券商要求每月 30 口小台才能繼續使用券商版,而你平常一個月只交易 10 口。多出來的 20 口,每口來回手續費加期交稅假設是 NT$60,一個月的隱藏成本就是 NT$1,200,一年約 NT$14,400。把這個數字和正版的年費放在一起比,才是完整的比較。數字全部是假設,實際門檻與費率以券商公告為準。

MultiCharts 成本有三部分:軟體費與數據源會列在價目表上,但為了達到券商門檻而多出的交易手續費不會出帳單,以一個假設範例來說,每年約新台幣一萬四千元 第三項成本被隱藏 範例:每月多 20 口 軟體 價目表上有 數據源 價目表上有 多出交易 不出帳單 ≈NT$14k/年 隱藏的部分可能最大。 所以:比較每年總成本。
MultiCharts 的錢花在三個地方。第三塊沒有人會寄帳單給你,卻可能是最大的一塊。

比較兩條路的時候,把三塊加總成「一年總成本」再比,而不是只比軟體費。平常交易量本來就超過門檻的人,券商版的第三塊接近零;交易量低、或想在多家券商之間保持彈性的人,第三塊可能比正版年費還高。

券商版和正版 MultiCharts 差在哪?

券商版和正版的 PowerLanguage 語法相同,寫好的策略可以互相搬移,差別在資料來源、可連的券商帳戶、功能完整度和使用資格的持續條件。先學寫策略的人用券商版就夠;要接多個資料源或同時連多個帳戶,再考慮正版。

券商版是券商取得授權後提供給自家客戶的 MultiCharts,通常只能連該券商的報價和該券商的帳戶。正版是自己向凱衛資訊購買的授權,資料源和下單帳戶由自己選。兩者的核心是同一套軟體,所以你在券商版寫的策略檔,換到正版一樣能編譯和回測。

項目券商版正版
取得方式與持續條件由券商提供,需持續符合券商公告的條件向凱衛資訊購買授權,依授權期限使用
資料來源通常綁定該券商的報價自選資料源,可接多個
可連券商帳戶該券商帳戶依支援清單自選,可連多個
PowerLanguage 語法相同相同
策略可互通相同,策略檔可搬移相同,策略檔可搬移
適合誰剛開始學寫策略、交易量本來就達門檻的人需要多資料源、多帳戶,或不想受口數條件限制的人
券商版與官方版對照:資料來源、可連接帳戶與使用條件會改變,PowerLanguage 語法與策略檔維持不變 同一核心,不同外殼 券商版 vs. 官方版 差異 資料來源 帳戶 使用條件 不變 語法 策略檔 策略檔可在兩者間移動。 所以:先從券商版開始。
變的是外圍:資料、帳戶、資格條件。不變的是核心:同一套語法、同一份策略檔。

一個實際的做法是用券商版把本文後面的步驟走完一遍。等你確定自己會繼續做系統化交易、而且知道自己需要哪些資料源,再決定要不要換正版。策略檔不會因為換版本而作廢。

MultiCharts 怎麼接台指期資料?

接台指期資料分四步:選資料源、設商品代碼、設交易時段、確認回補長度與時區,任何一步錯了,回測跑的就不是你以為的那個市場。每一步做完都有一個對應的檢查,做完檢查再走下一步。

  1. 選資料源。資料源是把即時報價和歷史 K 棒送進 MultiCharts 的程式。券商版通常直接用券商的資料源;正版常見的選擇是券商提供的資料源,或 Touchance 這類台灣交易者常用的來源,Touchance 的功能、費用和連線方式見 Touchance 交易平台介紹。檢查:在 QuoteManager 裡能看到該資料源的商品清單。
  2. 設商品代碼。台指期(TX)、小台(MTX)、微台(TMF)在各資料源的代碼寫法不同,以資料源的商品清單為準;回測通常用連續月(把各月份合約接起來的序列),而不是單一月份。各合約的代碼規則見 台指期商品代碼:TX、MTX、TMF 與月份代碼。檢查:開圖後的價位和你在券商看盤軟體看到的同一時間價位一致。
  3. 設交易時段。台指期日盤是 08:45–13:45,夜盤是 15:00 到隔日 05:00;只做日盤的當沖策略,時段就只設日盤,否則策略會在夜盤收到訊號。交易所可能調整時段,以期交所的契約規格頁為準;各市場目前的時段可用 期貨交易時間查詢 換算成台灣時間確認。檢查:圖上第一根和最後一根 K 棒的時間就是你設定的開收盤時間。
  4. 確認回補長度與時區。回測需要的歷史長度要在開圖時設好,以年或以 K 棒數計;時區設台灣時間,否則日線的日期和分 K 的時段都會偏移。檢查:圖上最早一根 K 棒的日期符合你要的回測起點,日 K 的日期和交易日對得上。
以四個步驟連接台指期資料,每步都有檢查:來源顯示商品清單、代號價格與券商相符、交易時段每日取得正確K棒數、回補從指定日期開始 驗證每個資料步驟 左側為步驟,右側為其檢查 1 2 3 4 來源 代號 交易時段 回補 清單出現 價格相符 每日K棒數 最早日期 交易時段步驟最容易出錯。 所以:數一天內的K棒數。
接資料的四步和每一步的檢查。每一步都有一個簡單的對照方式,不需要猜。

第三步最常出錯。很多人開了含夜盤的資料,卻以為自己回測的是日盤策略;報表裡多出來的夜盤交易筆數會讓整份結果變質。開圖之後先數一天有幾根 K 棒:5 分 K 的日盤一天是 60 根,含夜盤會多出很多。

MultiCharts 怎麼寫第一個策略?當沖訊號的五個區塊各做什麼

第一支當沖訊號只需要五個區塊:參數宣告、變數、進場條件、出場條件、收盤前強制平倉。本節用的是一個通用的開盤區間突破教學範例,不是 AlphaPrime (Valynox) 的訊號或規則;這裡只說每個區塊在做什麼和常見寫錯的地方,不貼程式碼,完整寫法見 PowerLanguage 策略從產生到 MultiCharts 的比對清單。

開盤區間突破是一種當沖規則:記下開盤後前幾分鐘的最高價和最低價,價格突破最高價就做多,跌破最低價就做空,收盤前平倉。它的規則與參數說明見 開盤區間突破的規則與參數。用它當第一支策略的原因是每一個區塊都用得到,而且結果很容易在圖上用肉眼對照。

  1. 參數宣告。這一區放之後想調整的數字:開盤區間要取幾分鐘、停損幾點、幾點幾分之後不再進場。寫成參數的好處是回測時可以在設定視窗裡改,不用動程式碼。常見錯誤:把這些數字直接寫死在條件裡,之後每改一次就要重新編譯。
  2. 變數。這一區放程式執行中會變動的值:目前這一天的區間最高價、區間最低價、今天是否已經進場過。常見錯誤:新的一天開始時沒有把區間變數歸零,結果用昨天的區間在今天交易。
  3. 進場條件。這一區描述什麼情況下買、什麼情況下賣:區間已經形成、價格突破區間高點就做多,跌破區間低點就做空,而且還在允許進場的時間內。常見錯誤:用當根 K 棒的收盤價判斷、又在同一根成交,這等於用還沒發生的價格下單,是前視偏差。
  4. 出場條件。這一區放停損和時間出場:停損是進場價往不利方向一定點數就出場;時間出場是持倉超過一定根數的 K 棒還沒到停損就出場。常見錯誤:只寫停損不寫停利或時間出場,結果所有的獲利單都靠收盤平倉結束。
  5. 收盤前強制平倉。這一區在收盤前的某個時間把所有部位平掉,當沖策略才不會留倉。常見錯誤:平倉時間設在 13:45,也就是收盤那一刻,但最後一根 K 棒收完就沒有下一根可以成交;改成收盤前幾分鐘,部位才真的會在盤中出掉。
一般日內交易訊號的五個區塊,依程式碼順序:可調參數、今日區間變數、區間突破進場、停損或時間出場,以及收盤前強制平倉 五個區塊,由上至下 一般範例,非 AlphaPrime 規則 1 2 3 4 5 參數 變數 進場 出場 強制平倉 可調整的數值 今日高點、低點 區間突破 停損、時間出場 收盤前出場 每筆交易都應可檢驗。 所以:在圖表上檢查三筆交易。
一支當沖訊號的五個區塊,由上而下就是程式碼的順序。這是通用的教學結構,不是 AlphaPrime 的規則。

寫完之後先編譯,再把訊號加到圖上,然後打開交易清單,隨便挑三筆交易回到圖上看:進場的那根 K 棒是不是真的突破了區間、停損的那筆是不是真的碰到了停損價。三筆都對,這支策略的結構就是對的。

回測前要先改哪些設定?

MultiCharts 的預設回測設定會讓報表偏樂觀,回測前先改五項:盤中成交模擬、手續費、滑價、交易時段、固定 1 口;改完再比較前後兩份報表,差距就是原本被高估的部分。這些設定在策略屬性(Strategy Properties)視窗裡,每一張圖要各自設定。

設定預設建議
盤中成交模擬只用開高低收四個價推測一根 K 棒內的路徑開啟 Bar Magnifier,或改用更細解析度的資料
手續費0依券商實收,含期交稅,每口每邊
滑價0至少一跳,市價單和停損單可設更多
交易時段資料有什麼就跑什麼與實際交易的時段一致
口數依策略屬性設定固定 1 口
假設範例:使用預設設定時淨損益為 12 萬元新台幣,設定實際成本與 Bar Magnifier 後為 7 萬元,因此預設值高估了 5 萬元 預設值高估獲利 淨損益,假設性新台幣範例 預設 12萬 修正後 7萬 差距 −5萬 差距就是預設值多算的部分。 所以:先設定成本、成交、交易時段。
預設與建議設定的對照。兩份報表之間的差距,就是預設值替你多算的部分。

五項各自為什麼重要:

  • 盤中成交模擬。Bar Magnifier 是 MultiCharts 用更細解析度的資料(例如 1 分 K 或 tick)來還原一根 K 棒內價格先走到哪裡的功能。沒有它,一根 5 分 K 內同時碰到停損和停利時,軟體只能用固定假設決定哪個先成交,結果常偏向對策略有利的那一邊。
  • 手續費。填你的券商實際收的金額加上期交稅,每口每邊。填 0 會讓交易次數多的策略看起來最好,加上費用後往往最先失效;費用怎麼估、平均每筆交易要比成本大多少,見 回測中的交易成本:手續費、滑價與平均每筆交易。
  • 滑價。滑價是訊號價和實際成交價之間的差距。市價單和停損單通常成交得比觸發價差,每邊至少填一跳;用兩倍滑價再跑一次,如果策略不行了,代表它靠的是便宜的成交。
  • 交易時段。和第四節的設定一致;日盤策略只跑日盤。
  • 固定 1 口。第一次回測固定 1 口,報表才能回答「這套規則本身有沒有效」。加碼或依資金調整口數會放大結果,也會把規則本身的問題藏起來。

假設範例

假設一支小台當沖策略在預設設定下的報表是:200 筆交易、淨利 NT$120,000。改成手續費加期交稅每口來回 NT$60、滑價每邊一跳(小台一跳 NT$50),每筆交易的成本是 NT$160,200 筆就是 NT$32,000。再開啟 Bar Magnifier 後,原本同根 K 棒內先停利後停損的幾筆變成先停損,又少了 NT$18,000。淨利從 NT$120,000 變成 NT$70,000,少掉的 NT$50,000 不是策略變差,而是預設值原本多算的部分。數字全部是假設。

Pardo(2008)對回測的要求很直接:回測裡的每一個假設都要能在實際交易中成立,成立不了的假設就要換掉。這五項設定就是最常不成立的五個假設。

不想自己寫 MultiCharts 程式碼,還能從哪裡拿到策略?

不自己從頭寫,策略有三個來源:券商和社群分享的範例、自己改寫現成的規則、以及用策略搜尋工具產生後匯出 PowerLanguage 再匯入 MultiCharts 核對。三個來源拿到的策略都要用第六節的設定重新回測,因為別人的報表用的是別人的費用、時段和資料。

  1. 券商與社群分享的範例。券商版通常附幾支範例訊號,社群也有人分享。好處是免費、可以直接編譯;要做的是打開程式碼,用第五節的五個區塊對照每一段在做什麼,看不懂的段落不要用。
  2. 自己改寫現成規則。把一個公開的規則(例如通道突破、均線交叉)照第五節的結構寫一遍,再加上自己的停損和時間出場。這是學 PowerLanguage 最快的方式,因為規則已經有了,你只要負責結構。
  3. 用策略搜尋工具產生後匯出。策略搜尋工具會在大量規則與參數組合裡自動回測,留下通過你設定條件的候選,再匯出成 PowerLanguage。這條路的關鍵不在產生,而在匯入 MultiCharts 之後的核對。

第三條路產生的策略長什麼樣子,下面是一個實際的例子。這次測試的市場是 NQ(E-mini Nasdaq-100 期貨)日線,期間 2019-01-02 到 2025-06-30,多空都做、固定 1 口,每筆交易計入 20 美元手續費和 10 美元滑價。它的規則是用最高價與最低價(Highest/Lowest)當唯一的進出場條件,沒有停損、沒有停利、沒有濾網;這是用標準指標組成的替代規則,不是本文主題(當沖訊號)本身。它是搜尋嘗試的 1,024 個候選中,依報酬對回撤留下來的一個;事後從 1,024 個裡挑出表現好的那個,結果一定會比較好看,這是選擇偏差,Bailey 等人(2014)說明了為什麼嘗試的候選越多,留下來的那個就越被高估。這些數字不代表這個規則賺了這筆錢,也不代表任何人能期待同樣的結果。

來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。NQ 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $10。

項目結果
淨利(已平倉)$58,910
最大回撤$33,420
交易筆數91
勝率59.34%
獲利因子1.492
平均每筆$647.36
在場時間11.84%
實際成交價是下一根 K 棒的開盤價:訊號 K 棒以某價格收盤,下一根 K 棒以較差的價格開盤,訊號收盤價與下一根開盤價之間的價差就是滑價的來源 實際成交價是下一根開盤價 訊號 K 棒,之後的那一根 K 棒 下一根開盤 訊號收盤 滑價 你無法以訊號收盤價成交。 因此:以下一根開盤價成交,再加 1 跳動點。
搜尋留下的候選在報表裡的摘要。先看交易筆數和持倉時間比例,再看淨利與最大回撤的比例;這些數字已含手續費和滑價。 NQ・日線・2019-01-02 至 2025-06-30・CPU 引擎回測

這份報表對 MultiCharts 使用者的用處在於它給了一組可以核對的數字:91 筆交易、11.84% 的持倉時間。匯入 MultiCharts 之後用同樣的資料、同樣的時段、同樣的 20 美元手續費和 10 美元滑價跑一次,交易筆數和淨利方向應該接近;筆數差很多,通常是時段或資料長度不同,方向相反則通常是成交假設不同。AlphaPrime 把搜尋與驗證後的策略匯出成六個平台的原始碼,PowerLanguage 是其中一種,支援的平台清單見 策略匯出支援平台;匯入 MultiCharts 之後逐項核對的步驟,見 如何把策略匯入 MultiCharts 並對齊回測。

將生成的策略匯入 MultiCharts 後,依序檢查:能否編譯、是否在相同資料與交易時段執行、交易筆數是否接近、淨損益正負號是否相同;若筆數或正負號不符,先修正設定,再改程式碼 不符?先修正設定 匯入後檢查順序 1 2 3 4 編譯 相同資料 交易筆數 損益正負 若不符: 修正設定 差異通常來自設定。 所以:最後才改程式碼。
從產生的策略到 MultiCharts 裡核對完成的策略。核對不過就回頭查設定,不改策略。

匯入後的核對順序是固定的:先編譯成功,再用相同資料和時段回測,然後比交易筆數,最後比淨利方向。筆數和方向都接近,再去看每一筆交易;差異大,先回頭查第四節和第六節的設定,查完還是差很多,才去看程式碼。

下一步可以這樣做:用你手上的台指期日盤資料,把第五節的五個區塊寫成一支訊號,先用預設設定回測一次,再照第六節改好五項設定回測第二次,把兩份報表的淨利差距和交易筆數差距記下來。這兩個數字會告訴你,你的第一支 MultiCharts 策略有多少是規則、多少是預設值。

常見問答

券商版 MultiCharts 要一直達到口數門檻嗎?

多數券商版的使用資格是持續性的條件,例如每月交易口數或帳戶資產,達不到的月份可能失去使用權或被收費。條件每家券商不同,也會調整,以券商的公告頁為準。評估時把為了達門檻多下的口數所付的手續費算進總成本。

MultiCharts 可以接台指期夜盤資料嗎?

可以,前提是資料源有提供夜盤資料,而且你在設商品時選了含夜盤的交易時段。只做日盤的當沖策略不要用含夜盤的時段,否則策略會在夜盤收到訊號,報表的交易筆數會變多。開圖後數一天有幾根 K 棒,就能確認時段設對了。

MultiCharts 程式碼和 TradeStation 的 EasyLanguage 一樣嗎?

PowerLanguage 和 EasyLanguage 的語法很接近,多數簡單的策略可以互相搬移,只需要少量修改。差異主要在部分保留字、函數名稱和下單指令的細節。從一個平台搬到另一個平台後,用相同資料和費用設定重新回測,比對交易筆數和淨利方向。

MultiCharts 當沖程式碼要包含哪些東西?

一支完整的當沖訊號至少有五個區塊:參數宣告、變數、進場條件、出場條件、收盤前強制平倉。少了最後一塊,策略會留倉過夜,就不是當沖了。停損和時間出場都寫在出場條件裡,平倉時間設在收盤前幾分鐘,而不是收盤那一刻。

參考文獻

  • Taiwan Futures Exchange. Mini-TAIEX Futures. https://www.taifex.com.tw/enl/eng2/mTX
  • Pardo, R. (2008). The Evaluation and Optimization of Trading Strategies (2nd ed.). John Wiley & Sons.
  • 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.