'''
###学习笔记(20220124)
## 复权价的计算
1.正常情况下“实收=前收”,但有派红分息时两者不等
2,算出“实收”和“前收”的增幅比值,累乘出“复权因子”,即1元从开始至N行应该是多少元
2. 按“实收/因子“的比值,前复权比尾,后复权比头
## 前收的计算
1. 推导过程
  df[因子2】=df[因子1】*df[收盘2】/df【前收盘2】
  df[因子3】=df[因子2】*df[收盘3]/df【前收盘3】

df[后复价n]/df[收盘0】=df【因子n]/df【因子0】  df【因子n]/df[因子n-1】=df[收盘n]/df[前收盘n]            =df[后复n]/df[收盘0]
  df[前收盘n]=df[收盘n]*df[因子n-1]/df[因子n]= df[收盘n]*df【后复n]/df【后复n-1]
2. 公式:本行前收盘=本行实收盘*上行复权价/本行复权价,(前后复权价均可)
3.此法可以使用复权后的价格算出前收盘价,但首行的“前收”“增幅”无法确定,直接设为1即可
'''

import pandas as pdpd.set_option('expand_frame_repr', False)
pd.set_option('max_rows', 5000)df = pd.read_csv(filepath_or_buffer='../../*.csv',skiprows=1,encoding='gbk')df['涨幅'] = df['收盘价'] / df['前收盘价'] - 1
df['复权因子'] = (1 + df['涨幅']).cumprod()print(df.loc[0]['涨幅'])
df['后复权收盘价'] = df.iloc[0]['收盘价'] * df['复权因子'] / df.iloc[0]['复权因子']
df['前复权收盘价'] = df.iloc[-1]['收盘价'] * df['复权因子'] / df.iloc[-1]['复权因子']# df['新前收盘价'] = df['收盘价']*df['后复权收盘价'].shift(1) / df['后复权收盘价']
df['新前收盘价'] = df['收盘价'] * df['前复权收盘价'].shift(1) / df['前复权收盘价']
# df = df[['收盘价', '前收盘价', '后复权收盘价', '新前收盘价']]
print(df[(df['前收盘价'] != df['收盘价'].shift(1)) |  (df['收盘价'] != df['前收盘价'].shift(-1))])
# print(df)

