跳转至

研究笔记

我开发的Python包——Portfolio Sorting排序法

我开发了一个Python包,叫做py_empirical_fin 这是PyPi项目地址 。我希望能够通过这个包,以简单几行代码就能实现常用的实证分析技术。据我所知,Python中还没有较为完善的用于实证资产定价研究的包。

在这篇文章中,我将介绍这个包的第一个模块sorting,该模块用于实现Portfolio Sorting也就是排序法。 主要功能包括独立和序贯排序,支持计算任意因子模型的alpha,能够以美观的HTML表格输出结果,并且提供将结果导出到word的功能。

输出效果:

基于BERT大语言模型的启发式分词方法

经济政策不确定性与企业数据资产配置这篇论文中, 我们使用基于BERT大语言模型的方法,对研究报告和政策文件进行启发式分词, 然后筛选出与数据资产相关的术语,从而构建了一个数据资产术语词典。 现在对基于BERT的启发式分词方法进行介绍。

公司地址智能解析(基于JavaScript接口)

在研究当中可能需要用到公司地址信息,尽管很多数据库都提供这一数据,但其对公司所处行政区划的细分可能不符合我们的要求。例如,我们想获取省、市、区三级行政区划,但CSMAR数据库没有相应的细分数据,只能自行构建。

这篇文章介绍如何部署JavaScript接口,从而在Python中调用接口进行公司地址的智能解析。

graph TD
  A(输入:广东省深圳市福田区益田路5023号平安金融中心B座);
  A --> B(解析);
  B --> C(省份:广东省);
  B --> D(城市:深圳市);
  B --> E(城区:福田区);
  B --> F(邮政编码:440304);
  B --> G(...);

Variance Ratio Test and Filter Rule

Do stock prices follow random walk over day and night? –– evidence from Chinese stock market 这篇论文中,我们使用了修改版的Variance Ratio Test和Filter Strategy分别在统计上和经济上检验了日内时段和隔夜时段收益率的随机游走性质。 现在我来对这两种方法进行介绍并提供相应的Python代码。

\[VR^{ND} = \frac{\text{Var}\left[ R^{CC}_t \right]}{\text{Var}\left[ R^N_t \right] + \text{Var}\left[ R^D_t \right]}\]
\[VR^{DN} = \frac{\text{Var}\left[ R^{OO}_{t+1} \right]}{\text{Var}\left[ R^D_t \right] + \text{Var}\left[ R^N_{t+1} \right]}\]

CoinMarketCap加密货币行情爬取

The Overall And Extremely Low Return Spillovers Among Cryptocurrencies and Stock Markets: Evidence from the COVID-19 这篇论文中,我们探究了COVID-19疫情期间加密货币与股票市场之间的溢出效应。

我们使用的加密货币历史行情数据来源于 CoinMarketCap ,该站提供了丰富的加密货币的行情数据,现在介绍如何将这些数据爬取下来。

上市公司定期报告爬取

经济政策不确定性与企业数据资产配置这篇论文中, 我们利用构建的数据资产术语词典, 统计了上市公司年报中数据资产相关术语的词频, 据此构造了一个度量数据资产配置水平的指标。

在这里我将展示从巨潮资讯网爬取上市公司定期报告的代码,我为这套代码额外添加了用户交互, 读者可以直接使用我的代码进行爬取,也可以在此基础上进行修改。

文本相似度——利文斯顿编辑距离

管理层回复模板化的股价效应——基于“上证 e 互动”的实证研究这篇论文中, 我们使用利文斯顿编辑距离来度量投资者互动平台上公司管理层回复的模板化程度, 现在对这一方法进行介绍。

\[Sim\_Lev = 1 - [LEV(TEXT_1, TEXT_2) / max(Len(TEXT_1), Len(TEXT_2))]\]