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

MultiCharts 軟體介紹:價格、PowerLanguage 與回測

MultiCharts 是一套 Windows 交易平台,把圖表、PowerLanguage 策略語言、附最佳化功能的回測,以及自動送單整合在同一個程式裡。它是付費軟體,提供限時試用,並連接你自選的資料商與券商;在它裡面遇到的回測落差,多半出自交易時段、成本與委託時點的設定,而不是最佳化功能。

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

目錄
  1. 什麼是 MultiCharts 軟體?系統化交易者用它做什麼?
  2. MultiCharts 價格多少?有免費版嗎?
  3. 圖表、回測與 PowerLanguage 如何配合運作?
  4. MultiCharts 連接哪些資料源與券商?支援台指期嗎?
  5. MultiCharts 與 TradingView、TradeStation 有何不同?
  6. 如何把別處建立的策略帶進 MultiCharts?
  7. 常見問題
  8. 參考文獻

什麼是 MultiCharts 軟體?系統化交易者用它做什麼?

MultiCharts 是一套 Windows 交易平台,把圖表、PowerLanguage 策略語言、附最佳化功能的回測,以及自動送單整合在同一個程式裡。系統化交易者可以在同一張圖表上測試規則,再直接用它實單交易。它是付費軟體,提供限時試用,資料商與券商由你自行選擇。

系統化交易者會把進出場規則寫下來,交給程式執行,而不是逐筆決定。這四項工作通常分散在不同工具:一個程式看圖表,一個寫規則並測試,一個負責委託路由。MultiCharts 把它們放在同一個視窗,因此在期貨交易室與台灣期貨交易人之間都常見。這個選擇與其他自動化方式的比較,見免寫程式自動交易的各平台差異。

本文的論點簡單:一個程式身兼四項工作,好處不在最佳化功能,而在回測與實單共用同一組交易時段、K 棒週期、成本與委託時點設定。MultiCharts 回測與實單成交之間的落差,多半出在其中一項設定不一致,所以每一節都會回到這幾項設定。

MultiCharts 是一個身兼四項工作的程式:圖表、PowerLanguage 訊號、回測與最佳化,以及券商自動化。資料從左側進來,委託從右側送往券商。 一個程式,四項工作 回測與實單共用同一組設定 MultiCharts 圖表 訊號 回測 自動下單 資料 券商 回測與實單共用設定。 所以:對齊時段、成本、委託時點。
一個程式,四項工作。資料從左側進來,同一套規則在內部畫圖、測試與自動化,委託從右側送出。
  • 圖表依連接的資料源繪製 K 棒,K 棒週期可用時間、逐筆、成交量或區間為單位,並以交易時段範本定義哪些時段屬於一個交易日。
  • PowerLanguage 訊號就是規則。訊號是編譯後的 PowerLanguage 程式,會在圖表上下委託;指標則是只繪圖的程式。
  • 回測與最佳化在圖表歷史資料上重播訊號,輸出績效報表(Strategy Performance Report),再在參數範圍內搜尋得分最高的數值。
  • 券商自動化在你為該圖表開啟自動化後,把訊號的委託送到連接的券商。

另有獨立產品 MultiCharts .NET,以 C# 取代 PowerLanguage。本文其餘部分談的是 PowerLanguage 版,因為多數策略工具匯出的就是這一版。

MultiCharts 價格多少?有免費版嗎?

MultiCharts 是付費軟體,可買斷永久授權,也可訂閱;免費的途徑是完整程式的限時試用,並沒有永久免費版。價格會變動,只有廠商自己的價格頁能確認目前數字,因此本文不列數字。

取得程式的方式分為四類:

  1. 永久授權。一次付費取得目前的主要版本,升級條件由廠商決定。適合已經確定這套程式會是日常工具的交易人。
  2. 訂閱。按月或按年付費。適合想先用完整程式測試數個月再決定的交易人。
  3. 試用。在限定天數內使用完整程式。時間足夠載入自己的資料、編譯一個訊號、讀一份績效報表;但不夠讓實單策略跑完一個完整的市場週期。
  4. 券商提供。部分台灣期貨券商為其客戶提供已串接自家資料與委託路由的 MultiCharts。條件由券商而非軟體廠商訂定,且通常把連線綁定在該券商的帳戶上。

