Finology 大数据金融

通过大数据以量化金融

基金规模、净值

基金有A类和C类,分析数据时有时候会迷惑。

以下是通过API获取到的数据

| SEC_NAME | UNIT_TOTAL | UNIT_FUNDSHARE_TOTAL | FUND_FUNDSCALE | PRT_NETASSET | PRT_FUNDNETASSET_TOTAL | PRT_STOCKVALUE
– | —– | —– | —– | —– | —- | —- | —
920002.OF | 中金精选A | 2.118298e+08 | 22232.232524 | 4.696938e+08 | 4.696938e+08 | 4.928548e+08 | 4.407136e+08
920922.OF | 中金精选C | 1.049249e+07 | NaN | 2.316105e+07 | 2.316105e+07 | 4.928548e+08 | 4.407136e+08

通过这个数据,我们就能很清晰的知道那些变量代表什么意思了。

UNIT_TOTAL 基金份额,单位为份
UNIT_FUNDSHARE_TOTAL 基金份额(合计),比如A类和C类的份额数之和,一般合计到A类上面,C类上为0,单位为份
FUND_FUNDSCALE 基金规模
PRT_NETASSET 基金资产净值,这个值和基金规模是一个意思。
PRT_FUNDNETASSET_TOTAL 基金资产净值(合计)
PRT_STOCKVALUE 股票市值,这个值A类和C类相同

资产配置里面的股票占比公式:PRT_STOCKVALUE / PRT_FUNDNETASSET_TOTAL

所以在统计基金时,为了不统计重复数值,需要把C类基金去掉,也就是UNIT_FUNDSHARE_TOTAL为NaN的行,同时,用合计值来进行计算。

分行业市值

分行业市值,用申万,中信行业分类是不行的,只能用证监会行业。

1
2
3
4
['农、林、牧、渔业', '采矿业', '制造业', '电力、热力、燃气及水生产和供应业', '建筑业', '批发和零售业',
'交通运输、仓储和邮政业', '住宿和餐饮业', '信息传输、软件和信息技术服务业', '金融业', '房地产业',
'租赁和商务服务业', '科学研究和技术服务业', '水利、环境和公共设施管理业', '居民服务、修理和其他服务业',
'教育', '卫生和社会工作', '文化、体育和娱乐业', '综合']

环境介绍

用户名:1***81

BrokerID统一为:9999

产品名称:即APPID,默认的 APPID 为 simnow_client_test

授权编码:认证码为 0000000000000000(16个0)

7x24环境

交易前置:182.254.243.31:40001
行情前置:182.254.243.31:40011

特点:全天候运行,推荐用于开发测试,当然,也有一些时间无服务。

交易时段环境

提供了三组可供使用。

交易前置:182.254.243.31:30001
行情前置:182.254.243.31:30011

交易前置:182.254.243.31:30002
行情前置:182.254.243.31:30012

交易前置:182.254.243.31:30003
行情前置:182.254.243.31:30013

特点:只在交易时段开放,更接近实盘

下载安装包。注意,2.3.0和2.4.0在Ubuntu上安装不成功,2.2.0可以正常安装。

1
2
$ sudo wget https://github.com/vnpy/vnpy/archive/refs/tags/2.2.0.zip
$ sudo unzip 2.2.0.zip

安装vnpy

1
/usr/local/vnpy-2.2.0$ sudo bash install.sh

如果我们安装的anaconda是3.8版本的,然后又想用python3.7,可以通过如下方法解决。

1
2
$ sudo conda search --full --name python
$ sudo conda install python=3.7.6

安装过程中,如果遇到如下错误,那就重新安装一下Anaconda,我是用的miniconda。

1
ImportError: cannot import name 'InvalidSchemeCombination' from 'pip._internal.exceptions' (/usr/local/miniconda3/envs/py37/lib/python3.8/site-packages/pip/_internal/exceptions.py)
0%