博客 (3)

本文系 AI 生成,仅供参考,不保证准确性,实战中务必将结果与专业软件中的数据进行对比。


在量化交易和股票数据分析中,“复权”是一个绕不开的核心概念。很多新手在搭建自己的数据库或编写策略时,常常因为复权处理不当,导致回测结果失真、技术指标错位,甚至引发系统性的计算灾难。

本文将从底层逻辑出发,用大白话为你讲透复权的本质,并提供一套成熟、高效的数据库与指标设计方案,帮你完美避开各种“坑”。

一、股票中的“复权”是什么意思?

简单来说,复权是为了消除股票因分红、送股、配股等除权除息事件造成的K线价格“断崖式”缺口。

当一家公司实施“10 送 10”时,股票数量翻倍,股价理论上会直接“腰斩”。如果看原始数据,K 线图上会出现一个巨大的向下跳空缺口。复权就是通过按比例调整历史价格,把这种非交易因素造成的断层“修复”,使股票的历史走势在图表上保持连续,从而真实反映投资者的累计收益和趋势变化。

二、如何计算复权因子?

复权因子本质上就是除权前后的价格比例,但不同数据源的定义方向恰好相反:

          BaoStock 算法:复权因子 = 除权后价格 ÷ 除权前价格(结果小于 1,如 10 ÷ 20 = 0.5)。

          掘金量化算法:复权因子 = 除权前价格 ÷ 除权后价格(结果大于 1,如 20 ÷ 10 = 2)。

无论哪种定义,其核心作用都是作为一个乘数,用于在不同历史价格之间进行等比换算。

三、将股票历史价格保存到数据库中时,建议使用真实价格还是复权价格?

强烈建议:只保存不复权的真实价格和复权因子。

前复权价格是一个动态变化的值(以当前最新价格为基准)。如果直接存储前复权价格,每次股票发生新的除权除息,你都需要把过去所有的历史价格全部重算并覆盖更新,维护成本极高且极易出错。而真实价格和复权因子是客观静态的,只需每天增量追加,历史数据永远无需修改。

四、以MA5为例,如何计算和保存指标价格?

遵循 “底层存真实指标,前端按需乘因子” 的原则:

          计算与存储:永远使用“真实价格”来计算 MA5,并将结果存入数据库。这样历史指标是客观事实,无需因复权而重算。

          展示与应用:在看盘或跑策略时,将数据库中的真实 MA5 乘以“当前的复权因子”,即可动态映射出完美的复权 MA5。

举个例子:某 6 天的真实价格是 20,21,22,23,24,12,其中最后一天进行了除权,且假设这天没涨没跌,掘金因子是24/12=2,这样的话,倒数据第 2 天的 MA5 是 (20+21+22+23+24)/5=22,最后一天的 MA5 是 (21/2+22/2+23/2+24/2+12)/5=11.4,所以数据库中这两天的 MA5 值分别是 22 和 11.4 。复权因子同样适用于 MA5 值,即从最后一天看,其前一天的前复权 MA5 值是 22/2=11。

五、如何解决复权因子与四舍五入叠加产生的偏差问题?

核心原则是 “真实价格负责算钱,复权价格负责算趋势” (实盘中):

          交易与风控层:涉及真实盈亏、涨跌停价计算、下单挂单等,必须使用精确到两位小数的“真实价格”。

          研究与回测层:涉及画K线图、计算 MA 等趋势指标时,才使用复权价格。此时允许存在极微小的尾数误差(如 1 分钱),因为技术指标看的是宏观趋势,微小偏差对信号毫无影响。

举个例子:真实价格 12.34(2位小数),复权因子 0.965678,前复权价格 12.34 × 0.965678 = 11.91646652(8 位小数)

如果你用这个 11.91646652 去算涨停价:11.91646652 × 1.1 = 13.108113172,四舍五入变成 13.11。

但是,真实的涨停价是 13.57,它的前复权价应该是:13.57 × 0.965678 = 13.10429046,四舍五入变成 13.10。

六、前复权与后复权在实际应用中该如何选择?

          前复权:以当前最新价格为基准,向下平移历史价格。优点是最新价格与真实交易价格一致,适合看近期K线走势、分析短期技术形态。

          后复权:以历史最早价格为基准,向上放大最新价格。优点是能真实反映上市以来的累计涨幅,适合计算长期累计收益率、评估长线投资价值。

附:复权因子计算实战案例(小白秒懂版)

【场景设定】

假设某只股票在 T-1 日的收盘价是 20元

T 日公司宣布“10 送 10”,股价直接“腰斩”变成 10元。假设 T 日当天市场不涨不跌,实际收盘价依然是 10元。

1. 复权因子怎么算?

          BaoStock算法:10 ÷ 20 = 0.5

          掘金量化算法:20 ÷ 10 = 2

2. 前复权怎么算?

前复权的核心是:T 日的 10元 保持不变,把 T-1 日的价格乘以 BaoStock 的因子(0.5)。

          T-1 日前复权价 = 20 × 0.5 = 10元

          T 日前复权价 = 10元(因为T日是基准日,保持不变)最终结果:T-1 日是 10元,T 日是 10元。K 线图完美连续,没有缺口。

