12個設計都未通過。下方兩欄摘要可同時比較報酬與最大跌幅,完整參數圖可點開原尺寸。
黃金分割率常用的38.2%、50%、61.8%回檔,本次分別測個股、0050及避開訊號的方向,共十二個設計,沒有一個通過。本文以反面教材為主。支撐線很容易在歷史圖上畫出來,難處是當時能否知道波段已經結束,以及到達支撐時究竟如何進出。
黃金分割率與費波那契回檔怎麼算
費波那契回檔以一段已確認上漲的高低差計算價格位置。設低點為L、高點為H,回檔比例為r,支撐位置就是H減r乘以H與L的差。38.2%和61.8%與數列比值有關,50%只是市場常用的波段中點,並非黃金分割比值。
| 回檔位置 | 進場參考 | 本次下一層出場位置 | 怎麼理解 |
|---|---|---|---|
| 38.2% | H − 0.382 ×(H − L) | 50% | 上漲波段較淺的回檔 |
| 50% | H − 0.5 ×(H − L) | 61.8% | 回到原上漲區間中點 |
| 61.8% | H − 0.618 ×(H − L) | 78.6% | 吐回較多原先漲幅 |
比例是量波段的尺,沒有直接給出上漲機率。若先挑一段後來確實大漲的行情,再往前畫一條剛好碰到的線,波段選取本身已經利用結果。本文先固定確認低點、高點的演算法,再計算支撐,不用手動畫出較成功的區間。
Lo、Mamaysky與Wang(2000)提供用平滑與極值將圖形規則機械化的方法。本文只借用轉折辨識思路,該論文沒有替這三個回檔比例提供獲利保證。Sullivan、Timmermann與White(1999)則討論從大量技術規則挑贏家的資料探勘問題,與事後選波段的風險有關。
十二個固定設計的結果
報酬與最大跌幅
斜線前是年化報酬,後是從高點最多跌多少。
| 設計 | 年化/最大跌幅 |
|---|---|
| 個股38.2%買進 | -5.5% / -52.6% |
| 個股38.2%避開 | 20.7% / -59.3% |
| 個股50.0%買進 | -3.5% / -56.6% |
| 個股50.0%避開 | 21.1% / -57.9% |
| 個股61.8%買進 | -4.3% / -57.8% |
| 個股61.8%避開 | 22.1% / -57.1% |
| 005038.2%買進 | 3.0% / -4.5% |
| 005038.2%避開 | 18.5% / -34.7% |
| 005050.0%買進 | 1.7% / -2.6% |
| 005050.0%避開 | 20.4% / -34.0% |
| 005061.8%買進 | 0.0% / 0.0% |
| 005061.8%避開 | 22.8% / -34.0% |
| 0050含息 | 22.8% / -34.0% |
下方完整比較表可左右滑動,查看夏普、參數勝出數與平均持股權重。
完整比較
| 設計 | 年化報酬 | 日夏普 | 最大回撤 | 前/後半段日夏普 | 參數贏基準 | 平均在場權重 |
|---|---|---|---|---|---|---|
| 台股個股・38.2%・正向 | -5.5% | -0.17 | -52.6% | -0.11/-0.23 | 0/9 | 71.3% |
| 台股個股・38.2%・避開 | 20.7% | 0.73 | -59.3% | 0.61/0.84 | 0/9 | 100.0% |
| 台股個股・50.0%・正向 | -3.5% | -0.09 | -56.6% | 0.08/-0.23 | 0/9 | 67.2% |
| 台股個股・50.0%・避開 | 21.1% | 0.74 | -57.9% | 0.64/0.84 | 0/9 | 100.0% |
| 台股個股・61.8%・正向 | -4.3% | -0.16 | -57.8% | 0.20/-0.52 | 0/9 | 56.5% |
| 台股個股・61.8%・避開 | 22.1% | 0.77 | -57.1% | 0.68/0.85 | 0/9 | 100.0% |
| 0050・38.2%・正向 | 3.0% | 0.80 | -4.5% | 0.70/0.90 | 0/9 | 3.5% |
| 0050・38.2%・避開 | 18.5% | 0.97 | -34.7% | 1.02/0.96 | 0/9 | 96.5% |
| 0050・50.0%・正向 | 1.7% | 0.69 | -2.6% | 0.00/0.97 | 0/9 | 1.2% |
| 0050・50.0%・避開 | 20.4% | 1.04 | -34.0% | 1.14/1.00 | 3/9 | 98.8% |
| 0050・61.8%・正向 | 0.0% | 0.00 | 0.0% | 0.00/0.00 | 0/9 | 0.0% |
| 0050・61.8%・避開 | 22.8% | 1.13 | -34.0% | 1.14/1.16 | 3/9 | 100.0% |
| 0050含息持有 | 22.8% | 1.13 | -34.0% | 1.14/1.16 | — | 100.0% |
本文提供研究結果,沒有推薦這些買賣規則。想自行重跑,可先 設定 FinLab 環境,再 下載研究程式(.py);其他檔案見 研究下載區。
三種比例沒有合併後挑最好的一種。個股正向版的扣成本結果偏弱;0050正向版有些比例只出現少數訊號,中央61.8%設定更沒有買訊。因此不能把較小回撤直接當成支撐有效,必須與同等平均投入資金的持有方式比較。
淨值圖放三個個股正向回檔比例與0050含息持有,全部從同一天設為1。表格另列0050擇時與避開版,讓「比例差異」和「換一種持有標的」不會混在同一條曲線裡。曲線沒有只截取靠近支撐或交易完成的日期,未進場時間仍留在分母。
波段確認和支撐守住的數值定義
轉折先由24日單邊Gaussian權重平滑價格,再找前後各三天都比它高或低的點。低點或高點最早在三個交易日後才被確認,當日以前不會用到這個轉折。相同方向的新極值只替換當下狀態,不回頭改已經做出的訊號;這一點用截斷資料與補入後續行情測試過。
確認低點到確認高點至少上漲10%,兩點間隔至少20日,最多分別測60、90、120日。平滑頻寬測2、3、4日,兩個參數全組合九格;每種回檔比例各自跑九格。中央設定為頻寬3日、波段上限90日。波段高低價用轉折當天的還原最高與最低價,避免只拿平滑收盤當成全部價格區間。
當天最低價落在支撐上下1%範圍內、收盤仍在支撐之上,才視為碰到後守住。若最低價已穿過容許範圍,即使收盤拉回也不買。最高點確認後最多等60日,原本那段上漲不能永遠沿用。出場則在收盤跌破下一比例、收盤回到原高點,或持有滿60交易日時觸發。
這套定義不等於在盤中掛限價單。收盤資料確認後,交由FinLab在下一交易日收盤執行;成交價可能已偏離支撐。也沒有要求成交量萎縮、KD黃金交叉或基本面成長,這些額外條件沒有事前列入,就不能在看到失敗交易後補上排除。
參數熱圖與分段檢查
每格是日夏普減同期0050日夏普,至少七格為正才符合鄰近參數條件。十二個設計各有自己的九格,不能把不同回檔比例中最好看的九格拼在一起。改動比例是新的設計,改動平滑或波段上限才是該設計的鄰近參數。
前段至2021年11月25日,後段由11月26日起;中央設定兩段都要超過0050,持倉連續保留。這是全段歷史研究,未做獨立樣本外、滾動訓練或發表後驗證。Bailey等人(2015)討論多次測試帶來的回測過擬合;只公布最有效的那條支撐線,會讓讀者看不到嘗試過多少設定。
成本、股票池與現金對照
台股股票池每日用60日平均原價成交額前300名,股價至少10元、成交額至少2千萬元、有252日價格;個股代碼限四位數且首碼1至9。ETF獨立測0050,金融、KY未另排除,全額交割未另辨識。沒有用現今上市名單篩選歷史,資料商未保留的下市股仍可能影響結果。
過去252日內曾出現50%以上單日漲跌的股票,從隔日起排除。個股每日選合格持有狀態中成交額最高的最多10檔,單檔上限10%,其餘留現金;0050版最多100%。表格日夏普不扣無風險利率;互動報告預設扣2%,讀數因此不同。使用sim()預設每邊0.1425%手續費和賣出0.3%證交稅,沒有額外滑價,未估算容量或大額下單的市場衝擊。基準直接以0050還原價連乘,不扣交易成本。回測完整說明整理這些成本口徑的差別。
| 設計 | 符合資格買訊 | 實際選入次數 | 平均個股權重固定組夏普 | 年周轉 | 單月最高周轉 |
|---|---|---|---|---|---|
| 台股個股・38.2%・正向 | 1537 | 1679 | 1.17 | 17.58 | 3.10 |
| 台股個股・38.2%・避開 | 1537 | 434 | 1.42 | 4.45 | 1.10 |
| 台股個股・50.0%・正向 | 1089 | 1266 | 1.18 | 13.23 | 2.85 |
| 台股個股・50.0%・避開 | 1089 | 412 | 1.42 | 4.22 | 1.20 |
| 台股個股・61.8%・正向 | 703 | 805 | 1.13 | 8.41 | 3.35 |
| 台股個股・61.8%・避開 | 703 | 377 | 1.42 | 3.86 | 0.90 |
| 0050・38.2%・正向 | 5 | 5 | 1.13 | 0.53 | 0.50 |
| 0050・38.2%・避開 | 5 | 6 | 1.13 | 0.53 | 0.50 |
| 0050・50.0%・正向 | 2 | 2 | 1.13 | 0.21 | 0.50 |
| 0050・50.0%・避開 | 2 | 3 | 1.13 | 0.21 | 0.50 |
| 0050・61.8%・正向 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| 0050・61.8%・避開 | 0 | 1 | 1.13 | 0.00 | 0.00 |
買訊只計當日符合股票池資格的正向進場,避開版共用這個計數;實際選入次數受到十檔上限及日更排名影響。年周轉是目標權重每日變動的一半再取平均乘252,單月最高值則為逐月加總。買訊多不一定是好事,每次重新換股仍可能消耗成本。
現金多的設計另比較0050乘相同平均總權重,以及每支個股整段平均權重的固定配置。後者使用事後平均,只能拿來診斷選時,不是可部署的事前組合;沒有報價時當作現金。還會拿掉中央設定報酬最高的一年重算。這些數字全在結果檔,本次未因其中一項較好就改變必要驗證條件。
黃金分割與其他波段方法
回檔比例依賴既有波段端點,道氏理論則以連續高低點判定趨勢;頭肩型態與W底、M頭主要看轉折點相對高度和排列。它們可能在同一張圖上都畫得出來,交易時點卻不同,不應把各自成功案例合在一起當成共同驗證。
若對比的是價格離移動平均線多遠,則屬於乖離率研究,不是固定波段高低點的回檔。新研究可以提出不同規則,但要重新固定定義、保留成本與基準;程式交易指南與股票選股指南提供把這些選擇寫成程式的背景。
常見問題
黃金分割率61.8%一定有支撐嗎?
不一定。比例只表示回吐多少上漲幅度,本次以價格觸及後守住的條件交易,仍沒有通過驗證。
50%為什麼也放在費波那契圖上?
50%是慣用波段中點,本文單獨列為設計,不把它描述為黃金分割比值。它是否可交易需要自己的測試。
要用最高最低價還是收盤價畫線?
本文用已確認轉折日的還原最高與最低價當端點,用收盤確認守住或跌破。改成純收盤、盤中成交或不同波段,數字都會改變。
線位可以隨新高一直重畫嗎?
本次只用當時已確認的一組低、高轉折;有新的確認轉折才更新未來判斷,不改寫過去持倉。
停損放下一個比例就能控制最大虧損嗎?
收盤判斷、次日成交無法保證停損價,跳空和流動性仍可能造成較大損失。表格的回撤也可能包含多筆交易累積的虧損。
為什麼不挑回測最好的比例?
十二個設計都未通過事前固定的檢查。從失敗群組裡再挑一個較好結果,無法補上參數與分段不足,也沒有形成可上架策略。
下載與重跑
可下載逐日淨值 data.csv、完整參數與版本 metrics.json、單一設計 strategy.py,以及整批研究 research.py。整批研究需要把共用 strategy.py放在同一個資料夾;執行 python research.py,會輸出全部參數、各中央設定的回測報告與逐日資料。單篇的程式預設重跑該篇主題;這些規則尚未通過驗證,沒有對應的上架策略。
顯示程式碼
from strategy import load_prices, make_position
from finlab.backtest import sim
prices = load_prices("tw")
position, entries = make_position(prices, family="fib", ratio=0.5)
report = sim(position, position_limit=0.1, upload=False,
end_date="2026-11-10")
report.to_html("report.html")範例需先下載同資料夾的程式。環境使用 FinLab 2.3.8、pandas 3.1.1,另需 NumPy、SciPy、Numba、Plotly、Kaleido 與 python-dotenv。資料截至2026年11月10日,重跑日為11月11日;資料日與執行日分開記錄,日後上游修訂可能讓同視窗數值不同。安裝步驟見FinLab設定指南,名詞可查量化交易詞彙。
FinLab量化研究團隊以資料與可重跑規則研究投資方法。本文尚未做發表後的前瞻驗證,也未估算資金容量。
投資有風險,過去績效不代表未來表現。本內容僅供教學參考,不構成投資建議,請依個人風險承受度審慎評估。
最後更新:2026-11|回測區間:2017-01-03至2026-11-10|作者:FinLab量化研究團隊
FinLab AI
想建立自己的策略?
用自然語言描述你的選股想法,AI 自動驗證、回測、給你答案
免費開始