授權之外還有兩項成本,編預算時容易漏掉:一是資料源,多數期貨資料商按月收費,另加交易所費用;二是策略交易期間必須保持開機的 Windows 電腦。試用只能決定你喜不喜歡這套程式,無法告訴你實單環境的運行成本。

圖表、回測與 PowerLanguage 如何配合運作?

MultiCharts 的策略是一個 PowerLanguage 訊號,依序經過以下步驟:在 PowerLanguage Editor 編譯、套用到圖表、在績效報表中檢視、用最佳化功能調整,最後切換成自動送單。串起各步驟的是圖表:每個訊號、回測與實單委託,都屬於一張圖表,而這張圖表只有一個商品、一種 K 棒週期與一個交易時段範本。

PowerLanguage 是策略語言,基本語法與 EasyLanguage 相同,以每根 K 棒的開盤、最高、最低與收盤等保留字,以及買進、賣出等委託語句為核心。PowerLanguage Editor 是撰寫與編譯的視窗;無法編譯的訊號不能套用。績效報表是回測後 MultiCharts 輸出的報表,內容有淨損益、回撤、交易明細、各期報酬,以及多空分項。最佳化功能會依你設定的範圍,對每一組參數值組合重跑訊號,方式是窮舉或遺傳演算法搜尋;MultiCharts 另提供推進分析最佳化工具,在滾動視窗上重新調整參數。

從寫下規則到實單策略的六個步驟:撰寫、編譯、套用到圖表、讀報表、最佳化、自動化;一條從報表回到撰寫的迴圈,標出多數工作發生的地方。 自動化排最後,不是最先 從寫下規則到實單策略 修規則 1 撰寫 2 編譯 3 套用 4 報表 5 最佳化 6 自動化 多數工作在報表迴圈。 所以:最後才自動化。
從寫下規則到實單策略。從報表回到編輯器的迴圈,是多數工作發生的地方;自動化是最後一步,不是第一步。
  1. 在 PowerLanguage Editor 撰寫訊號。進場、出場、部位大小,參數則設為輸入值。
  2. 編譯。編輯器會回報語法錯誤,修正到可編譯為止。
  3. 套用到圖表。選擇商品、K 棒週期與交易時段範本。設定策略屬性:手續費、滑價,以及委託在下一根 K 棒成交,還是在當根 K 棒內成交。
  4. 讀績效報表。檢視交易筆數、扣除成本後的平均每筆損益、回撤與權益曲線。規則不對,就回到第 1 步。
  5. 最佳化參數。為各個輸入值設定範圍,讓最佳化功能重跑。把最佳結果視為多次嘗試中的最佳者,其中帶有挑選加成;Pardo (2008) 說明為何最佳化網格的頂端會高估規則接下來的表現,Bailey et al. (2014) 則顯示這個加成如何隨嘗試的組合數快速成長。
  6. 啟用自動交易。把圖表切換成自動化,訊號的委託便會送往券商。

第 3 步有兩項圖表設定需要留意,因為它們對報表的影響比任何參數都大。第一是委託時點:預設情況下,訊號在 K 棒收盤時計算,市價委託在下一根 K 棒的開盤成交;MultiCharts 也能在 K 棒內產生委託,或用名為 Bar Magnifier 的工具讀取更細的資料來精修成交。第二是交易時段範本,它決定有哪些 K 棒存在,也就決定日 K 棒在哪裡收盤。生成策略的 PowerLanguage 比對檢查清單會逐項說明這些設定。策略上線後,交易日誌軟體可以把實單成交記在回測績效報表旁邊,用來確認第 3 步設定的滑價,是否貼近券商實際給的成交。

