
量化自动交易到底在做什么
量化自动交易就是让电脑程序替你盯着股票和期货的行情,按照事先设定好的规则自动下单。你不用整天坐在屏幕前看K线,程序会24小时扫描市场,发现符合条件的机会就出手。
它的核心只有三件事:买什么、什么时候买、买多少。程序把这三个问题用数学公式和代码固定下来,然后机械执行。人会有情绪,涨了贪、跌了怕,程序不会。
股票和期货的量化玩法不一样
股票量化通常做的是选股和择时。选股靠多因子模型,把市盈率、营收增速、动量等指标打分排序,买入排名靠前的股票组合。择时则用均线、波动率等信号决定仓位高低。

期货量化更看重趋势跟踪和套利。期货自带杠杆,波动大,程序必须严格止损。趋势策略在价格突破关键位时开仓,顺势加码,逆势离场。套利策略则同时买卖不同月份或不同品种的合约,赚取价差回归的钱。
股票T+1,当天买不能卖,程序要预判次日走势。期货T+0,可以日内反复交易,但手续费和滑点会吃掉利润。期货合约有到期日,程序要自动移仓换月,股票没这个问题。
普通人怎么上手
你不需要从头写代码。现在有很多现成的量化平台,比如聚宽、米筐、文华财经,提供历史数据、回测引擎和模拟交易。你只要把想法写成简单的策略逻辑,平台帮你执行。
入门建议从股票指数ETF开始,波动比个股小,没有退市风险。期货先从模拟盘练手,熟悉保证金和强平规则。
下面是一个最简单的双均线策略代码示例,用Python描述:
# 双均线策略:短期均线上穿长期均线买入,下穿卖出
def dual_ma_strategy(data, short_window=5, long_window=20):
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
return data
这个逻辑简单到不用编程也能懂:短期均线在长期均线上方就持有,下方就空仓。回测时你会发现它在趋势行情里赚钱,在震荡市里反复被打脸。
回测赚钱不等于实盘赚钱
新手最容易掉进的坑是过度拟合。你在历史数据上反复调整参数,直到回测曲线完美向上,但一到实盘就亏钱。历史不会简单重复,参数越精细,未来失效越快。
滑点和手续费是隐形杀手。回测时假设按收盘价成交,实盘可能买不到那个价。期货的滑点尤其大,一跳可能就是几十上百块。程序必须把这些成本算进去。
流动性问题也要命。小盘股和远月期货合约成交稀疏,程序发出信号却没人接单,或者一买就涨停、一卖就跌停。量化策略要避开流动性差的品种。
风控比策略更重要
任何量化系统都必须有硬止损。单笔亏损不能超过总资金的1%到2%,达到就无条件砍仓。程序不能有侥幸心理,它只会执行代码,所以代码里必须写死这条线。
仓位管理决定你能活多久。凯利公式告诉你最优下注比例,但实盘建议用更保守的固定比例,比如每次只投5%到10%的资金。期货杠杆高,仓位要更低。
分散到不同品种和不同策略。股票、期货、指数基金各配一点,趋势策略和套利策略混着用。一个策略失灵时,其他策略能补上。
量化自动交易的真实收益预期
别信那些年化翻倍的宣传。长期来看,股票量化多头策略能跑赢指数5到10个点就算优秀。期货CTA策略年化10%到15%已经很好,回撤可能达到20%。
程序不会让你一夜暴富,它只是把交易的纪律性提上去,把情绪干扰降下来。你依然要理解市场逻辑,依然要监控策略是否失效,依然要为极端行情做好准备。
量化自动交易是一个工具,不是印钞机。用好了能稳定积累,用歪了会加速亏损。先想清楚亏多少你能接受,再决定投多少。