ALMA+MACD 策略:BCH 期貨一年回測 155%、樣本外 4 個月再賺 50% 拆解
目錄
YouTube 頻道 Quant Tactics 在 2025 年 12 月底上載了一條回測影片,主角是阿諾勒古移動平均線 ALMA:一條以高斯分佈加權、標榜「平滑與反應速度兼得」的均線。策略邏輯很直接——價格收市上穿 ALMA 確認趨勢轉向,再由 MACD Moving Average Convergence Divergence 金叉確認動能,兩個條件齊集才造好倉,止蝕止賺用 平均真實波幅 ATR 計算。講者用 Freqtrade 在 BCH 永續合約 1 小時圖回測一年,聲稱總回報 155%、最大回撤 13.8%,同期市場 buy & hold 只有約 52%。這是同一頻道繼 KAMA+MACD 策略後又一次「自適應/進階均線+MACD」的組合,兩片正好對照。
策略速覽
重現規格
| 項目 | 規格 |
|---|---|
| 投資標的 | BCH/USDT 永續合約(hyperopt 指令 -p BCH/USDT:USDT,Binance USDⓈ-M 期貨) |
| 交易所/市場 | Binance 期貨(結果總表 Trading Mode: Isolated Futures,只造好倉) |
| Timeframe | 1 小時圖(策略代碼 timeframe = "1h";回測用 5 分鐘 detail 數據模擬線內走勢) |
| 回測期間 | 2024-11-01 至 2025-11-01(畫面 timerange 20241101-20251101,共一年) |
| 調參方式 | Freqtrade hyperopt:首 8 個月(20241101-20250701)優化,MultiMetricHyperOptLoss,100 epochs,min-trades 10 |
| 樣本外測試 | 末 4 個月(2025-07 至 2025-11),講者稱期內再賺約 50% |
| 起始資金 | 1,000 USDT(畫面 Starting balance) |
| 同時持倉上限 | 1(Max open trades: 1) |
| ALMA 參數 | 示範畫面 Length 100/Sigma 20/Offset 0.15;但回測圖表圖例顯示 alma(100, 20, 0.85),即實測 offset 疑為 0.85(hyperopt 優化結果),兩處不一致 |
| MACD 參數 | 原片未交代(畫面有 MACD 副圖但無設定;TradingView 預設 12/26/9 未經證實) |
| 進場條件 | ① K 線收市價上穿 ALMA;② MACD 線上穿訊號線;兩者齊集造好倉 |
| 出場條件 | 觸及止蝕或止賺平倉(結果總表 Use Exit Signal: true、ROI: 0) |
| 止蝕 | 口述 3 倍 ATR(ATR 設定畫面 Length 14、Multiplier 3);惟結果總表 Stoploss 一欄顯示 −25%,ATR 止蝕邏輯應寫在策略代碼內 |
| 止賺 | 2.5 倍風險(回報風險比 1:2.5) |
| 槓桿 | 原片未交代(Isolated Futures 模式;Avg. stake 約 1,711 USDT 高於起始資金,屬複利滾存) |
| 手續費/滑價假設 | 原片未交代 |
| 講者聲稱結果 | 總回報 155.156%(1,551.558 USDT)、33 次交易、勝率 45.45%、利潤因子 2.256、Sharpe 0.62、Sortino 5.64、Calmar 58.55、最大回撤 13.777%;同期市場 +52.152% |
詳細拆解
ALMA:三個參數控制一條均線的性格
普通均線的權重分佈是寫死的:SMA 全部等權,EMA 指數遞減。阿諾勒古移動平均線 ALMA 改用高斯分佈(鐘形曲線)做權重,並把曲線的控制權交給用家,三個參數各有分工:
- Length:回望窗口。窗口越長,越多歷史數據參與計算,線越平滑、越能過濾噪音,但反應越慢;窗口短則緊貼近期價格。
- Sigma:鐘形曲線的「集中度」。sigma 小,權重集中在窄窄一段價格上,線對每下波動都敏感;sigma 大,權重攤平,毛刺被磨掉,線變得圓滑。
- Offset:峰值位置,介乎 0 至 1。越接近 1,權重峰值壓在最新價格上,反應快但較粗糙;偏低則峰值落在窗口中段,類似置中平均,穩定但滯後。
實作上,ALMA 先按 offset 算出峰值在窗口內的位置,再按 sigma 算出鐘形曲線的寬度,窗口內每個數據點按「離峰值多遠」分配到指數遞減的權重,最後歸一化加權求和。同樣是 100 期窗口,offset 0.15 與 0.85 是兩條性格完全不同的線:前者的權重峰值落在第 15 期附近,本質接近置中平均,線條平滑但明顯滯後;後者峰值壓在最新幾期,外觀更接近一條磨平了的 EMA。這也是後文參數矛盾值得在意的原因——差一個 offset,訊號出現的位置可以差好幾根 K 線。
ALMA 的賣點是在「平滑」與「低滯後」之間取得比傳統均線更好的平衡——SMA 要平滑就得加長窗口、接受滯後,ALMA 則可靠 sigma 與 offset 微調。與同屬進階均線的 考夫曼適應性移動平均線 KAMA 相比,兩者思路不同:KAMA 按市場效率自動變速,參數少但行為由數據決定;ALMA 的行為則完全由三個參數寫死,可預測但依賴調參。代價是可調參數由一個變三個,調參自由度大增,這點在防坑部分再談。
截圖出自原片(Quant Tactics,2025-12-27):ALMA 參數設定畫面,Offset 一欄被框起講解;留意此處 Offset 顯示 0.15,與後段回測圖表圖例 alma(100, 20, 0.85) 不一致。
進場:ALMA 定向、MACD 計量
講者開宗明義指出單用 ALMA 的最大問題:價格每次穿越均線都進場,會不斷被假突破觸發,勝率極低。所以訊號分兩層:
- 趨勢層:K 線收市價上穿 ALMA——注意是收市確認,不是線內觸碰,避免被即市假動作騙線。
- 動能層:MACD 線上穿訊號線(金叉),確認上升動能正在形成。
兩個條件齊集才造好倉,次序上有先後:ALMA 穿越是觸發器,MACD 是閘門。實際運作時兩個訊號未必同日出現——價格收市站上 ALMA 後,可能要多等幾根 K 線 MACD 才金叉,講者的寫法是兩者「齊集」才進場,而非嚴格同一根 K 線。原片沒有交代兩個訊號之間容許相隔多久、有沒有失效窗口,這是重現時必須自行假設的一環(同頻道 KAMA 一片就有「交叉有效窗」的設計,本片則無交代)。
這種「均線定向、震盪指標計量」的分工,與本站的 KAMA+MACD 拆解如出一轍:KAMA 一片甚至用三條均線做排列過濾,本片只用一條 ALMA,條件更簡。兩者的共同假設是——均線穿越提供方向,MACD 交叉負責剔除「有方向、無動能」的假訊號。
出場:3 倍 ATR 止蝕、2.5R 止賺
出場不看出場訊號,純粹用價格管理:止蝕設在入場價減 3 倍 ATR(畫面 ATR 設定為 Length 14、Multiplier 3),止賺設在 2.5 倍風險距離,即回報風險比 1:2.5。3 倍 ATR 屬偏寬的止蝕,設計意圖是「給交易喘息空間」,不被正常回調震走。
這裡有一個值得記錄的出入:口述的止蝕是 3×ATR,但 Freqtrade 結果總表的 Stoploss 一欄顯示 −25%、Custom Stoploss 為 false。合理的解讀是 ATR 止蝕與止賺寫在策略代碼的自訂出場邏輯內,−25% 只是 Freqtrade 層面的災難性後備止蝕——同頻道 KAMA 一片的設定正是這種結構。不過代碼放在 Patreon 付費牆,無法核實。
截圖出自原片(Quant Tactics,2025-12-27):hyperopt 指令列明 timerange 20241101-20250701(8 個月)、100 epochs、min-trades 10、max-open-trades 1;疊加文字標明 OOS 樣本外測試 4 個月。
回測方法:8 個月調參+4 個月樣本外
這片比同頻道早期作品規矩一點的地方,是做了單次樣本外測試 Out-of-Sample Testing:用 2024 年 11 月至 2025 年 7 月的 8 個月數據跑 hyperopt 找參數,再把最後 4 個月(2025 年 7 月至 11 月)留起不參與調參,用優化後的參數直接測試。講者稱樣本外期間策略再賺約 50%,累計利潤曲線在該段穩步向上。
另一個畫面細節:回測啟用了 5 分鐘 detail 數據(Timeframe Detail: 5m)。Freqtrade 預設只用 1 小時 K 線的四價模擬線內走勢,止蝕止賺的觸發次序只能靠估計;改用 5 分鐘數據後,線內先觸及止蝕還是止賺的判斷準確得多。這是這片在方法上做對的一件事,尤其本策略止蝕止賺相距不遠,線內模擬精度直接影響每單的結帳價。
要留意這只是單次前推切分,不是同頻道其他影片用的 13 個月滾動 walk-forward——切分點只有一個,樣本外只有 4 個月、十來次交易,仍然屬於「有做」與「做足了」之間。
截圖出自原片(Quant Tactics,2025-12-27):回測期間 2024-11-01 至 2025-11-01,Isolated Futures、1h、起始資金 1,000 USDT;右欄 Total Profit 155.156%(1,551.558 USDT)、Sharpe 0.62、Profit factor 2.256、33 次交易、最大回撤 13.777%。
成績解讀:155% 背後的 33 次交易
按畫面數據:一年內只有 33 次交易(日均 0.09 次),15 勝 18 負,勝率 Win Rate 45.45%;平均盈利單持有約 4 日 6 小時,平均虧損單約 2 日 22 小時,利潤因子 Profit Factor 2.256。配合 1:2.5 的回報風險比設計,這是標準的「勝率不過半、靠盈虧比取勝」結構——每贏一次平均賺 2.5R,每輸一次蝕 1R,勝率四成半已足以拉出 2.2 以上的利潤因子。
風險指標的對讀更有意思:夏普比率 Sharpe 只有 0.62,索提諾比率 Sortino 卻高達 5.64,卡瑪比率 Calmar 58.55。Sharpe 與 Sortino 的十倍差距意味波動幾乎全部來自上行方向——盈利單持得久、金額大,虧損單細而快。配合最大回撤只有 13.777%,紙面上屬「回報高、下行風險受控」的理想形態。但 33 次交易的樣本量太少:任何單一交易的出入都足以大幅改寫這些比率,統計代表性本身才是最大的問號。
截圖出自原片(Quant Tactics,2025-12-27):上方為逐次交易盈虧分佈,下方累計利潤曲線的綠框部分為樣本外 4 個月,講者稱該段再賺約 50%。
與 buy & hold 的對照
講者提供的基準是同期 BCH 市場變化 +52.152%(畫面 Market change),策略 155% 約為其三倍。不過 BCH 在回測年內屬強勢幣種——策略的超額回報有多少來自「選中 BCH」這個決定本身,原片沒有交代選幣過程,這一點與參數優化一樣,屬隱性擬合的可能來源。
重現 Backtest 清單
照住以下清單逐項核對,才知道能否真正重現這個回測:
- ✅ 交易所與市場類型:Binance USDⓈ-M 期貨、Isolated 模式(畫面有)
- ✅ 交易對:BCH/USDT:USDT(hyperopt 指令有)
- ✅ Timeframe:1 小時,detail 用 5 分鐘(畫面有)
- ✅ 回測期間:20241101-20251101(畫面有)
- ✅ 調參方法:hyperopt、8 個月、100 epochs、MultiMetricHyperOptLoss、random-state 9319(指令完整可見)
- ✅ 起始資金:1,000 USDT;持倉上限 1(畫面有)
- ⚠️ ALMA 參數:示範畫面 100/20/0.15 與回測圖例 alma(100, 20, 0.85) 不一致,實測參數以哪個為準無法確認
- ⚠️ MACD 參數:原片未交代
- ✅ 進場條件:收市上穿 ALMA+MACD 金叉(口述清楚)
- ✅ 出場條件:3×ATR 止蝕(ATR 14、乘數 3 有畫面)、2.5R 止賺(口述清楚);但與結果總表 Stoploss −25% 的對應關係原片未交代
- ⚠️ 槓桿:原片未交代
- ⚠️ 手續費率與滑價假設:原片未交代
- ⚠️ 每倉注碼規則:原片未交代(Avg. stake 約 1,711 USDT,屬複利後數字)
- ❌ 策略代碼:放於 Patreon 付費牆,非免費公開(與同頻道三連陽一片免費放碼不同)
- ✅ 樣本外驗證:有,單次切分 4 個月(但非滾動 walk-forward)
結論:回測框架與調參指令交代得比同頻道舊片完整,但 ALMA/MACD 實測參數、槓桿、費用四項關鍵缺失,加上代碼收費,單靠影片內容無法完整重現回測。
🙏 覺得內容有用?本站所有內容免費提供,使用推薦碼開戶就是支持我們繼續營運的最大鼓勵:
ZA Bank 邀請碼 P20923
—— 你享 HKD 2,000 迎新獎賞,本站獲得營運支持。
立即開戶 →
(聯盟連結|投資涉及風險,受條款及細則約束,此資料僅可於香港境內分發)
MT5 可行性速評
| 項目 | 評估 |
|---|---|
| 可移植性 | 中。MT5 沒有內建 ALMA(iMA() 只有 SMA/EMA/SMMA/LWMA),需自行以高斯權重公式實作或引用 MQL5 Codebase 的社群版本;MACD(iMACD())與 ATR(iATR())為內建,H1 框架原生支援 |
| 平台限制 | MT5 券商的加密貨幣多為 CFD 而非永續合約,無資金費率、點差結構不同;單標的測試無礙(本片本身只測 BCH 一對),但自寫 ALMA 與原片 qtpylib 實作的細節差異(權重精度、起始值處理)會令訊號位置偏差,結果不可直接對照 |
| 評級 | ⚠️ 邏輯簡單可移植,但 ALMA 需自寫且參數未完全公開,回測數字難以在 MT5 環境核證 |
| MQL5 寫法提示 | ALMA:先算 m = floor(offset × (length − 1))、s = length / sigma,再逐位計權重 w[i] = exp(−((i − m)²) / (2s²)) 並歸一化後加權求和,可封裝成自訂指標;進場用 Close[1] 與 ALMA[1]、ALMA[2] 比較判斷收市上穿,MACD 金叉用 iMACD() 主線與訊號線前後兩期比較;止蝕止賺在開倉時以 3×iATR() 及 1:2.5 距離計算掛單 |
即使成功移植,MT5 回測同樣會過度擬合。
防坑檢查
- 過度擬合:ALMA 有三個可調參數,加 MACD 三個、ATR 乘數一個,自由度不低;hyperopt 以 100 epochs 在 8 個月數據上搜尋,min-trades 只設 10,即優化目標可能由極少交易主導。示範畫面與回測圖例的 offset 不一致(0.15 vs 0.85),側證參數經過優化且過程不透明。
- 樣本外驗證:有,但只是單次切分的 4 個月,期內交易次數約十來次,且切分點由講者自選;非同頻道舊片的 13 個月滾動 walk-forward,驗證力度弱一截。
- 樣本量:全年僅 33 次交易。勝率 45.45%、利潤因子 2.256 這類比率在 33 個樣本下置信區間極寬,多幾單虧損就足以翻轉結論。
- 滑價:原片未交代。BCH 期貨流通性中等,33 次交易雖少,但每單金額隨複利放大至數千 USDT,滑價與資金費率(期貨持倉成本)均未見計入說明。
- 手續費:原片未交代費率。Freqtrade 預設會計費,但講者無展示設定;Binance 期貨另有資金費率,平均持倉 4 日的單會被收取約 12 次,對結果有實質影響。
- 選幣偏差:只測 BCH 一對,而 BCH 在回測年內 buy & hold 已升 52%。為何選 BCH 而非其他幣種、是否事後挑選,原片沒有交代。
- 參數矛盾:示範用的 offset 0.15 與回測圖例的 0.85 是兩條性格完全不同的均線(前者置中穩定、後者緊貼現價),影片沒有解釋差異,讀者照示範參數重設會得到另一套訊號。
- 固定問題——原片提供的資訊能否完整重現回測? 不能。框架、標的、期間、調參指令完整,但 ALMA 與 MACD 實測參數、槓桿、費用缺失,代碼又在付費牆後,屬「方法可學、數字不可核」的一類。
欣利克的看法
- 「均線+MACD 確認」是這個頻道反覆驗證有效的模板,本片是又一個變體。繼 KAMA 之後再試 ALMA,兩者同屬「比 EMA 更聰明的均線」家族,進場邏輯幾乎一樣。概念上值得釐清的是:這類策略的邊際貢獻主要在 MACD 確認層,而非均線本身——換句話說,ALMA 是否真比 KAMA 或 EMA 好,單憑一片單幣單年的回測無法回答。
- 常見誤區:把「有做樣本外」當成「驗證充足」。本片確有 4 個月樣本外,比完全沒有的影片誠實,但單次切分、十來次交易的樣本外,統計上仍遠不足夠。截至 2025 年 11 月的數據顯示 OOS 期內賺約 50%,數字亮麗,但樣本外同樣只有一個切分點,切分點的選擇本身也可以事後調整。
- 33 次交易是最該盯著的數字,比 155% 重要。按畫面數據,全年日均交易 0.09 次,利潤因子 2.256、Sortino 5.64 全建基於這 33 個樣本。讀此類回測時,先看交易次數決定比率的可信度,再看比率本身——次序反了就容易被漂亮的風險指標說服。
- 不同來源的觀點值得並置。同頻道的 KAMA+MACD 一片做滾動 walk-forward、測 80 隻幣,本片只測 BCH 一對、單次切分;兩片結論都是「策略有效」,但驗證嚴謹度差很遠。同一講者不同影片的規格差異,本身就是評估其可信度的素材。
- 資料時效與利益關係提醒。回測數據止於 2025 年 11 月 1 日,影片 12 月 27 日上載,距今已超過半年;講者經營 Freqtrade 付費課程,本片的策略代碼亦放於 Patreon 收費,回測數字服務於銷售目的,宜當教學示範看待,而非可執行的結論。
名詞解釋
- 阿諾勒古移動平均線 ALMA:以高斯分佈加權的均線,用 length/sigma/offset 三參數平衡平滑與反應速度,本策略以其作趨勢核心。
- MACD Moving Average Convergence Divergence:由快慢 EMA 差值構成的動能指標,本策略以 MACD 線上穿訊號線作進場確認。
- 平均真實波幅 ATR:量度價格平均波動幅度,本策略以其 3 倍設止蝕、2.5 倍風險設止賺。
- 考夫曼適應性移動平均線 KAMA:按市場效率自動變速的均線,同頻道另一策略的主角,與 ALMA 同屬進階均線家族。
- Freqtrade:開源加密貨幣自動交易與回測框架,本片回測平台。
- Hyperopt:Freqtrade 內建的參數優化工具,本片以 100 epochs 在 8 個月數據上調參。
- 永續合約 Perpetual Futures:無到期日的加密貨幣期貨,本片標的 BCH/USDT 屬此類,持倉涉及資金費率。
- 回報風險比 Risk-Reward Ratio:潛在盈利與潛在虧損的比例,本策略設計為 1:2.5。
- 勝率 Win Rate:盈利交易佔總交易的百分比,本策略 45.45%。
- 利潤因子 Profit Factor:總盈利除以總虧損,本策略 2.256。
- 夏普比率 Sharpe Ratio:每單位總波動換取的超額回報,本策略僅 0.62。
- 索提諾比率 Sortino Ratio:只計下行波動的風險調整指標,本策略 5.64,與 Sharpe 的巨大差距顯示波動集中在上行方向。
- 最大回撤 Max Drawdown:資金曲線由高位回落的最大幅度,本策略聲稱 13.777%。
- 樣本外測試 Out-of-Sample Testing:用未參與調參的數據驗證策略,本片做了單次切分的 4 個月。
- 滾動前推分析 Walk-Forward Analysis:不斷滾動「調參→驗證」窗口的驗證方法,比本片單次切分嚴謹,同頻道舊片曾使用。
- 過度擬合 Overfitting:參數過度遷就歷史數據的風險;本片 ALMA 三參數加 MACD 三參數,自由度不低。
- 滑價 Slippage:預期與實際成交價的差異,原片未交代有否計入。
- 買入持有 Buy and Hold:不作擇時、全程持有的基準策略,同期 BCH 回報約 52%,用作對照。
常見問題 FAQ
ALMA 與普通移動平均線有何分別?
ALMA 用高斯分佈(鐘形曲線)計算權重,而非 SMA 的等權或 EMA 的指數遞減。它把權重峰值放在數據窗口的指定位置(offset),並用 sigma 控制集中度,理論上能同時取得高平滑度與低滯後。代價是可調參數由一個增至三個,更容易在回測中被過度優化。
為甚麼價格上穿 ALMA 還要 MACD 確認?
按講者說法,單獨交易均線穿越會被大量假突破觸發,勝率很低。ALMA 負責判斷趨勢方向,MACD 金叉負責確認動能正在形成,兩層齊集才進場,目的是剔除「有方向、無動能」的假訊號。這與同頻道 KAMA+MACD 策略是同一設計思路。
155% 回報、回撤只有 13.8%,是否代表策略很穩?
數字亮麗但樣本太少:截至 2025 年 11 月的一年回測只有 33 次交易,勝率 45.45%、利潤因子 2.256 等比率在這個樣本量下統計意義有限。況且 Sharpe 僅 0.62,同期 BCH 買入持有已升 52%,策略的真正超額表現需要更大樣本與更多幣種驗證才有結論。
這套策略可以在 MT5 跑嗎?
可以但需動工:MT5 沒有內建 ALMA,要用高斯權重公式自行實作(或引用 MQL5 Codebase 的社群版本),MACD 與 ATR 則是內建指標。進出場邏輯簡單,移植不難;但 MT5 的加密貨幣多為 CFD,與 Binance 永續合約的費用結構不同,加上原片參數未完全公開,回測數字無法直接對照。
原影片
本文整理自以下影片,版權屬原創作者所有,建議配合原片觀看: