2025年8月13日 星期三

日本精選百大名城21天

花了我一個星期的時間同時利用ChatGPT跟Gemini排出年底日本21天的鐵道之旅,如果沒有AI幫忙的話我應該是安排不出來這麼複雜的行程,主要的複雜度在於鐵路車次的選擇跟銜接資訊,AI也常常查錯,所以需要兩個AI互相挑毛病,後來發現Gemini在行程安排的正確性比ChatGPT好一點,21日JR Pass全國版的售價是10萬日圓,整個行程如果不用JR Pass的話要20萬日圓,算是物盡其用了。

日本 21 天「百大名城 × 現存天守 × 萬豪」鐵道之旅

北海道 → 東北 → 中部 → 四國 → 中國地方 → 九州

🌟 行程簡介

這是一條以 日本百大名城、現存天守與歷史文化古城 為主軸的深度鐵道旅行,串連 北海道、新幹線沿線東北、中部國寶名城、四國名城、瀨戶內文化景觀、中國地方古城與九州名城
全程以 JR Pass 為主要移動工具,兼顧效率與舒適,並搭配適時的 地方巴士、計程車與渡輪,確保在冬季日照短的情況下,仍能高效完成參訪。住宿以 萬豪集團飯店 為主軸,確保品質與會籍累積。


🎯 特色亮點

  1. 百大名城 × 現存天守的深度蒐集

    • 現存12天守中造訪 松本、犬山、丸龜、松江、備中松山、高知、松山 等多座。
    • 百大名城涵蓋:五稜郭、弘前、白河小峰、會津若松、松本、犬山、岐阜、丸龜、松江、備中松山、高知、熊本、佐賀、福岡城跡、唐津…等。
    • 同時兼顧國寶級名城(松本、松江、犬山、丸龜)與重要歷史舞台(會津若松戊辰戰爭、熊本城西南戰爭)。
  2. 鐵道與渡輪交織的經典路線

    • 北海道特急北斗與東北新幹線「はやぶさ」的長距離移動,體驗日本高速鐵道的效率。
    • 四國與本州間串連使用 特急しおかぜ、南風 及瀨戶內海高速船 Super Jet
    • 全程路線設計考慮冬季班次與天候備案,降低延誤或停駛影響。
  3. 季節與景觀融合

    • 札幌首日遇上 Sapporo White Illumination 點燈季開幕,夜景氛圍濃厚。
    • 冬季特有的雪景城郭(弘前、松江、備中松山等)搭配天守與石垣更具歷史感。
    • 宮島大鳥居、虹之松原等自然景觀與古城結合,形成多層次體驗。
  4. 萬豪飯店串連住宿

    • 北自札幌、南至福岡,全程精選 Fairfield、Four Points、Westin、Sheraton、Marriott Associa 等萬豪品牌。
    • 結合保級需求與景點鄰近性,確保每天結束行程後能快速入住、休息與補給。
  5. 文化、美食與溫泉兼顧

    • 每個地區融入特色美食:札幌湯咖哩、函館海膽丼、仙台牛舌、松本蕎麥麵、名古屋味噌豬排、廣島牡蠣、松江蜆飯、高知鰹魚、熊本馬肉、博多豚骨拉麵。
    • 安排多處日歸溫泉(洞爺湖足湯、玉造溫泉、道後溫泉),旅途間舒緩體力消耗。

2025年7月26日 星期六

策略失效的處理流程

 

策略不會永遠有效,失效處理才是交易的日常

這篇文章延續〈如何管理你的交易策略〉的主題,進一步深入討論「策略的監控指標」與「策略失效的處理流程」。

我們在上一篇提到,策略可能會因為種種因素而失效,或是在某段時間內表現不如預期。這其實是常態,而不是異常。真正有經驗的程式交易員都知道:

開發出一套策略,不代表你就此擁有了一台可以自動印鈔票的機器。

很多人對程式交易的想像,是寫好一支程式後就能「躺著賺」,不用再管市場動向。但事實上,策略上線後才是工作真正開始的時候。

任何策略都有它的生命週期,這個生命週期通常包含以下幾個階段:

研發 → 回測 → 模擬 → 實盤 → 監控 → 迭代 / 下架

在這個週期中,策略的設計與開發大概只佔整體工作量的 30%,而監控策略表現、偵測異常、處理失效與調整迭代,才是佔據交易員日常的大宗 —— 約 70% 的心力都必須投注在這上面。

而且,越是運行中的策略、資金部位越大的系統,越需要嚴格的監控與即時應變。

最可怕的狀況就是:你沒有事先設計策略的「健康監控機制」,也沒有明確的「失效處理流程」。這樣一來,一旦策略出現異常,你可能根本來不及反應,等你意識到績效偏離正常情況時,帳戶的淨值早已遭受重創,甚至無法挽回。

所以我們要建立的觀念是:

開發策略固然重要,但設計好一套策略的監控與失效處理機制,其實才是你能否長期生存與穩定獲利的關鍵。

接下來我們會從幾個層面切入,具體探討如何建構策略監控機制、哪些指標可以用來判斷策略是否失效,以及在策略出現異常時,應該怎麼處理與決策。

在開始監控之前,先建立你的交易績效資料庫

當你的策略開始實盤運作之後,策略監控的第一步,不是設定指標、也不是畫績效曲線,而是先建立一套完整的「真實交易資料庫」。

這個資料庫必須能夠客觀、準確地紀錄你每一筆交易的實際執行情況,並能在後續幫助你做各種統計、評估與診斷。這一步是策略管理的根基。


為什麼我選擇自己建立報表,而不是依賴回測軟體?

很多人可能會直接用策略回測軟體來追蹤策略的績效,例如 MultiChart、Backtrader、XQ 全球贏家內建的績效報表。但我不建議只靠這些工具,原因如下:

  1. 回測軟體不會反映真實世界的執行風險

    • 像是滑價、成交延遲、API 錯誤、系統當機、盤中取消未成等狀況,回測完全不會顯示,但這些卻是真正會吃掉你獲利的原因。

  2. 策略會隨著時間微調,回測報表不再準確

    • 一旦你對策略參數或邏輯做了小幅修正,舊的回測報表就失去參考價值,這時候你真正可以依賴的,就是你自己紀錄下來的「實盤資料」。


我的實務做法:Excel + 交易日誌報表

我自己是用 Excel 建立一套簡潔但有效的紀錄系統,主要包含以下幾個模組:

1. 交易紀錄主表

  • 每筆交易都要記下:下單時間、標的、方向、價格、成交狀態、預期價格、實際價格、滑價、損益、註解

  • 是否為策略信號?還是人工干預?(註解欄標示)

2. 滑價差異分析表

  • 比對預期價格與實際成交價格

  • 統計每一種情境(時段、商品、策略類別)的平均滑價與標準差

  • 如果滑價異常擴大,立刻提出警訊

3. 錯帳與異常統計表

  • 紀錄例如:未成交、斷線、重複下單、成交價格超出滑價容忍區間等狀況

  • 標記問題出在哪個環節(券商、API、策略邏輯、網路)

這些報表的建立,讓我能在回測結果與實際交易之間建立一座橋梁,也能在市場狀況或執行層面出問題時,第一時間掌握狀況。


接下來:從交易紀錄中建立監控指標

當你有了乾淨、結構化的實盤資料後,接下來就可以根據這些資料建立策略監控指標。這些指標可以量化出策略是否仍在健康區間內,或已經出現「異常偏離」。

以下是我(結合 ChatGPT 提供的建議)整理的四大監控模組:

模組工具 / 方法告警範例
績效監控CUSUM、EWMA z-score累積偏差突破 3 σ(績效偏離正常表現)
行為漂移監控KS Test、P-value Tracker特徵分布顯著變動,模型不再適應市場
交易成本監控滑價追蹤、理論 vs 實際交易成本滑價 > 回測均值 + 2 σ
風控閾值監控即時 VaR / Expected Shortfall超標時自動減倉或發出警訊

這些模組的好處是可以讓你用數據、用統計的方法來回答一個關鍵問題:

「我的策略,現在還健康嗎?」


小結

策略監控並不是一個「事後才做的事情」,它從你策略上線的第一天就必須開始準備,而完整而精確的交易資料庫,就是策略監控的基礎建設。

只要你把這個基礎打穩了,後續不論是要設定停用條件、分析失效原因、還是設計再優化流程,都有可靠的依據可循。

策略上線後,我是如何追蹤、調整與管理?

當我們建立起完整的實盤績效監控系統之後,策略就不再是黑箱操作,而是能被持續觀察與評估的活體系統。從這個時候起,你可以進入到「長期監控與策略管理」的階段。

我的原則很簡單:

只要策略的績效沒有明顯偏離預期太多,我通常會讓它持續執行至少半年以上,然後再定期做檢視與盤點。


一、第一層檢查:執行層面是否穩定?

策略失效有時候並不是「策略邏輯錯了」,而是因為執行面出了問題。例如:

  • 進場點或停損點設計得太接近市場極端位置,例如當日高點/低點,導致成交時剛好遇到「快市」行情,產生巨額滑價。

  • 報價更新延遲或 API 資料斷線,造成成交價偏離策略預期。

  • 語法或邏輯錯誤導致幽靈單出現(例如重複下單、撤單失敗、錯誤的價格觸發條件等)。

這些我都親身經歷過,也學到一個教訓:

不要急著調策略的核心邏輯,先確保執行是乾淨、穩定、可驗證的


二、第二層檢查:市場結構是否出現重大變化?

除了執行面,另一個重要的檢查點是:市場的基本結構有沒有發生改變?

以台灣期貨市場為例,過去幾年曾經出現過以下改變:

  • 大幅調降期交稅,提升整體交易量與流動性

  • 各大券商為搶市佔率大降手續費

  • 新商品推出:如周選擇權、股票期貨、微型期指、週五到期的台指選擇權等

  • 制度性調整:如取消保證金最佳化、交易時間延長

這些變化都可能影響原本策略的有效性,尤其是那些依賴成交量、波動率或開盤機制的短線策略。當市場的規則改變,你的策略可能也要跟著進化


三、第三層評估:策略表現是否明顯落後其他策略?

我的方式是將所有策略一起放進一張「績效比較表」裡,然後長期觀察:

  • 若某個策略在所有策略中連續兩年績效墊底,我通常會將它直接下架

  • 我不會執著於修改它,因為:「能修復的策略早就修了,修不動的策略就該讓它退休。

這樣的做法也讓我可以保持系統的簡潔與效率,而不是積了一堆「我曾經有信仰」的殭屍策略。


四、策略汰舊換新:持續開發與補位機制

為了維持整體交易系統的活力與適應性,我會固定每年開發 1 到 2 套新策略,即使現有策略都還在跑,也會當作「儲備部隊」。

這些新策略的用途有兩個:

  1. 一旦現有策略下架,可立即補位

  2. 若市場條件改變,也可以快速調整策略組合配置

這就像球隊需要養新秀,即使老將還能打,但你得提前準備下一輪的先發名單。


五、那麼,到底「多久沒賺錢就算失效」?

這是最多人問的問題之一,但我必須誠實地說:

這個問題,沒有簡單、標準、放諸四海皆準的答案。

為什麼?因為交易是一門動態的、不確定的決策過程。程式交易雖然讓我們能用邏輯與紀律來約束操作,但並不代表所有事情都有絕對的量化門檻可以照表操課

  • 有些策略遇到盤整期可能一年都不賺錢,但仍具備長期獲利能力

  • 有些策略明顯已與市場脫節,即使短期內有小利,也應該停用

最終還是要回到你對策略的理解、對市場的掌握,以及你是否有建立科學而穩健的監控與判斷機制


小結

策略管理的精髓,不在於每一筆交易都賺錢,而是:

  • 在失效來臨時,你是否能及時發現

  • 在環境變化時,你是否能有條理應對

  • 在策略退場時,你是否有備胎可以上陣

交易從來不是完全自動化的機器工作,程式交易的真正價值是讓我們用更客觀的方式來輔助判斷,而不是替代判斷本身

這也正是程式交易這項工作最具挑戰,也最迷人的地方。

文章經 AI 編輯整理



2025年7月9日 星期三

如何管理你的交易策略?

上次寫了《程式交易入門指南》之後,有些讀者私訊詢問我:

  • 「策略失效的標準到底是什麼?」

  • 「為何過去有效的策略現在無法獲利?」

這其實都是非常重要的問題。因為絕大多數的交易策略,在正式上線後的真實績效,往往與回測績效存在極大的落差。即便策略上線後一開始能夠獲利,也很有可能在某段時間後表現開始變差,你會懷疑它是不是已經「失效」了。

