VALYNOXSTRATEGY RESEARCH TECHNOLOGY
AlphaPrimeAlphaPrime
策略學院 / AlphaPrime 怎麼算

Kagi 圖回測:反轉幅度、陽線與陰線,以及遲到的訊號

Kagi 圖畫出一條垂直線,價格沿同方向移動時線段延續,只有反轉達到設定的幅度才會轉向;當價格突破前一個肩或腰時,線段在粗陽線與細陰線之間切換。Kagi 回測會在轉折價與肩腰價成交,因此績效被高估。AlphaPrime 在標的 K 棒收盤時確認每一段 Kagi 線,以下一個真實價格成交,滑價加倍,並以真實高低點判斷停損。

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

目錄
  1. 什麼是 Kagi 圖?為什麼 Kagi 回測看起來比實際交易好?
  2. Kagi 線如何由真實 K 棒建立?轉折何時才算已知?
  3. Kagi 回測在哪裡偷看到未來?
  4. 在轉折點成交
  5. 在肩或腰成交
  6. 沒有高低點的圖上停損
  7. AlphaPrime 如何回測 Kagi 策略?
  8. 回測時該如何選擇 Kagi 反轉幅度?
  9. 哪些市場與策略適合 Kagi 圖?
  10. 常見問題

什麼是 Kagi 圖?為什麼 Kagi 回測看起來比實際交易好?

Kagi 圖是一條隨價格上下移動的線,只有在價格反向移動達到設定幅度時才會轉向,並在突破前一個高點或低點時改變粗細。Kagi 回測看起來比實際交易好,是因為它在轉折點和突破價成交,而那些價格其實要事後才知道。

Kagi 源自日本的米市。反轉幅度是價格必須逆著目前線段移動多遠,圖形才會轉向,可以是固定點數,也可以是百分比。肩是上升線轉為下降的最高點;腰是下降線轉為上升的最低點。線段在突破前一個肩之後畫成粗線,稱為陽;跌破前一個腰之後畫成細線,稱為陰。傳統 Kagi 規則是線段轉為陽時買進,轉為陰時賣出。圖上沒有時間軸,一條線可能持續一小時,也可能持續一個月。

這種圖刻意保持安靜,這也是交易者喜歡它的原因。多數引擎回測它時,用的是和其他合成 K 棒圖相同的兩個捷徑:把轉折視為在極值點就已知,並以圖上畫出的價位成交。所有圖形類型共通的規則,請見為什麼合成 K 棒回測會作弊的總覽;本頁只談 Kagi 特有的部分。

Kagi 線如何由真實 K 棒建立?轉折何時才算已知?

當標的 K 棒完成且收盤價朝線段方向超過目前線段的終點時,Kagi 線就延伸;當完成的 K 棒收盤價逆著線段移動了反轉幅度時,線段就轉向。轉折是在該根 K 棒收盤時才知道,而不是在畫出線段起點的極值點。

這正是 Kagi 時間問題的核心。圖形把轉折畫在肩上,也就是上升線所到達的最高點。接著它從肩往下畫一條新的下降線,直到目前價格。看完成圖的人會覺得轉折發生在肩上。但在即時行情中,沒有人知道那是肩,直到價格已經跌破它整整一個反轉幅度。資訊是在新線段的底部才到達,圖形卻把它畫在頂部。

AlphaPrime(Valynox)用你選定的標的 K 棒收盤價建立 Kagi 線,並在圖形發生無法被收回的變化時,把一根 K 棒交給策略:反轉被確認時(收盤價離舊線段極值達到完整反轉幅度)、線段因突破前一個肩或腰而改變粗細時,以及線段每再延伸一個反轉幅度時。每根這樣的 K 棒,都在產生它的標的 K 棒收盤時就能看到:延伸 K 棒在它到達的階梯價位收盤,粗細變化 K 棒在穿越該價位的那次收盤時收盤,而確認的反轉會交出舊線段延伸到極值的最後一段,連同新線段的第一根 K 棒,後者在確認收盤時收盤。一根標的 K 棒若遇到大幅跳空,可能產生數根延伸 K 棒,而由它們產生的每個訊號都以同一個下一個真實價格成交。策略看過的內容不會被重畫,也不會使用它還沒看到的資料。因此,轉折是在新線段的底部才知道,而不是在肩上;圖形把轉折畫在肩上,但在反轉幅度被跌破之前,沒有人知道那是肩。

假設性範例

反轉幅度 4 點,標的為日 K。上升線在週二到達 130。週三收在 128,週四收在 125。圖形在 130 畫出轉折,並畫一條下降線到 125。一個在轉折點賣出的回測會從 130 開始做空。AlphaPrime 在週四收盤時確認反轉(第一個收盤價至少低於 130 達 4 點的那一根),把該事件當作一根 K 棒交給策略,並以週五開盤價加滑價成交賣單,大約在 125。這 5 點的差距,就是得知「肩就是肩」所付出的代價。

Kagi 回測在哪裡偷看到未來?

在轉折、在肩或腰的突破,以及在只記錄收盤價的圖形上做停損檢查時。

在轉折點成交

規則:轉折只在完成反轉幅度的那根 K 棒收盤時存在。原因:極值是由它之後發生的事情決定的,因此在極值點行動就是依據之後的資料行動。避免的問題:每次反轉都以圖形能表達的最佳價格進出場。

在肩或腰成交

規則:陽或陰的改變,在收盤價穿越前一個肩或腰的那根標的 K 棒收盤時就已知,成交價是之後的下一個真實價格。原因:穿越 K 棒的收盤價通常已經超過價位一段距離,而下一筆成交又更遠。避免的問題:在圖上的價位而非市場價格成交的突破單。使用百分比反轉幅度時還有第二個漏洞:引擎有時會用比當時可得的價格更晚的價格來計算百分比。AlphaPrime 用當時的價格計算,因此門檻不會知道之後發生了什麼。

沒有高低點的圖上停損

規則:停損與停利以標的 K 棒的最高價與最低價判斷,且停損優先。原因:只由收盤建立的 Kagi 圖從未看見盤中極值,因此若以 Kagi 線判斷停損,判斷就只根據收盤價。避免的問題:回測中停損只在收盤時觸發,而實際帳戶卻是以逐筆成交被停損。

Kagi 事件畫線式回測AlphaPrime
轉折在肩或腰的價格成交在完成反轉的收盤時已知;以下一個真實價格成交
陽/陰變化以前一個肩或腰的價位成交在穿越該價位的收盤時已知;以下一個真實價格成交,滑價加倍
百分比反轉幅度有時以較晚的價格計算以當時的價格計算,並無條件進位到整數跳動點
停損檢查只看收盤價標的 K 棒的真實高低點,停損優先
圖把轉折畫在肩部,但那個資訊要到幾根棒之後、走滿轉向幅度的那根收盤才到。
圖把轉折畫在肩部,但那個資訊要到幾根棒之後、走滿轉向幅度的那根收盤才到。 AlphaPrime 生成設定 · 線圖類型面板

AlphaPrime 如何回測 Kagi 策略?

策略讀取 Kagi 線、它的粗細,以及它的肩與腰。成交、停損與停利都以標的 K 棒結算。逐條規則如下:

  • 策略在每次無法被收回的改變時拿到一根 K 棒:確認的反轉、粗細改變、每再延伸一個反轉幅度。原因:這些是只由收盤建立的圖形能得知最終結果的時刻,而形成中的 K 棒收盤價還不知道。避免的問題:畫出後又被抹掉的轉折,以及必須重新計算的訊號。
  • 市價單以下一根標的 K 棒的開盤價加滑價成交。原因:訊號之後第一個可得的價格才存在。避免的問題:在肩、腰與轉折點成交。
  • 百分比反轉幅度以當時的價格計算,而非之後的價格,並無條件進位到整數跳動點。原因:若門檻取自較晚的價格,它就會隨之後的走勢調整;若無條件捨去,轉折會提早一點點被確認。避免的問題:一個知道未來的反轉幅度,或比圖形本身規則更寬鬆的反轉幅度。
  • 停損與停利以標的 K 棒的真實高低點判斷,停損優先。原因:真實的 K 棒保有 Kagi 線所捨棄的價格。避免的問題:圖上看不到、卻會觸發的停損。
  • 滑價乘以二,而且只能調高。原因:Kagi 的轉折要等價格走完整個反轉幅度後才確認,而這正是市場以最快速度逆著舊線段移動的時候。從線段終點到真實成交之間的距離,會再由真實價格成交額外計入成本。避免的問題:把已確認的反轉以平靜市場的價差來計價。

以這種方式測試的 Kagi 策略,交易次數較少,進場也較晚,這不是引擎刻意為難。這是圖形一直內建、卻被畫線掩蓋的延遲。如何以平均每筆損益來權衡線段到成交的距離與加倍的滑價,請見手續費、滑價與平均每筆損益一頁。

回測時該如何選擇 Kagi 反轉幅度?

選擇的反轉幅度應為你滑價假設的數倍,且至少等於標的 K 棒的典型波幅;太小的幅度會讓圖形變成雜訊很多、由收盤價連成的線,既有 Kagi 的延遲,卻沒有它的過濾效果。

  1. 單一商品、數年期間使用固定幅度。以股價指數期貨為例,日線的反轉幅度落在一到兩倍的平均日波幅,是合理的起點。再分別測試大一級與小一級的幅度。
  2. 長期歷史或加密貨幣使用百分比幅度。百分比套用在當前價格上,因此門檻會隨價格上升而變大,無須手動調整;樣本內與樣本外期間都保持相同的百分比。
  3. 以平均真實波幅為基礎的幅度,只用已完成的 K 棒計算,並在每段線的存續期間凍結。它能跟隨波動度調整,又不會偷看未來。

Kagi 的近親在不同名稱下做出類似的選擇。新價線圖以前幾條線的數量反轉,而非以價格幅度;點數圖則以格數反轉。這三種圖都共享此處所描述的肩與轉折時序漏洞。

哪些市場與策略適合 Kagi 圖?

Kagi 適合在會持續數週趨勢的市場中,以日線與小時線運行的慢速趨勢規則:股價指數期貨、債券、主要貨幣對、金屬,以及較大的加密貨幣。它不適合日內交易,因為反轉幅度不是太小而無法過濾任何東西,就是太大而產生不了交易;也不適合盤整市場,因為陽陰變化會成對出現,每一對都要付出兩次成交的代價。

在相信 Kagi 的結果之前,請先檢查兩件事。第一,平均而言,從肩到確認它的收盤之間會經過幾根 K 棒。這個數字就是你真實的進場延遲,而圖形把它隱藏起來了。第二,把反轉幅度放大一級後,策略是否仍然有效。如果訊號數量大幅縮水,代表規則是在過濾器邊緣交易雜訊;如果它仍然成立,就像對其他策略一樣,對它執行推進分析。

若你使用 AlphaPrime,這代表:在策略生成中選擇 Kagi 作為圖形類型,設定反轉幅度與標的週期,然後執行搜尋。每個候選策略都以轉折與粗細變化的測試來進行,這些事件只有在收盤價出現後才計算一次;成交以下一個真實價格加上加倍的滑價;停損則以真實 K 棒判斷,無論是在 Classic 還是 Reserve。報表中的轉折,都是交易者實際上能夠看到的轉折。

常見問題

粗線或細線的 Kagi 線代表什麼?

線段突破前一個肩(上一段下降線開始的高點)時轉為粗線,稱為陽;跌破前一個腰(上一段上升線開始的低點)時轉為細線,稱為陰。傳統 Kagi 規則是轉為陽時買進,轉為陰時賣出。

Kagi 圖應該使用多大的反轉幅度?

至少要等於標的 K 棒的典型波幅,並且是你滑價假設的數倍。以股價指數期貨的日線來說,一到兩倍的平均日波幅是合理的起點。長期歷史或加密貨幣可使用百分比,並以當時的價格計算,而非之後的價格。

為什麼我的 Kagi 策略在 AlphaPrime 裡進場比圖上晚?

因為圖形把轉折畫在肩上,而 AlphaPrime 是在確認反轉的收盤之後才行動,那才是資訊真正到達的時間點。這段延遲就是反轉幅度的等待時間,而圖形版本把它隱藏了,方法是把交易放在線段被畫出的位置。

Kagi 適用於外匯與加密貨幣嗎?

適用。加密貨幣建議使用百分比反轉幅度,因為價格在數年間會有很大的波動範圍;外匯則可用以點數(pips)表示的固定幅度。成交與停損規則相同。