NovaMarket
← 全部策略

均值回归

Hyperliquid震荡市永续(可杠杆/做空)中等风险

z-score 偏离均值买入、回归离场

战绩

收益
+3.7%
夏普
1.72
最大回撤
1.3%
管理规模
$0
创建时间
2026-06-13
使用人次
0
使用池子
0
结算天数
0

适用市况

震荡市区间来回、无明确方向的行情
  • 价格围绕均值往返时低买高卖,吃区间波动
  • 单边趋势中逆势加仓,回撤风险大
不确定行情会怎么走?看看市场中性策略 →

回测(确定性模拟器)

参数: window / k / size

回测曲线为确定性模拟价格路径上的示例,非真实收益。

核心代码

GitHub 源码
"""均值回归(Mean reversion)—— 布林带 / z-score。

思路:价格相对滚动均值显著偏低(z-score ≤ -k)时买入,回到均值(z-score ≥ 0)时离场。适合震荡、
无趋势的行情;趋势行情会连续亏损,需配合风控(max_position / 止损,本 demo 用仓位上限)。
参数:window(均值窗口)、k(进场偏离倍数)、size(目标数量)。
"""
from __future__ import annotations

from ..base import StrategyBase
from ..context import StrategyContext
from ..indicators import zscore
from ..registry import register


@register("均值回归")
class MeanReversion(StrategyBase):
    description = "z-score 偏离均值买入、回归离场(震荡行情)。"
    params = {"window": 20, "k": 1.0, "size": 5.0}

    def __init__(self, window: int = 20, k: float = 1.0, size: float = 5.0) -> None:
        self.window = int(window)
        self.k = float(k)
        self.size = float(size)

    async def on_tick(self, ctx: StrategyContext) -> None:
        sym = ctx.conn_symbol()
        hist = await ctx.history(sym, self.window + 1)
        z = zscore(hist, self.window)
        if z is None:
            return
        if z <= -self.k:
            await ctx.target(sym, self.size, band=self.size * 0.1)  # cheap vs mean → accumulate
        elif z >= 0:
            await ctx.target(sym, 0.0, band=self.size * 0.1)        # reverted → exit

完整 SDK 与全部策略以 MIT 协议开源,可直接回测、paper 试跑或二次开发。

运行此策略的池子

暂无池子运行此策略——成为第一个发起者。