當你遇到這種情況,到底應該如何處理?

  • 是該有紀律地繼續執行?

  • 還是應該果斷將策略下架?

  • 若要下架,停止使用策略的標準應該如何設定?

這些問題,是每位程式交易員都必須面對並解決的重要難題。

在進一步討論這些議題前,我們應該先思考一下:

「為什麼策略會失效?」

以下是我根據多年實務經驗整理出來的常見原因:


一、策略失效的六個常見原因

1. 最常見原因:過度擬合(Overfitting)

過度擬合是大多數策略開發者容易犯的錯誤,通常是因為:

  • 回測樣本不足:導致你的策略只適合特定歷史區間。

  • 參數過多,自由度過高:使策略的調整空間太大,更容易對歷史行情過度擬合。

以簡單的例子來說:
如果你的策略只用一條均線當作進場標準,這個策略的自由度是「1」。若你再加入另一條均線進行輔助判斷,自由度就變成了「2」。
一般來說,自由度越高的策略,回測績效越容易漂亮,但真實表現反而更容易失效。


2. 交易成本設定過低

尤其是短線或當沖交易策略,你回測時可能低估了滑價或手續費成本。回測看起來獲利極佳,但實盤交易後卻非常慘烈。

解決這個問題的方法就是:

  • 策略上線後,一定要追蹤真實的交易成本與滑價。

  • 每日或每週監控平均滑價,確保回測成本與真實交易環境相符。

交易成本和滑價的數據,是我每天看交易報表時最關注的指標之一。


3. 市場流動性不足或策略被跟單

另一個原因可能是:

  • 市場流動性不足:你的部位過大導致實際滑價太嚴重。

  • 策略被複製或跟單:尤其是市場上類似策略太多,大家同時搶著下單時容易造成「擠兌」現象。

這一點我有切身之痛:
早期我還是透過營業員人工下單時,我因為績效不錯,許多人偷偷跟單,導致市場提前反應,造成我下單時劇烈滑價,曾經出現滑價 30 點以上的情況。後來我花了不少心力才發現問題原因。


4. 被市場大戶反套利(Stop-hunting)

有時候市場上大戶或法人,會透過觀察市場一般散戶的慣用進出場點、停損價位,特意用大單推動價格觸擊這些位置,造成短暫的快速波動(俗稱「快市」),然後迅速反向平倉獲利。

這種情況在圖表上常見為短暫的「假突破」。許多短線策略,尤其容易被這種反套利行為重傷。


5. 市場結構的重大改變(Regime Shift)

市場並非恆常不變,而是時常受到各種結構性因素影響,例如:

  • 法規或稅率的調整(如期交稅大幅調降或提高)

  • 市場流動性改變

  • 微觀市場結構(如取消保證金最佳化)

  • 交易規則變動或交易參與者組成改變

這些因素都可能導致你策略原本的交易邏輯和績效突然失去效果。


6. 訊號來源衰退(Signal Decay)

策略有效性通常建立在某些市場條件或訊號來源之上。當這些訊號逐漸消失或變得不明顯,策略自然會失效。

以我的經驗為例:
2004 下半年到 2007 上半年,整整三年,台灣大盤的波動率非常低,常常一天的高低差只有不到 50 點,一整年高低點差不到 2000 點,當沖策略根本無法發揮作用,這段期間我經歷了非常艱難的時期,幾乎無法獲利。


二、策略失效後,該如何處理?

當你理解了策略失效的原因之後,下一步就是要考慮:

  • 應該如何定義策略的停用條件?

  • 策略失效後該如何調整?

這個主題我會在下一篇文章詳細展開,但基本原則是:

  1. 設定明確的績效評估標準與停損條件(如 Sharpe ratio 或最大回撤)。

  2. 定期檢查策略績效,偵測異常表現。

  3. 策略失效時,迅速執行「停用」或「再優化」程序,以避免不必要的資金損失。


三、小結:成功策略管理的核心思維

策略不會永久有效,因此「管理」你的策略比「設計」策略更重要。
透過有效的事前規劃、事中監控與事後檢討調整,才是真正能讓你的交易系統長久獲利的關鍵。

我下一篇文章會進一步討論「策略的監控指標」與「策略失效的處理流程」,請持續關注!


文章經 AI 編輯整理