MultiCharts 連接哪些資料源與券商?支援台指期嗎?

MultiCharts 把資料連線與券商連線分開,所以圖表 K 棒的來源與委託的路徑可以各自選擇,台指期也能透過平台所列的台灣資料商與券商畫圖與交易。實際效果是:一個資料源可以供應多張圖表,這些圖表再把委託送往不同券商;更換券商時,也不必重建圖表。

資料源是把歷史與即時價格送進圖表的連線;券商連線則是接收委託,並回報成交與部位的連線。MultiCharts 的連線清單中有許多國際期貨資料商與券商,部分公司兩者兼任。目前的清單在廠商網站上,內容會變動,購買授權前請先對照自己的券商。

MultiCharts 使用兩條獨立的連線:國際或台灣的資料源把價格送進左側的圖表,委託則從右側送往國際或台灣的券商,所以一個資料源可以服務多家券商。 兩條獨立連線 一個資料源可供多家券商使用 資料源 券商 國際 台灣 國際 台灣 MultiCharts 資料與委託各自獨立。 所以:換券商,圖表不變。
兩條獨立的連線。圖表由左側餵入資料,委託往右送出,一個資料源可以服務多家券商。

台灣交易人的答案是肯定的:MultiCharts 透過台灣資料來源與券商連線,支援台指期、小型台指期與其他 TAIFEX 商品,也有數家台灣期貨券商發行綁定自家資料源的 MultiCharts。台指期有三項設定,比美國商品更重要:

  1. 交易時段範本。台指期有日盤與獨立的夜盤。只用日盤範本的圖表,與用全時段範本的圖表,同一條規則會產生不同的日 K 棒與不同的回測;差異見台指期夜盤交易時間與結算日,免費工具期貨現在有開盤嗎?則會依你所在的時區顯示目前的交易時間。
  2. 商品與轉倉。連續月如何建構、何時從一個月份轉到下一個月份,由資料商決定。以連續月序列做的回測,與以近月合約做的實單圖表,在結算前後可能不一致。
  3. 每點價值與成本。策略屬性記載每口的手續費與滑價,商品設定記載每點價值。交易所會調整交易時段、每點價值與保證金;各商品目前的數值,請以 TAIFEX 的合約頁面為準。

MultiCharts 與 TradingView、TradeStation 有何不同?

三個平台的差異,主要在程式在哪裡執行、使用哪種策略語言、資料從哪裡來,以及券商是固定還是自選,而不在能不能回測。三者都能在歷史資料上重播規則並輸出報表;選擇哪一個,取決於報表周邊的環境。

項目MultiChartsTradingViewTradeStation
執行環境Windows 桌面版瀏覽器(及應用程式)Windows 桌面版
策略語言PowerLanguagePine ScriptEasyLanguage
資料來源自選並自行付費的資料商內建於服務包含在券商帳戶內
券商連線清單中的任一券商其串接清單中的券商TradeStation 自家券商
計價方式永久授權或訂閱訂閱方案綁定券商帳戶
實單交易時電腦須保持開機是,自己的電腦否,由服務端執行圖表是,自己的電腦
三個平台的比較:MultiCharts 使用 PowerLanguage,資料與券商可自選;TradingView 使用 Pine Script,資料內建;TradeStation 使用 EasyLanguage,資料與券商綁在一起。 綁定或自選? 語言,以及誰提供資料 平台 語言 資料、券商 MultiCharts PowerLanguage 自行選擇 TradingView Pine Script 資料自帶 TradeStation EasyLanguage 兩者綁定 自選成本較高,束縛較少。 所以:依所用券商而選。
各平台在哪裡執行、使用哪種語言,以及資料與券商是綁定提供還是分開自選。

若要在平台之間搬移策略,語言這一列最重要。PowerLanguage 與 EasyLanguage 的語法大多相同,因此訊號在 MultiCharts 與 TradeStation 之間,通常只需小幅修改;搬移策略時的變動,見EasyLanguage 與 PowerLanguage 的差異。Pine Script 是另一種語言,執行模型也不同,所以 TradingView 策略搬到桌面平台時,是重寫而不是修改。