股票量化学习——复权因子计算相关推荐

  1. Python股票量化学习(1)——股票代码下载

    我有一个梦想:每天不用干活,银行账户里每天有钱进账!!!(不要误会,不是说把钱存银行吃利息啊,本金不够,会俄死的.) 量化交易也许是一条实现梦想的路,姑且来学一学.于是乎写下这篇博客,一来是为了记录自 ...

  2. Python股票量化学习(2)——股票历史日线数据下载

    利用baostock下在股票历史数据 bs.query_history_k_data_plus(code, fields, start_date, end_date, frequency, adjus ...

  3. 通达信交易接口api_股票量化交易-获取数据的两种方法

    量化交易第一步就是获取数据,介绍两种免费的方法 1.通过pytdx获取本地通达信数据 2.通过requests爬虫爬取腾讯财经数据 通过python第三方库pytdx获取 这是个很强大的第三方库,原理 ...

  4. 通达信行情数据获取--python_股票量化交易-获取数据的两种方法

    量化交易第一步就是获取数据,介绍两种免费的方法 1.通过pytdx获取本地通达信数据 2.通过requests爬虫爬取腾讯财经数据 通过python第三方库pytdx获取 这是个很强大的第三方库,原理 ...

  5. 股票量化软件:运用 R-平方 评估策略余额曲线的品质

    每个交易策略都需要客观评估其有效性.为此, 使用了范围广泛的统计参数.它们当中的很多参数很容易计算, 并可显示直观的衡量数值.而其它参数则在数值构建和解读上更加困难.尽管有这些多样性, 但少有量化衡量 ...

  6. 自学量化投资之旅-计算股票的复权价

    在学习策略的开发之前,有一个必须要做的事,那就是对股票价格进行复权.tushare有提供复权数据的,不过鉴于很多软件对于复权处理都存在一些问题,(不知道tushare是否和其他的软件不一样,欢迎指正) ...

  7. 动手搭建深度强化学习的自动股票量化交易系统

    基于深度强化学习的股票量化交易 ⭐ ⭐ ⭐ 欢迎点个小小的Star支持!⭐ ⭐ ⭐ 开源不易,希望大家多多支持~ 更多实践案例(AI识虫,基于PaddleX实现森林火灾监测,眼疾识别,智能相册分类等) ...

  8. 股票因子扩展1(涨停因子计算)——从零到实盘4

    前文介绍了股票日线数据下载,从本文起开始记录一些股票因子的计算方法,这些因子将用于后续策略的编写. 我们将实现双神穿多线策略,策略的选股条件是,股票当日形成双神(间隔的2个涨停),K线同时上穿5.10 ...

  9. Python实现股票量化交易学习进阶(二)之简单交易策略的定义实现

    Python实现股票量化交易学习进阶第二篇之简单交易策略的定义实现 1.backtrader回测框架知识 2.需求一自定义MACD指标 3.需求二自定义实现KDJ指标 4.需求三自定义CCI指标 1. ...

  10. 高速版的股票数据源增加复权功能,股票量化分析工具QTYX-V2.3.3

    前言 在股票量化分析工具QTYX中,为了加速数据获取的过程,我们使用多线程爬虫方式从网易财经获取A股历史行情数据,作为本地的数据源来代替baostock,从而加速双底形态选股的过程. 不过获取到的数据 ...

最新文章

  1. 机器学习入门(08)— 损失函数作用和分类(均方误差、交叉熵误差)
  2. R语言ggplot2可视化散点图、移除可视化图像中的网格线(remove gridlines)
  3. 响应键盘delete键的删除功能
  4. 数据结构实验之二叉树三:统计叶子数
  5. MySQL数据库基本的“增删改查”操作 -《狗嗨默示录》-
  6. 《山谷物语》要怎么成为Supercell下一款年收入10亿美元的产品?
  7. Linux内核如何管理内存
  8. MSN on 2/16/2009
  9. w ndows10电脑配置看哪里,Windows10怎么自动登录?Windows10自动登录的设置方法
  10. mysql join 与 cross join 效率_浅析Mysql Join语法以及性能优化
  11. Linux Jump Label/static-key机制详解
  12. Web前端笔记(1)
  13. 2021世界互联网大会“全体会议”发言干货都在这篇了
  14. 计算机组成原理完整学习笔记(一):计算机系统概论
  15. Python求解拉普拉斯矩阵及其特征值
  16. Learning Music Notation 学习音乐符号 Lynda课程中文字幕
  17. 图片降噪Topaz DeNoise AI 安装小技巧
  18. C语言中负数在计算机内部的二进制表示方式(以补码表示负数、整数的范围及所占字节数)
  19. 扬帆际海:shopee店铺关键词广告怎么获得流量?
  20. Word设置题注快捷键

热门文章

  1. D630,vista sp2,4GB Turbo Memory,ITMService.exe(SmartPinService),Posses lots of CPU Resources
  2. mysql查询表升序降序_创建一个按钮,对MYSQL查询进行升序和降序排序
  3. Python爬取图片显示似乎不支持此文件格式
  4. 北京邮电大学教授杨义先:大数据背景下的信息安全风险及防御
  5. c语言中特殊符号怎么定义,C语言特殊符号意义
  6. 大数定律和中心极限定理
  7. CRM系统创建营销活动
  8. 中大计算机学院不及格,大学要求越来越严格 | 学渣可能无法从中大毕业了
  9. Andorid 创建相册或文件夹
  10. 音乐flac怎么转为mp3?