
股票量化指标到底在算什么
很多人打开股票软件,看到一堆线条和数字就头晕。均线、MACD、RSI、布林带,名字听着挺唬人,说到底它们都在干同一件事:把过去的价格和成交量揉一揉,换个角度给你看。
价格本身太原始了,一天涨一天跌,看多了容易上头。量化指标就是把杂乱的价格序列加工成更容易判断的信号。均线是过去N天收盘价的平均值连成线,它抹平了日常波动,让你看清趋势方向。MACD是把两条不同速度的均线再加工,用它们的差值和差值的变化来捕捉动能拐点。RSI统计一段时间内涨跌力量的对比,数值在0到100之间,告诉你当前是买方主导还是卖方主导。布林带用均线和标准差画出一个通道,价格碰到上轨或下轨,说明短期偏离了常态。
这些指标没有神秘之处,就是数学公式。关键在于,不同指标对同一段行情的反应速度不一样。均线慢,MACD中等,RSI快。用哪个取决于你想抓什么级别的波动。
指标参数改一改就能赚钱吗
不少人沉迷于优化指标参数。把均线从20日改成18日,回测收益立马翻倍,兴奋得以为找到了圣杯。实盘一跑,亏得比原来还惨。

参数优化有个陷阱叫过度拟合。历史数据就那么多,你把参数调到跟历史走势严丝合缝,它拟合的是过去的噪声,不是未来的规律。市场风格一变,这套参数就失效。
真正有用的做法是理解指标背后的市场逻辑。20日均线代表一个月左右的平均持仓成本,价格站上20日线说明近一个月买入的人多数在赚钱,抛压相对小。60日均线代表季度成本,是中线资金的分水岭。参数背后是交易者的行为习惯,不是随便设的数字。
改参数之前先问自己:这个参数对应多少天的市场记忆?改完之后,指标对趋势和震荡的区分能力是变强还是变弱?
均线系统实战怎么用
均线最直接的用法是判断趋势。价格在均线上方,均线向上,视为多头趋势。价格在均线下方,均线向下,视为空头趋势。多条均线组合能过滤掉很多假信号。
短期均线上穿长期均线叫金叉,通常视为买入信号。短期均线下穿长期均线叫死叉,视为卖出信号。金叉死叉在趋势行情里表现不错,在震荡行情里会反复打脸。
改进的办法是加一层过滤。比如要求金叉发生时,长期均线已经走平或向上。或者要求价格突破近期高点再入场。这样可以避开大部分震荡期的无效交叉。
均线还有支撑和压力的作用。上涨趋势中,价格回踩均线不破,是加仓机会。下跌趋势中,价格反弹到均线附近受阻,是减仓机会。这个用法比金叉死叉更贴近盘面感觉。
MACD和RSI的互补关系
MACD擅长抓趋势,RSI擅长判超买超卖。两个一起用,能解决不少单指标的死角。
MACD的零轴是多空分界线。DIF和DEA在零轴上方,说明短期动能强于长期。零轴下方的金叉,往往只是反弹,力度有限。零轴上方的死叉,可能只是回调,趋势未必结束。
RSI超过70算超买,低于30算超卖。强趋势里,RSI可以在超买区待很久,光靠RSI做空会死得很惨。把RSI和MACD结合,MACD确认趋势方向,RSI找入场时机。趋势向上时,RSI回落到50附近企稳,是较好的买点。趋势向下时,RSI反弹到50附近受阻,是较好的卖点。
RSI还有个背离用法。价格创出新低,RSI没有创新低,叫底背离,暗示下跌动能减弱。价格创出新高,RSI没有创新高,叫顶背离,暗示上涨动能减弱。背离不是立刻反转的信号,只是提醒你趋势可能要变,需要结合其他证据。
布林带与波动率交易
布林带由中轨和上下轨组成。中轨通常是20日均线,上下轨是中轨加减两倍标准差。标准差衡量波动率,波动率大,通道就宽,波动率小,通道就窄。
价格触及上轨,不代表一定要卖,强势股可以沿着上轨往上爬。价格触及下轨,也不代表一定要买,弱势股可以沿着下轨往下滑。布林带最有价值的信号是收口和开口。
通道极度收窄,说明波动率降到低位,往往预示着大行情即将来临。方向不确定,但幅度会大。通道突然开口,价格突破上轨或下轨,是趋势启动的信号。顺着突破方向做,胜率较高。
布林带配合RSI使用效果更好。价格突破上轨,RSI同时进入超买区,短线追高风险大。价格突破上轨,RSI在60附近,说明还有上行空间。
量化交易系统怎么搭建
单靠一个指标做交易,长期看很难稳定盈利。有效的量化系统需要几个模块:入场信号、出场信号、仓位管理、风险控制。
入场信号可以组合均线、MACD、RSI。均线定方向,MACD确认动能,RSI找具体点位。三个条件同时满足才开仓,信号数量会减少,质量会提高。
出场信号分两种:止盈和止损。止盈可以用跟踪止损,价格跌破短期均线就离场。止损用固定比例或ATR倍数,控制单笔亏损。
仓位管理决定每笔交易投入多少资金。常用方法是固定比例,每次风险不超过总资金的1%到2%。账户回撤时自动降低仓位,账户增长时适度增加。
风险控制是系统的生命线。连续亏损后要检查是市场环境变了还是系统失效了。最大回撤超过预设阈值,暂停交易,重新评估。
用Python写个简单的均线交叉策略感受一下:
import pandas as pd
import numpy as np
def moving_average_crossover(data, short_window=10, long_window=30):
data['short_ma'] = data['close'].rolling(short_window).mean()
data['long_ma'] = data['close'].rolling(long_window).mean()
data['signal'] = 0
data.loc[data['short_ma'] > data['long_ma'], 'signal'] = 1
data.loc[data['short_ma'] <= data['long_ma'], 'signal'] = -1
data['position'] = data['signal'].shift(1)
data['returns'] = data['close'].pct_change()
data['strategy_returns'] = data['position'] * data['returns']
return data
这段代码计算两条均线,短期均线在长期均线上方时做多,下方时做空。实际交易还要考虑手续费、滑点、流动性。回测收益漂亮不代表实盘能赚钱,这是量化交易最容易被忽视的一点。
期货量化指标的特殊之处
期货和股票不一样,期货有杠杆、有到期日、有保证金制度。同样的指标在期货上要用不同的参数和风控。
期货主力合约会换月,价格序列不连续,直接拿均线算会出问题。处理方法是使用复权价格或者只做近月合约。
期货波动比股票大,止损设置要更宽松,否则容易被正常波动扫出去。仓位要更轻,杠杆放大了收益也放大了亏损。
期货可以双向交易,做多做空都行。趋势策略在期货上表现通常比股票好,因为期货趋势更流畅,受情绪影响小。
期货量化还要关注基差和展期收益。近月合约和远月合约的价差变化会影响持仓成本。展期时机的选择对收益有直接影响。
指标失效的时候怎么办
任何指标都有失效期。趋势指标在震荡市里连续亏损,震荡指标在趋势市里反复打脸。这不是指标坏了,是市场环境变了。
判断市场环境可以用波动率。波动率低的时候,市场在震荡,趋势指标不好用。波动率高的时候,市场在走趋势,震荡指标不好用。
另一种方法是看均线排列。多条均线纠缠在一起,方向不明,减少操作。均线发散,趋势清晰,加大仓位。
指标失效时不要急着换指标。先检查市场环境是否匹配,再检查参数是否需要调整。频繁换指标等于没有系统,长期必亏。
纪律比指标重要一百倍
见过太多人指标研究得很透,实盘照样亏钱。问题不在指标,在执行。
信号出现不敢开仓,怕假突破。持仓浮亏不肯止损,幻想会回来。盈利单子拿不住,一点波动就跑。这些都是人性弱点,指标解决不了。
量化交易的核心是概率优势。单笔交易盈亏随机,一百笔交易下来,正期望值的系统会赚钱。接受亏损是交易的一部分,才能拿住盈利的单子。
用程序化交易可以规避情绪干扰。写好代码,让机器执行。前提是你要信任你的系统,信任来源于对指标逻辑的深刻理解和对历史数据的充分回测。
股票量化指标是好工具,但不是赚钱的保证。理解指标背后的逻辑,搭配严格的风控和纪律,才能在市场里长期生存。