資料與券商這兩列,決定你的運行成本與依賴程度。綁定式配置(資料與券商出自同一家公司)起步較簡單,但策略也就綁在那家公司上;自選式配置(MultiCharts)組裝成本較高,更換資料商或券商時,策略卻不必修改。哪一種適合你,取決於你交易的是單一券商的商品,還是透過多家券商交易多個市場。

如何把別處建立的策略帶進 MultiCharts?

在其他研究工具建立的策略,會以 PowerLanguage 原始碼的形式進入 MultiCharts:編譯後,套用與研究回測相同的交易時段、K 棒週期、成本與下一根 K 棒成交設定,再與研究報表比對,確認後才開啟自動化。匯入本身只要幾分鐘;決定 MultiCharts 報表有沒有意義的,是設定有沒有一併帶過去。

匯入 MultiCharts 的五個步驟:匯出、編譯、套用、對齊設定、比對;對齊這一步涵蓋必須隨程式碼一起帶過去的五項設定:交易時段、K 棒週期、成本、委託時點,以及合約與轉倉規則。 帶過去五項設定 匯入步驟與須對齊項目 1 匯出 2 編譯 3 套用 4 對齊 5 比對 交易時段 K 棒週期 成本 委託時點 合約、轉倉 設定一變,策略就不同。 所以:先比對交易筆數。
五個匯入步驟,以及必須隨原始碼帶過去的五項設定。在不同設定下測試的策略,就是另一個策略。
  1. 從研究工具匯出 PowerLanguage 原始碼。把研究報表開在旁邊。
  2. 在 PowerLanguage Editor 編譯。若輸入值的名稱與預設值,和研究設定相同,代表原始碼正確帶過了參數。
  3. 套用到商品、K 棒週期與交易時段範本都相同的圖表。以只含日盤的交易時段建出的日 K 棒,和以全時段建出的日 K 棒,收盤時間不同,訊號也不同。
  4. 設定相同的手續費、滑價與委託時點。在策略屬性中填入研究回測每筆收取的手續費與滑價;若研究回測採用下一根 K 棒成交,這裡也維持下一根 K 棒成交。
  5. 讀績效報表。把交易筆數,以及第一筆與最後一筆交易的日期,與研究報表比對。成交上的小差異屬正常,因為兩個程式的進位與轉倉方式不同;交易筆數不同,就代表某項設定不一樣,通常是交易時段或合約序列。

研究端的報表是比對的基準,因此先了解它的樣子。下面這次回測,就是這種交接的研究端。AlphaPrime(Valynox)以一條替代規則,在 NQ 日 K 棒上測試,期間為 2019-01-02 至 2025-06-30,多空皆做,一口,每筆手續費 $20、滑價 $10。替代規則是 Tail Heaviness Index 規則,單獨作為進出場依據,不加停損、停利或濾網,因為 MultiCharts 本身是平台,不是可以拿來測試的規則。搜尋從約一千個嘗試過的候選策略中,依報酬相對回撤保留了這一個,而事後挑出被保留的那個,會讓它看起來更好:這些數字描述的是該歷史資料上的那一次回測,不代表這條規則或讀者能賺到的結果。

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

數字結果
淨損益(已平倉交易)$195,475
最大回撤$43,730
交易筆數153
勝率55.56%
獲利因子1.913
平均每筆損益$1,277.61
在市場中的時間28.89%
交接前的研究端摘要。請留意交易筆數、期間與每筆成本:這些再加上 K 棒週期與交易時段,就是要帶進 MultiCharts 策略屬性、再與其報表核對的數值。
交接前的研究端摘要。請留意交易筆數、期間與每筆成本:這些再加上 K 棒週期與交易時段,就是要帶進 MultiCharts 策略屬性、再與其報表核對的數值。 NQ · 日 K 棒 · 2019-01-02 至 2025-06-30 · CPU 引擎回測

