跳至主要內容
台股研究 約 8 分鐘閱讀

一目均衡表回測:0050與個股版皆未通過驗證

一目均衡表怎麼看、怎麼用?我們把指標定義寫成固定進出規則,分別測0050擇時、避開訊號與個股等權,檢查九組鄰近參數、前後兩段與交易成本。本次設定都未通過,圖上方向清楚仍不足以證明交易有效。附計算方法、參數熱圖、逐日淨值與可重跑研究程式,說明資料可得日、成交延遲、空手代價及不能從回測推出的事。

這組規則未通過驗證

不用操作程式,直接看報酬、最大跌幅與比較結果。

看比較結果
未通過本次驗證

一目均衡表 訊號持有、避開訊號、個股與含息基準的淨值比較

一目均衡表的0050擇時、避開訊號與個股版,這次都沒有通過完整驗證。本文以反面教材為主。中心設定的0050擇時年化4.7%、日夏普0.44;同期含息持有為13.9%、0.74。方向在圖上看得清楚,仍要付出空手與進出成本。

個股版年化1.2%,九格中0格贏基準,沒有把指標解讀轉成穩定的選股優勢。第一張圖把三種中心設計與含息持有放在同一起點;點圖可查看原尺寸,完整數值在下方下載區。

本文提供研究結果,沒有推薦這些買賣規則。想自行重跑,可先 設定 FinLab 環境,再 下載研究程式(.py);其他檔案見 研究下載區。

一目均衡表的五條線怎麼算

一目均衡表把一段時間的最高價與最低價取中點,用不同長度描述趨勢。中點只取兩端,和把每天收盤加總再平均的均線不同。某天突然衝出的高點,即使只維持很短時間,也會在離開觀察窗以前持續影響中點,因此畫面平順不代表每一天的新資訊都被平均吸收。

線條 本次中心設定 本次用途
轉換線 九日最高與最低的中點 必須高於基準線
基準線 二十六日最高與最低的中點 中期趨勢比較
先行跨度一 轉換線、基準線的平均,前移二十六日 第一條雲線
先行跨度二 五十二日最高與最低的中點,前移二十六日 第二條雲線
遲行線 今天收盤畫在較早日期 本次沒有使用

這次的持有條件是:收盤高於兩條雲線,而且轉換線高於基準線;任一條件不成立就空手。相等不算通過。條件每天判斷,沒有要求一定要等到新的黃金交叉才進場,也沒有加雲的顏色、厚度或遲行線確認。把條件寫完整,才能區分不同教材口中的「一目策略」到底是否同一件事。

雲畫在未來,交易仍只能用當時資料

今天圖上的雲,是二十六個交易日前算出的數值。所以程式採正向的 shift(26),把先前的結果移到今天的位置。若反向位移,就會在歷史時點用到後來才出現的高低價;若完全不移,雖然未必有前視,卻已經是另一種持有規則。這兩種改法都不能混進同一張結果表。

計算五十二日高低中點後還要前移二十六日,因此研究起點以前需要資料暖機。台股用二○○七年的資料,暖機期間不列入績效。滾動視窗也只數市場交易日,休市空白列會先移除;否則跨假期的視窗可能長時間沒有完整數值,讀者看到的是長期間標籤,實際卻只交易到其中一小段。

雲位於價格下方時,股價仍可能已經從近期高點下跌。原因是雲保留了更早的價格極端值,而訊號形成以後還要等下一次收盤成交。因此它可以描述已形成的趨勢,無法保證在跌勢發生前離場。最大回撤有沒有下降、下降時少賺了多少,都需要看績效欄位,不能從圖形顏色推論。

三役好轉、雲扭轉與本次條件的邊界

一目的完整體系還會討論三役好轉、時間與波動等觀點。這次只測雲與兩條中點線的機械關係,沒有把整套理論都包成一個績效數字。看到某段虧損後才補上「雲太薄不買」或「必須搭配成交量」,會變成新假說,也增加從歷史中挑規則的機會。

同一組參數在不同標的不一定成立。0050是一個固定持有標的,訊號只決定有沒有市場曝險;個股版則每天對各公司的訊號與流動性重新判斷,既有個股價格變化,也有成分更換與交易成本。文章把這些路徑分開報告,不用其中一條路徑的好成績替另一條背書。

對想降低跌幅的研究者,較少在場可能有價值;對想長期充分參與上漲的人,錯過反彈就是代價。雲線的解讀必須同時回答這兩個問題。只選最大回撤較小的一欄,會漏掉持有現金期間失去的報酬;只選年化報酬最高的一欄,又會忽略過程中可能承受的跌幅。