3. 后复权怎么算?

后复权的核心是:T-1 日的 20元 保持不变,把 T 日的价格乘以掘金的因子(2)。

          T-1 日后复权价 = 20元

          T 日后复权价 = 10 × 2 = 20元最终结果:T-1 日是 20元,T 日是 20元。K 线图同样连续,反映了你“虽然股价没涨,但手里股票翻倍了,总资产没变”的真实情况。

4. 技术指标(以 MA2 为例)怎么算?

          数据库里存什么? 存真实价格算出来的指标。

       T-1 日前复权价格 = 20 × 0.5 = 10

       T 日前复权价格 = 10(前复权以当日为基准,保持真实价格不变)

       T 日真实 MA2 = (10 + 10) ÷ 2 = 10

【一句话总结】

复权只是数学游戏。真实价格负责算钱,复权价格负责看趋势;数据库里只存真实指标,看盘时再乘因子映射。

(AI 生成)


xoyozo 8 天前
97

个人整理,仅供参考。具体规格请以官方发布为准。


X1.pngx1p.pngx3p.png
名称X1X1 ProX3 Pro 日照金山(1母1子套装)
上市时间2025/42025/42025/11
RAM512 MB512 MB
ROM128 MB128 MB
频段2.4 GHz 速率为 688 Mbps

5 GHz 速率为 2882 Mbps

2.4 GHz 速率为 688 Mbps

5 GHz 速率为 2882 Mbps

2.4 GHz

5 GHz

天线

5 根全向高增益天线

5 根定向智能天线

1 根星闪天线

5 根全向高增益天线

5 根定向智能天线

1根 星闪天线


星闪网关支持支持
蓝牙网关支持支持
接口

2.5GE * 2

1GE * 2

2.5GE * 4
Wi-FiWi-Fi 7+Wi-Fi 7+Wi-Fi 7+
适用面积90-120㎡90-120㎡主路由覆盖90㎡内,每增加一个子路由可扩展约30㎡
价格



xoyozo 8 个月前
1,147

苹果宣布 2017 年 1 月 1 日开始所有上架的应用必须启用 ATS 安全传输功能。ATS 要求服务器必须支持传输层安全(TLS)协议 1.2 以上版本;证书必须使用 SHA256 或更高的哈希算法签名;必须使用 2048 位以上 RSA 密钥或 256 位以上 ECC 算法等等,不满足条件的证书,ATS 都会拒绝连接。查看具体要求

微信小程序进入开发公测阶段,同样要求提供 HTTPS 方式安全连接。

证书类型对比

 DV SSL
域名验证型
OV SSL
组织验证型
EV SSL
扩展验证型
申请条件申请对象个人 / 企业企业企业
证明域名所有权
价格免费 / 低
提交审核提交资料邮箱、姓名、手机等DV 所需资料以及:
组织机构资料(企业执照)等
OV 所需资料以及:
法律相关文件
审核时间自动审核
1小时内
人工审核
3~5工作日
人工审核
3~5工作日
可信标识地址栏挂锁
地址栏公司名称××
绿色地址栏(IE)××
保护范围单域名
多域名
通配符/泛域名×
推荐用途个人及小型网站一般组织或中小型企业金融、电商、大型企业或受信组织

* 表格中,单域名指单个子域名(如:123.abc.com),多域名指多个子域名(可以不属于同一个顶级域名,如:123.abc.com / 456.abc.com / 456.def.com),通配符指单个顶级域名的所有子域名(如:*.abc.com)。
* 若 https 的网页中包含 http 资源,则地址栏的锁可能会消失。
* 浏览器上点击地址栏的锁可以查看具体的证书详情。

证书颁发机构(CA)

机构简介谁在用
Let's Encrypt公益组织,免费,每 90 天续约越来越多的中小网站
Symantec赛门铁克百度、支付宝、阿里云、Apple(EV)、微软
GlobalSign公众信任服务行业的领头羊淘宝、天猫(OV)、阿里云、京东(OV)
GeoTrust全球第二大?微信
Comodo价格实惠 
GoDaddy全球互联网域名注册商 
DigiCert不颁发 DV,在非 DV 市场份额中是老大Facebook、Twitter(EV)、Mozilla(EV)、GitHub(EV)
沃通 WoSign国产360搜索(EV)
Other  

* 赛门铁克收购了 VeriSign,VeriSign 又收购了 GeoTrust,所以 Symantec 和 GeoTrust 在 SSL 认证服务上就不知道是什么关系了,请自行百度。

* 代理商也可以购买,或许价格优惠,或许申请方便,如:阿里云、腾讯云等,甚至上淘宝购买。

* 查看:Netcraft 统计的市场份额

* 网上说使用 Let's Encrypt 的 SSL 在遇到国内第三方 DNS 解析服务时会超时,我认为只是在申请证书时偶尔超时(DNS query timed out),重试即可,证书部署后访问网站时应该没有问题,请知情者告知实情。

* 各版本 Windows 对 SSL/TLS 协议的支持

下一步

购买和部署阿里云的免费型 DV SSL 证书服务

在 IIS 中部署 SSL

在 nginx 中部署 SSL

xoyozo 10 年前
6,358