移動平均交叉策略:用真實 BTC 資料回測|Traseq 部落格策略範例移動平均交叉策略:用真實 BTC 資料回測
如何在 Traseq 裡把移動平均交叉策略寫成無需寫程式的規則、交叉為什麼會被洗來洗去,以及在真實 BTC/USDT `1h` 資料上 `SMA(200)` 的誠實結果。
移動平均交叉策略,是幾乎每位交易者最先遇到的構想之一。邏輯很簡單:當價格站上慢速移動平均線時,就把趨勢視為上升而做多;當它跌回下方時,就視為趨勢結束而出場。最有名的版本「黃金交叉」,看的是價格或快速均線向上穿越 200 根的 SMA(200)。本文把這個構想轉成 Traseq 裡明確、無需寫程式的規則,然後展示 SMA(200) 趨勢濾網在真實 BTC/USDT 1h K 棒上實際做了什麼——包含它賠錢的部分。
Traseq 是研究工作區,不是實盤交易或交易所執行平台。它不會下單、不會連結交易所帳戶,也不保證績效。這裡的目的不是賣您一個會贏的策略,而是示範在拿任何東西去冒險之前,如何誠實地測試一個策略。
把一個構想轉成可測試的版本。
從無程式的加密貨幣現貨策略開始,鎖定版本、執行回測,並讓結果保持可追溯以供比較。
移動平均交叉策略只需要三個決定:怎麼進場、怎麼出場,以及如何為一筆壞交易設上限。以下是 Traseq 範例所跑的 SMA(200) 趨勢濾網,用白話規則寫出來:
- 當收盤價向上穿越 200 根的
SMA(200) 時做多進場。
- 當收盤價再次向下跌破
SMA(200) 時出場。
- 5% 停損,為單筆交易設上限。
在 Traseq 裡您不需要用程式寫 SMA(200)。您可以在 Sentence 模式描述它(「收盤價向上穿越 200 期 SMA 時做多進場」)、在 Canvas 模式用視覺化方式組裝,或從系統模板開始再調整。條件在 K 棒收盤時判定,訊號驅動的進出場以下一根 K 棒開盤價成交,因此您讀到的規則就是實際執行的規則。
200 根的 SMA 是經典的慢速趨勢線。在 1h 圖上它大約代表最近八天的價格,所以這個策略只想在中期趨勢上升時維持多單。
Learn 中心提供一個免註冊的互動範例,在真實 BTC/USDT 1H K 棒上執行三個系統模板,期間為 2024-11-03 至 2024-12-31,初始資金 $10,000、零手續費、100% 部位大小。這段期間是一波上漲之後從橫盤轉跌的震盪行情——是誠實而不討喜的測試,而非刻意挑出來的上升趨勢。以下是 SMA(200) 趨勢濾網產生的結果:
| 指標 | SMA(200) 趨勢濾網 |
|---|
| 報酬 | -6.89% |
| 勝率 | 22.7% |
| 最大回撤 | -8.68% |
| 交易筆數 | 22 |
| 獲利因子 | 0.36 |
| 夏普值 | -0.39 |
淨虧損。22 筆交易,四次裡連一次都贏不到,獲利因子 0.36(每虧一美元只賺回 36 美分),夏普值為負。這不是壞掉的策略,也不是程式錯誤——這正是趨勢跟隨型交叉在沒有持續趨勢的市場裡會做的事。能在投入真金白銀之前看到這一點,正是回測的全部意義。
交叉策略建立在一個賭注上:一次向上穿越均線的交叉,標誌著一段值得騎乘的走勢的開始。在強勁趨勢中,這個賭注會回報您——用寥寥幾筆交易就能抓住走勢的大部分。但在橫盤或震盪的市場裡,價格會在不決定方向的情況下反覆穿越均線,每一次穿越都觸發一筆新進場,然後幾乎立刻被停損或反轉。
這就是洗盤(whipsaw)。上面 22.7% 的勝率就是它的指紋——大多數進場都是假突破。少數幾筆小賺,付不起許多筆小賠,於是獲利因子遠低於 1.0。教訓不是「交叉不好」,而是:單一策略只在它所遇到的那種市場局面裡管用,而您不去看,就無法知道自己測的是哪一種局面。關於這種風格與相反做法的詳細對照,請見趨勢跟隨 vs 均值回歸。
誠實的 -6.89% 是一個基準,而不是判決。真正的研究,從您改動一項再重測開始。值得一試的變體:
- 不同的均線期數。 50 根的 SMA 反應更快、進場更早;200 根的 SMA 更慢、更穩。把 50/200 配對(快線穿越慢線)拿來和「收盤對 200」版本比較。
- 不同的時間框架。 把同一條規則放到
4h 或 1d,掃描的 K 棒更少,通常比 1h 更不容易被洗。把完全相同的邏輯在較高時間框架重跑一次,比較交易筆數。
- 不同的出場。 把交叉出場換成移動停利(trailing stop),或加上停利,看看能否多保住每一段獲利走勢。
- 不同的期間。 除了這段震盪期,也在趨勢行情裡重測。在震盪裡賠錢的交叉,在乾淨的趨勢裡或許會發光。
一次只改一個變數,把每一個都定版成獨立的策略版本,再放進比較組並排檢視,讓差異可以歸因。要小心別一直微調到數字在這一段期間看起來漂亮為止——那就是回測過度擬合,會產生在樣本外消失的結果。比較的同時要正確解讀指標,請參考勝率、獲利因子與夏普值的指南。
這個 SMA(200) 模板——以及另外兩個——都能在回測基礎範例裡免註冊執行。拉動部位大小的旋鈕,看報酬與回撤一起等比縮放,然後到加密貨幣回測工作區打造您自己的變體。當您準備好從頭撰寫一個策略時,第一個策略指南會一步步帶您完成。
什麼是移動平均交叉策略?
這是一種趨勢跟隨規則:當價格(或快速移動平均)向上穿越較慢的移動平均時做多,跌破時出場。「黃金交叉」是廣為人知的版本,以 200 期均線作為慢線。
移動平均交叉策略真的有效嗎?
完全取決於市場。在 Traseq 範例中,以 2024 年底震盪的 BTC/USDT 1H 資料來看,SMA(200) 趨勢濾網報酬為 -6.89%、勝率 22.7%,因為交叉在橫盤市場會被洗來洗去。同一條規則在持續趨勢裡可能表現大不相同——這正是您在信任它之前該先回測的原因。
黃金交叉和 SMA 交叉有什麼差別?
SMA 交叉是「價格或某條均線穿越另一條均線」的通用構想。黃金交叉則是其中特定的一種:快速均線(或價格)向上穿越長期的 200 期均線,被視為偏多的趨勢訊號。
在 Traseq 裡如何無需寫程式回測交叉策略?
在 Sentence 模式描述規則,或在 Canvas 模式組裝——例如「收盤價向上穿越 200 期 SMA 時做多進場,向下跌破時出場,5% 停損」。把版本定版後,在支援的交易對與時間框架上執行以 K 棒為基礎的回測。不需要 Pine Script 或 Python。
為什麼 SMA(200) 策略在範例裡賠錢?
測試期間(2024-11-03 至 2024-12-31)是從橫盤轉跌的震盪行情。價格在沒有持續趨勢的情況下反覆穿越 200 根的 SMA,觸發了 22 筆進場,而其中大多是假突破——獲利因子 0.36、夏普值為負。這種洗盤,正是交叉在沒有趨勢的市場裡的正常表現。
為什麼勝率高仍然可能虧錢