從這份報表帶進 MultiCharts 的不是淨損益,而是條件:日 K 棒、相同的日期範圍、一口、每筆手續費 $20 與滑價 $10、下一根 K 棒成交,以及交易筆數 153,這是第一個要比對的數字。若 MultiCharts 在相同日期上回報明顯不同的交易筆數,先停下來找出是哪項設定不同;完整做法(包括合約轉倉怎麼處理)見策略匯入 MultiCharts 並對齊回測結果的方法。那次搜尋中的每個候選策略,都已扣除摘要框中所示的手續費、滑價與下一根 K 棒成交,因此 AlphaPrime 匯出到 MultiCharts,以及平台匯出清單上其他平台的原始碼,帶著與報表相同的成本假設,交易筆數的比對才有意義。

假設性範例

假設某策略在兩份報表中都有 200 筆交易。研究回測每筆收取 $10 滑價,合計 $2,000。在 MultiCharts 中,滑價欄位留成零,成交改為當根 K 棒的收盤價,而不是下一根的開盤價。MultiCharts 報表因為少了滑價,多出約 $2,000 的獲利,再加上較早成交帶來的差額,權益曲線看起來也更平滑。規則完全沒變,變的是兩項設定。填入 $10 滑價並改回下一根 K 棒成交後,兩份報表就會回到正常進位誤差內的相近數字。

購買或匯入任何東西之前,建議先做這件事:打開一個你信任的策略的研究報表,把它的交易時段、K 棒週期、每筆成本、委託時點與合約序列寫在一行;再打開 MultiCharts 的策略屬性與圖表設定,找出這五個值各自放在哪裡。兩邊的位置都能指出來時,匯入只需幾分鐘,報表比對也才會告訴你一些事。

常見問題

MultiCharts 價格多少?有免費版嗎?

MultiCharts 是付費軟體,以永久授權,或按月、按年訂閱的方式販售。沒有永久免費版;免費的途徑是完整程式的限時試用。價格會變動,請到廠商的價格頁確認目前數字;資料源由資料商收費,要另外編預算。

MultiCharts 支援台指期嗎?

支援。台指期、小型台指期與其他 TAIFEX 商品,可透過台灣資料來源與券商連線,在 MultiCharts 中畫圖與交易,也有數家台灣期貨券商發行綁定自家資料源的 MultiCharts。最先要檢查的設定是交易時段範本,因為只含日盤的圖表與全時段圖表,會產生不同的日 K 棒與不同的回測。

MultiCharts、TradingView 與 TradeStation 有何差別?

MultiCharts 是使用 PowerLanguage 的 Windows 程式,資料商與券商可分開自選。TradingView 在瀏覽器中執行,使用 Pine Script,自行供應資料,並透過其連接清單中的券商下單。TradeStation 是使用 EasyLanguage 的 Windows 程式,附帶自家券商與資料。三者都能回測;差別在語言、資料來源,以及券商的選擇方式。

PowerLanguage 和 EasyLanguage 是同一種語言嗎?

PowerLanguage 與 EasyLanguage 的語法大多相同,因此許多策略在 MultiCharts 與 TradeStation 之間只需小幅修改。兩者在部分保留字、函式與執行細節上不同,所以搬移後的策略必須重新編譯,並比對回測後才能信任。TradingView 使用的 Pine Script 是另一種語言,策略搬移時是重寫而不是修改。

MultiCharts 可以在 Mac 上執行嗎?

MultiCharts 是 Windows 程式。Mac 使用者可在 Windows 虛擬機器中執行,或另用一台 Windows 電腦。實單自動交易時,執行 MultiCharts 的電腦必須在整個交易時段保持開機並連線,因此許多交易人使用專用的 Windows 電腦或租用的 Windows 伺服器。

參考文獻

  • 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.
  • Taiwan Futures Exchange. Mini-TAIEX Futures. https://www.taifex.com.tw/enl/eng2/mTX