2025年6月10日 星期二

程式交易入門指南:從觀念建立到策略開發

程式交易入門指南:從觀念建立到策略開發

最近兒子問我能不能寫一篇從入門到進階的程式交易文章。我想了一下,程式交易的進階內容實在太廣,從統計模型、機器學習、風控架構到執行效率優化等等,我過去也寫過不少相關的進階文章。如果你對那些主題有興趣,歡迎翻閱我的其他分享。不過今天,我想從最基本的角度出發,寫給那些「有投資經驗,但從未寫過程式交易」的朋友們,希望你能找到一個進入量化交易世界的切入口。


程式交易 ≠ 自動下單

我們一提到「程式交易」,多數人的第一個反應是:「喔,就是寫程式讓電腦自動幫你下單嘛!」

這個想法並不錯,但有點太過表面。

其實,用電腦程式自動下單只是整個流程中的最後一步而已,而且現在大多數券商都已經提供標準的 API 介面(像是 REST、WebSocket、FIX Protocol 等),要實作出一個自動下單功能,從技術上並不算太困難。寫個幾十行 Python,就可以做到基本下單動作。

但,程式交易的核心絕對不是「會不會自動下單」,而是:「你要讓電腦照著什麼邏輯來下單?」這才是最難、也最重要的部分。


核心在於「決策模型」——也就是量化交易

換句話說,程式交易的真正價值,在於你能不能建立出一套可量化、可驗證、可執行交易決策模型。這就是所謂的「量化交易」(Quantitative Trading)。

什麼叫「量化」?就是你不能憑感覺說「今天看起來台積電很強,我來追一下」,也不是靠什麼神秘技術指標說「K 線長這樣應該會漲」。這些都太主觀。

量化的意思是:你要定義一個清楚的規則,例如:

  • 當 5 日均線穿越 20 日均線時買進

  • RSI 小於 30 時進場,突破 50 時出場

  • 或是過去 3 年股價年化報酬大於 15%,本益比小於 10 的個股進入觀察名單

這些規則不是靠「靈感」想出來,而是根據你對市場的理解、回測結果與風險報酬評估慢慢調整出來的。


量化交易的優點:讓決策可以複製、測試、優化

人腦做決策有一個問題,就是容易受情緒影響、記憶模糊、不一致。你昨天認為應該停損,今天卻可能因為新聞影響改變想法。而有關人性上的偏見是如何影響決策行為這部分,我建議去閱讀行為經濟學的書,裡面會提到許多人類在金融決策中容易犯的錯誤有哪些。