日本技術分析師協會將一目均衡表歸於細田悟一,也就是筆名一目山人;這裡只把其中的雲與轉換線、基準線關係寫成固定規則。原始出處。

三種持有方式的完整結果

中心設計 年化報酬 日夏普 最大跌幅
(最大回撤)
前/後半段日夏普 九格贏0050 在場比例
0050訊號持有 4.7% 0.44 -41.3% -0.12 / 0.88 0 / 9 53.0%
0050避開訊號 1.5% 0.18 -53.2% 0.07 / 0.30 0 / 9 47.0%
個股等權 1.2% 0.17 -63.4% -0.10 / 0.43 0 / 9 99.8%
0050 含息持有 13.9% 0.74 -52.4% 0.38 / 1.11 — 100%

年化報酬把整段複利換算成每年平均成長,最大回撤是淨值從先前高點到低點的最大跌幅。日夏普以日報酬平均除以標準差,再乘以二百五十二的平方根,不扣無風險利率。這三個指標回答不同問題,夏普較高仍可能賺得較少。

互動報告是中心設定的0050擇時,沒有從九格挑最好的一格;另一份下載報告是中心個股版。表格保留整段共同期間,包括第一次交易以前的現金日;報告可能由首筆成交開始,內建夏普也有自己的無風險利率設定,所以本文比較統一採另算的零利率口徑。

九格參數與前後半段

轉換線七、九、十一日,基準線二十二、二十六、三十日。長線固定為基準線兩倍,前移天數等於基準線;中心為九/二十六/五十二日、前移二十六日。全部組合在看結果以前已固定。每個設計至少七格日夏普高於同期0050,中心設定在交易日對半切的兩段也必須各自領先;這是歷史穩健性篩選,沒有把後半段稱為從未看過的樣本外。

一目均衡表 三種持有方式的九格鄰近參數,數字為日夏普與基準的差

一目均衡表 前後半段各中心規則與基準日夏普

成本、現金與拿掉最好一年

台股每次sim()沿用預設手續費買賣各百分之○點一四二五、賣出證交稅百分之○點三,沒有打折。0050也沿用這個較高股票稅率,沒有改成較低ETF稅率;因此ETF結果是這個保守成本假設下的數字。未另設滑價,未估算容量,實際委託仍可能受漲跌停、流動性與跳空影響。

中心設計 拿掉最佳年 剩餘日夏普 同期0050
0050訊號持有 2026 0.33 0.68
0050避開訊號 2009 0.09 0.63
個股等權 2009 -0.01 0.63

同平均曝險對照每天固定維持策略平均在場比重的0050,其他現金報酬為零,不扣該對照調倉成本。訊號持有版的這個對照日夏普為0.74,策略為0.44。這能檢查較少在場帶來的較小波動,有沒有被誤認成選時能力。

拿掉最好一年時,先以中心策略各日曆年報酬找出最好的一年,再從策略與基準刪除相同日期,保留其餘日報酬,不在被刪年份兩端插入額外報酬。這是額外壓力測試,前面九格或分段沒有過,不能靠這一項補救。

一目均衡表 以實際組合淨值計算的回撤比較

股票池、成交與研究限制

資料截至2026-11-09,重跑日2026-11-11,使用finlab 2.3.8。台股使用etl的還原開高低收;基準以0050還原收盤價直接計算含息買進持有,不經sim(),不扣基準交易成本。所有圖表起點都為一,空手日也保留。

個股取歷史四碼代號,排除○開頭與九一開頭,二十日平均成交金額大於二千萬元才符合資格。沒有另外排除金融、KY或全額交割股;有價格歷史的下市公司仍保留。這個代號與流動性規則無法保證每筆交易都可按假設成交,也未逐檔稽核下市報酬完整性。

個股每天對同時符合資格與指標狀態的公司等權,沒有挑後來漲最多的公司,也沒有用全期間最大漲跌一次刪掉歷史輸家。訊號收盤後形成,下一交易日收盤成交。這次沒有使用財報、分析師快照、現在的指數成分名單或個別投資人的私人策略;產業並未另外中性化,也沒有借款加槓桿。

每檔個股目標權重為當時持股數的倒數,沒有再加固定單檔上限,只剩一檔時可能達百分之一百;ETF規則最多全額持有0050,否則全額現金。各中心設定的換手估計如下,比例可以超過百分之一百,表示月內反覆換倉。

中心配置 交易筆數 平均月目標周轉 最高月
0050訊號持有 113 49.8% 300.0%
0050避開訊號 114 49.8% 300.0%
個股等權 80622 233.4% 552.0%

中心個股版平均持有253.5檔。目標權重周轉估計採每天目標權重變化絕對值總和的一半,再按月相加。這個數字沒有把持有期間價格漂移等細節還原成實際成交金額,不能直接當成真實帳戶的金額周轉率。

全段屬於樣本內研究。開跑前固定規則,可以減少本批看完結果才換條件,但題目本身仍是知道市場歷史後選的,切前後半也無法把後段變成真正未見資料。Bailey等人(2017)討論回測過擬合;本次未估計該文的過擬合機率。Moskowitz、Ooi與Pedersen(2012)研究期貨趨勢,不能替這個指標背書。

用AI重跑固定規則

透過上方FinLab設定入口,讓Claude Code、Codex或Gemini CLI載入FinLab skill後,可以用白話要求:「使用這篇下載的研究程式,保留期間、中心參數與九格設定,重跑一目均衡表三種持有方式及成本對照。」這段要求的用途是重現既有實驗;若AI另外生成一套進出條件,即使名稱相同,算出的結果也不是本篇的重跑。

將完整研究程式存成工作目錄的research.py,以下片段執行中心個股版,完整網格則使用該程式的命令列選項。程式的執行範例已列出finlab、numba與TA-Lib套件,登入由FinLab引導完成。

顯示程式碼
import finlab
from research import load, signal, backtest
 
finlab.login()
prices, eligible = load("tw")
state = signal(prices, "ichimoku", 9, 26)
position = (state & eligible).loc["2008-01-02":"2026-11-09"]
report = backtest(position)
report.to_html("ichimoku_stocks_report.html")

AI代理使用說明介紹技能安裝與研究流程;程式交易指南整理從規則到回測的步驟,回測方法說明成交、成本與偏差,結果名詞可查量化詞彙表。

一目均衡表常見問題

哪一組參數最好? 本次的中心在看結果以前固定,沒有用熱圖最好的格子替換原設定。九格用來觀察鄰近條件是否穩定,不用來挑一個歷史冠軍。

最大跌幅較小,就表示指標有效嗎? 長期空手也會降低波動與跌幅,所以還要比較年化報酬、同平均曝險與分段結果。較少參與市場的代價,不能只用一張平順圖略過。

避開訊號是放空嗎? 這裡只是原本空手的日期持有同一檔ETF,其他時間持有現金,沒有建立負部位,不能推論融券或借券交易的績效。

個股可以只挑幾檔看起來最強的嗎? 那會改變股票池與集中程度,且容易事後挑選成功範例。本篇測的是當時合格公司的固定等權規則,不能保證某一檔公司結果相同。

表格和互動報告的夏普為什麼可能不同? 表格統一採零無風險利率的日夏普與完整共同期間,互動報告依自己的慣例與首筆成交起點計算。比較策略時必須讓兩邊使用同一口徑。

可以改成分鐘K嗎? 需要另一份資料、確認週期與成交假設。日線無法得知盤中高低先後,更無法保證照指標界線成交,這次結果沒有涵蓋該問題。

相關研究可看技術指標台股總覽,以及黃金交叉回測、海龜交易回測與量化交易指南。這些頁面分別測不同機制,沒有把其他規則的優點當成本篇的驗證。研究團隊與產品背景可看關於FinLab。

研究下載

檔案 內容
下載研究程式(Python) 設定FinLab後,交給AI代理重跑
下載每日績效資料(CSV) 每日績效與基準,可用試算表開啟
下載完整測試結果(JSON) 全部測試結果,供AI或程式讀取
開啟訊號持有報告(網頁) 瀏覽器直接開啟,不需安裝
開啟個股報告(網頁) 瀏覽器直接開啟,不需安裝

投資有風險,過去績效不代表未來表現。本內容僅供教學與研究,不構成投資建議,請依個人風險承受度審慎評估。本文沒有推薦個股,也沒有保證指標界線可以成交或歷史優勢會延續。

最後更新:2026-11|回測區間:2008-01-02至2026-11-09|作者:FinLab量化研究團隊。團隊以FinLab資料維護台股、美股的可重跑研究。

FinLab AI

想建立自己的策略?

用自然語言描述你的選股想法,AI 自動驗證、回測、給你答案

免費開始

更多技術指標研究

查看全部