而電腦不會受到這些影響。只要你的策略寫得清楚,它就可以:

  • 準確執行每一筆交易邏輯

  • 讓你用歷史資料測試策略表現(稱為回測

  • 根據績效評估是否值得投入資金

  • 做好風險控管,設定停損、部位大小

當策略建立完成並驗證有效後,自動下單只是讓這個模型「上線執行」而已。核心始終是策略邏輯,而不是自動下單本身。


建立模型之前,先談談如何選擇工具

在開始建立你的第一個量化模型之前,有一個主題我認為非常值得先聊聊 —— 選擇工具

現在的工具選擇真的非常多,不論是寫程式、做回測、連接交易所 API,幾乎都有現成框架可以用,甚至很多平台直接提供圖形化介面,不用寫太多程式碼也能執行策略。但事情在我剛開始接觸程式交易的時候並不是這樣。

那個時候,可用的工具非常有限。最實用、最容易上手的工具其實就是 Excel。你可以用它來計算技術指標、做簡單回測、甚至透過 VBA 做些自動化的工作。雖然功能有限,但對於剛開始摸索的人來說,已經是很不錯的起點。

後來我開始使用 TS2000i(TradeStation 2000i),這是一套針對期貨交易設計的本地端策略執行平台。在當時,它算是相當強大的工具,可以幫你把策略轉成 EasyLanguage 來跑回測和即時訊號。對期貨交易特別有幫助,因為它可以穩定處理 Tick 資料與即時行情反應。

再後來,TradeStation 轉型為券商,主力就不再放在開發交易工具上。原來開發團隊中的一部分人出走,成立了另一家公司,推出了一套非常相似但更靈活的工具 —— MultiChart。這套軟體可以說是承襲了 TS2000i 的優點,同時開放更多元的資料來源與下單接口,因此在後來一段時間內,成為 期貨程式交易的主流工具之一

如果你是以股票交易為主,那麼也有其他選擇。例如:

  • XQ全球贏家:介面友善,支援台股回測,適合不熟程式語言的投資人。

  • FinLab(AI量化投資平台):以 Python 為主,介面現代,對新手友好,也有一些內建策略模組可以直接套用。


工具的選擇沒有標準答案

選擇什麼工具,最重要的是取決於幾個因素:

  1. 你要交易的標的

    • 股票還是期貨?

    • 台股還是美股?

    • 有無即時資料需求?

  2. 你的技術背景

    • 熟不熟 Python、EasyLanguage 或是 C#?

    • 喜歡圖形化介面還是喜歡自己寫程式?

  3. 你希望做的事情

    • 只是做歷史回測?

    • 還是要即時下單?

    • 需要接券商 API 嗎?

現在因為 AI 協助越來越普及,像 ChatGPT、Copilot 等工具已經可以協助寫出大部分的程式碼樣板,讓程式交易的技術門檻比以前低很多。你不需要是資工背景,也能靠 AI 幫你把策略邏輯轉成可執行的程式碼。

但我要強調一點:寫程式變得容易,不代表交易會變得簡單

最終的難題還是會回到本質:
你設計的策略邏輯,能不能穩定、長期地獲利?

這才是程式交易的核心。再多的工具、再漂亮的界面,最後都要靠你能否建立一套真正有優勢的交易系統。


技術指標陷阱:你是在看後照鏡開車嗎?

當我們談到策略開發的時候,一般人最直覺的做法,往往是從技術分析指標下手。這也不奇怪,畢竟你翻開任何一本投資書籍或交易軟體,大概都離不開那些熟悉的名稱:均線交叉、KD 指標、MACD、RSI 等等。

這些指標看起來非常科學、邏輯嚴謹,而且用來產生交易訊號也很方便,所以許多程式交易初學者會自然地開始試著「拼裝指標」,組合出各種策略。但我要提醒你:這樣做,很容易掉入程式交易最常見、也最危險的陷阱之一

你其實只是在拿過去來預測未來。

這句話可能聽起來沒什麼,但我想用一個比喻來幫助你理解它的荒謬性:

你開車的時候,是往前看路開,還是一直看著後照鏡來判斷怎麼前進?

大多數技術指標,其實就是對過去價格的某種平滑、濾波或數學變形。它們本質上並不具備預測未來的能力,只是把「已經發生的事」用另一種方式呈現而已。例如:

  • 均線是過去 N 天收盤價的平均

  • KD 是過去一段時間的高低價區間的相對位置

  • MACD 是兩條移動平均線的差異

所以你用這些指標去開發策略,其實就像是看著「後照鏡」來嘗試預測「前方路況」:看起來有依據,但風險極高。


回測的假象:報表好看 ≠ 策略有效

這類策略在回測資料上通常可以得到非常漂亮的報表,原因也不難理解 —— 你可以「調整參數」來讓它剛好吻合過去的行情變化。想讓績效曲線漂亮?只要:

  • 把移動平均的長短期天數稍微微調

  • 設個聽起來合理的進出場條件

  • 加幾個篩選條件,像是量能、震盪區間

這些微調,都可以讓你回測績效看起來更完美。

但這就像是在訓練模型記憶「考古題」,而不是讓它學會解題邏輯。一旦你把這個策略放到回測範圍以外的資料(Out-of-sample),你就會發現績效大幅下滑,有時甚至是災難性地失敗。因為這個策略本身根本沒有真實的「市場優勢」,只是剛好能夠描述過去資料的一種統計模式。


小結:你需要的是「優勢」,不是「樣板」

一個真正穩定且能長期運作的量化策略,不應該只是過去數據的擬合器(curve fitter),而應該是建立在某種可持續的市場行為或結構之上。這個行為可能來自於:

  • 市場參與者的非理性行為(行為金融)

  • 結構性的套利機會

  • 資金流向、產業週期、基本面因素

  • 或者某些資產之間的長期相關性與配對關係

這才是真正需要你去觀察、研究與驗證的地方。而不只是用技術指標去湊一個漂亮的報表。

如何開發一個有優勢的量化策略?——三個我常用的技巧分享

許多人在剛接觸量化交易時,會花大量時間去調整技術指標的參數,或是不斷「拼裝」指標邏輯來產生交易訊號。但如同我前面所說,這樣做很容易掉入過度擬合的陷阱,策略可能在回測資料上看起來表現亮眼,但在實際市場上卻無法複製表現。

那麼,要如何開發出一套真正有**優勢(edge)**的策略呢?以下是我自己在實務中常用的幾個技巧與觀察:


1. 引入價格以外的資料:從盤後數據挖掘市場行為

很多人策略設計的資料來源只看「價格」與「成交量」,但我認為價格只是市場的表象,真正能提供策略優勢的訊號,往往藏在價格背後的結構性資訊。

我很早以前就開始寫爬蟲,去期交所和證交所的網站每天抓盤後公布的數據,這包括:

  • 期貨前五大特定法人買賣資料

  • 外資的期貨與選擇權留倉部位

  • 選擇權買賣權未平倉變化

  • 自營商與投信的淨部位變化

這些資料每天公布,可能不是即時,但卻蘊含著許多機構操作行為的線索。我會把這些資料整理成時間序列,然後去對比它們與大盤報酬、波動率、隔日開盤缺口等變數之間的關聯性。

舉例來說:

  • 當外資期貨多單連續增加超過三日,大盤隔日上漲機率是否明顯偏高?

  • 當自營商大舉布局選擇權賣權,是否代表風險偏好轉強?

這些都是可以量化的「非價格因子」,若你能從中找出穩定的行為模式,對策略設計就可能是一個真正有預測性的優勢來源


2. 時間與結構性的統計偏差:掌握「市場的節奏」

另一個我很常做的事情是:針對時間維度做統計,觀察市場在不同時間點的表現是否存在規律性的偏差。

舉幾個我實際觀察並利用的例子:

  • 星期一與星期三的波動比較大
    星期一常反映週末的消息與國際變化;星期三是選擇權結算日,常出現策略調整與拉抬壓低的現象。

  • 每月固定幾日的市場行為異常
    像是每月 5 號、15 號、月底前幾天,可能與定期定額資金、基金換倉或績效作帳有關。

  • 每天高低點的出現時間有偏態
    我統計發現,高達 80% 以上的當日的高點或低點會出現在開盤後一小時收盤前一小時,中段盤往往是震盪區。這樣的資訊對於開發短線策略(如開盤突破、收盤回測)非常實用。

這類時間統計的重點在於:你不是去預測價格的「方向」,而是找出市場「行為模式」的不均勻性。只要這種偏差穩定出現,你就有機會設計出能利用它的策略。


3. 市場不是隨機的:價格分布的厚尾與非正態特性

最後,我想談一個被很多初學者忽略、但我認為極其關鍵的觀念:市場波動不是隨機漫步(Random Walk),價格分布也不是鐘形分布。

如果市場真的像教科書上說的那樣完全隨機,那麼價格報酬的分布應該是標準常態分布(Bell Curve),多數波動集中在均值附近,極端事件非常罕見。

但事實上,你只要把市場的歷史報酬拿來畫個直方圖,就會發現:

  • 分布呈現厚尾現象(Fat Tail)

  • 有明顯的偏態(Skewness)

  • 極端行情發生的機率遠高於正態預期

這意味著什麼?意味著市場其實有其內在結構性與行為偏差,不是完全隨機的。如果你能針對這些非正態特性設計策略,例如:

  • 利用波動率異常加權資金部位

  • 建立極端風險事件的對沖模型

  • 結合動態風控來避免尾部風險

那麼你就比那些假設市場「正態穩定」的策略,更接近真實世界,也更有機會長期存活。


小結:從觀察現象,到建立可驗證的邏輯

策略的優勢來自於對市場行為的深度理解,而不是靠指標拼裝或參數調整。
我建議每一位想走向量化交易的朋友,不妨從以下三個方向入手:

  1. 資料面:引進價格以外的變數

  2. 統計面:找出時間或結構性的偏差

  3. 分布面:理解市場的真實波動特性

當你從這些現象中找到穩定的規律,再用程式把它們具體化為「可以執行、可以測試、可以控風險」的策略模型,那才是你真正開始建立屬於自己優勢的起點

文章經 AI 編輯整理(ChatGPT 協助潤飾)