• Posts tagged "基金"

Blog Archives

2023 R语言开发者日:用AI选基金构建自己的投资组合

跨界知识聚会系列文章,“知识是用来分享和传承的”,各种会议、论坛、沙龙都是分享知识的绝佳场所。我也有幸作为演讲嘉宾参加了一些国内的大型会议,向大家展示我所做的一些成果。从听众到演讲感觉是不一样的,把知识分享出来,你才能收获更多。

关于作者

  • 张丹,数据分析师/程序员/Quant: R,Java,Nodejs
  • blog: http://fens.me
  • email: bsspirit@gmail.com

转载请注明出处:
http://blog.fens.me/meeting-r-dev-20230617

前言

2023年的金融市场,一言难进。

量化投资大家都不陌生了,就是程序来做股票基金等的投资策略。

在R语言中开发者社区中,不仅有大量统计学和机器学习的算法支撑,还内置了多种用于指标计算和量化投资的策略算法,同时我们可以结合个人的行业知识,把自己熟悉的其他领域的算法模型借鉴过来,与基金投资组合的业务目标结合起来,形成新的策略思路,创造属于自己的交易机会。

借助R语言的能力,我们自己可以轻松地构建各种投资组合的策略。从零起步,开始构建自己的投资组合。在瞬息万变金融市场,你要不要来自己试一下呢?

本次分享不构成任何投资建议,仅从技术角度交流!

目录

  1. 我分享的主题:用AI选基金,构建自己的投资组合
  2. 会议体验和照片分享

1. 我分享的主题:用AI选基金,构建自己的投资组合

AI技术继续引领科技创新,R语言机器学习作为可落地的技术,将帮我们利用数据向着智能化的方向前进。在金融领域,R语言也有着丰富第三方包支持,金融数据也是比较容易获得。那么,我们可以利用R语言做一些数据分析,帮助我们一手了解金融市场的情况。

本次分享的PPT:http://doc.fens.me/用AI选基金构建自己的投资组合-张丹.pdf

我主要为分三个部分进行介绍:

  • 基金市场总体情况
  • 基金基本投资策略
  • 投资策略:资本资产定价模型

FOF的概念,基金中的基金。

基金净值计算举例:

收益率曲线的详细系数。

2. 会议体验和照片分享

本次会议官方报名页:https://www.huodongxing.com/event/8706770141611

活动日志:

2.1 会议主题

本次活动由 3位MVP和一位外员参加:张丹、谢佳标、任坤、晁亚伟 一起作为分享嘉宾。

晁亚伟,主题:用RMarkdown实现自动化报告模板,实现高效文档撰写。

R语言应用者,北京青萌数海科技有限公司开发工程师。R语言新人,日常工作R、Python、Vue都有涉及。经常使用RShiny和Rmarkdown技术。

自动化办公已经家喻户晓,就是用程序来简化日常工作中重复的数据处理工作,简化工作过程。R语言社区已经有很多丰富的包来实现文档中的各种功能,各种指标的计算以及图表格式的编写,以及文档格式的设定,所以我们可以通过Rmarkdown的功能和我们要实现的业务逻辑进行结合,实现上传,生成,下载等一系列操作。借助R语言的这一能力,我们自己可以轻松地构建各种自动化报告模板。

任坤,主题:R 语言的生态系统现状于展望。

微软MVP,就职于国内顶尖量化对冲基金。vscode-R 和 R Language Server 项目的主要维护/开发者,著有《Learning R Programming》,中文版为《R语言编程指南》。

R语言经过多年的发展,从一个在统计学术圈流行的数据分析、统计计算和建模以及可视化的工具,逐渐成长为了一个有更多开发者、开源贡献者和许多开源扩展包的生态。本次分享主要介绍R语言自身的发展、开发环境的优化,以及其在数据处理、统计建模、机器学习、数据可视化、报告展示等多个方面形成的最受欢迎的工具集,以及近期最新的发展动态,帮助用户和开发者更全面地了解R开源社区和众多开源项目的图景和巨大的发展潜力。

谢佳标,主题:如何使用 R 语言进行数据科学

微软MVP,资深数据挖掘专家。著有《R语言与数据挖掘》、《R语言游戏数据分析与挖掘》、《Keras深度学习:入门、实践与进阶》、《R语言数据分析与挖掘(微课版)》、《深度学习入门到精通:基于Tensorflow2》(2023年下半年出版)

数据科学涵盖数据处理、数据分析、数据挖掘、数据可视化,R语言均可轻松实现。本次分享主要介绍如何使用R语言进行数据处理、数据分析、数据建模及数据可视化各环节。包含以下内容:
1)利用R语言进行数据处理
2)利用R语言进行数据分析与挖掘
3)利用R语言进行可视化
4)利用R语言进行深度学习

张丹,主题:用 AI 选基金,构建自己的投资组合。【视频回看

微软MVP,R语言实践者,北京青萌数海科技有限公司CTO。10年以上互联网应用架构经验,在R、大数据、数据分析等方面有深厚的积累。精通量化投资交易策略,熟悉中国金融二级市场、交易规则和投研体系。 熟悉数据学科方法论,在海关、外汇等监管科技领域均有落地项目。

在R语言中开发者社区中,不仅有大量统计学和机器学习的算法支撑,还内置了多种用于指标计算和量化投资的策略算法,同时我们可以结合个人的行业知识,把自己熟悉的其他领域的算法模型借鉴过来,与基金投资组合的业务目标结合起来,形成新的策略思路,创造属于自己的交易机会。

2.2 相关照片

现场大合照

还是线下会议好啊,有互动性,能看到大家的反应,专注在技术本身。微软技术直通车,每季度都带来新的技术分享。

转载请注明出处:
http://blog.fens.me/meeting-r-dev-20230617

基金会计系统 – 组合净值,单位净值,份额

用IT技术玩金融系列文章,将介绍如何使用IT技术,处理金融大数据。在互联网混迹多年,已经熟练掌握一些IT技术。单纯地在互联网做开发,总觉得使劲的方式不对。要想靠技术养活自己,就要把技术变现。通过“跨界”可以寻找新的机会,创造技术的壁垒。

金融是离钱最近的市场,也是变现的好渠道!今天就开始踏上“用IT技术玩金融”之旅!

关于作者:

  • 张丹(Conan), 程序员Java,R,PHP,Javascript
  • weibo:@Conan_Z
  • blog: http://blog.fens.me
  • email: bsspirit@gmail.com

转载请注明出处:
http://blog.fens.me/finance-fund-accounting/

fund-accounting

前言

大家平时都在做投资理财,但大部分人都只是管自己的钱。如何才能帮别人管钱呢?那么我们需要有一套基金会计的管理办法。

也许哪一天,你就会拿到100W,1000W的投资,用科学的办法规范管理,才能越做越大。

注:本人金融入门级,如果文章描述不对或者不准确的地方,还请专家指点。

目录

  1. 基金会计系统介绍
  2. 资产核算
  3. 净值核算
  4. 投资人份额计算
  5. 计算案例

1. 基金会计系统介绍

本文中所说的基金会计系统,是指用于私募基金,进行金融交易时的会议记账系统,包括资产核算,基金净值核算,基金份额核算等核心计算功能。

为了展示基金会计系统的全貌,我将从下面几个部分,介绍整个系统的业务逻辑。

  • 1). 金融交易
  • 2). 交易记录
  • 3). 持仓记录
  • 4). 投资人
  • 5). 资金进出
  • 6). 投资人份额
  • 7). 交易员
  • 8). 基金净值
  • 9). 基金单位净值

1). 金融交易
金融交易是指,金融产品或者金融衍生品的交易。以中国市场为例,我们能够交易的品种。

金融交易包括:

  • 股票:是股份证书的简称,是股份公司为筹集资金而发行给股东作为持股凭证并借以取得股息和红利的一种有价证券。
  • 期货:与现货完全不同,现货是实实在在可以交易的货(商品),期货主要不是货,而是以某种大宗产品如棉花、大豆、石油等及金融资产如股票、债券等为标的标准化可交易合约。
  • 国债现货:是指投资者根据合同商定的付款方式买卖国债,在一定时期内进行券款的交割,实现债券所有权的转让。
  • 可转换债券:可转换债券是债券的一种,它可以转换为债券发行公司的股票,通常具有较低的票面利率。从本质上讲,可转换债券是在发行公司债券的基础上,附加了一份期权,并允许购买人在规定的时间范围内将其购买的债券转换成指定公司的股票。
  • 新质押回购:逆回购,是指主动借出资金,获取债券质押的交易。
  • 比特币:一种虚拟货币,由计算机生成的一串串复杂代码组成,非政府发行的,可以通过比特币交易平台,与人民币,美元,欧洲进行兑换。
  • 国债回购:正回购,是一方以一定规模债券作抵押融入资金,并承诺在日后再购回所抵押债券的交易行为。
  • 融资:指为支付超过现金的购货款而采取的货币交易手段,或为取得资产而集资所采取的货币手段。
  • 融券:出借证券,证券公司将自有股票或客户投资账户中的股票借给做空投资者。投资者借证券来出售,到期返还相同种类和数量的证券并支付利息。
  • 期货负债:期货保证金,在期货市场上,交易者只需按期货合约价格的一定比率交纳少量资金作为履行期货合约的财力担保,便可参与期货合约的买卖,这种资金就是期货保证金。

上面的金融交易:可分为 资产 和 负债 两个类别

  • 资产类:股票,期货,国债现货,可转换债券,新质押回购,比特币
  • 负债类: 国债回购,融资,融券,期货负债

2). 交易记录

交易记录,是指在金融交易所中达成交易的有关资料的文字性记载。

期货的交易记录


 日期      时间      合约  买卖  开平   成交价格  数量   手续费    投保  成交号

 20140217  22:49:34  ag1406  卖出  平仓   4325.000     2     9.73    投机    4404
 20140217  22:50:31  ag1406  买入  开仓   4328.000     2     9.74    投机    4541
 20140217  23:51:57  ag1406  卖出  平今   4316.000     2     0.00    投机    6464
 20140217  01:44:08  ag1406  买入  开仓   4327.000     1     4.87    投机    7616
 20140217  01:49:50  ag1406  卖出  平今   4326.000     1     0.00    投机    7632
 20140218  21:00:37  au1406  买入  开仓    261.000     1    15.00    投机     214
 20140218  21:39:07  au1406  卖出  平今    260.900     1     0.00    投机    2441
 20140218  21:40:51  au1406  买入  开仓    261.000     1    15.00    投机    2469
 20140218  21:41:38  au1406  卖出  平今    261.000     1     0.00    投机    2556
 20140218  21:41:47  au1406  卖出  开仓    261.000     1    15.00    投机    2561
 20140218  21:45:33  au1406  买入  平今    260.950     1     0.00    投机    2632
 20140218  22:10:32  au1406  买入  开仓    261.000     1    15.00    投机    3033
 20140218  23:01:03  au1406  卖出  平今    261.000     1     0.00    投机    3463
 20140220  10:21:02  TF1403  买入  开仓     91.904     1     4.50    投机   41511
 20140220  10:22:03  TF1403  卖出  平今     91.902     1     0.00    投机   41512

证券的交易记录


币种          证券名称        成交日期              成交价格        成交数量        发生金额         资金余额         合同编号        业务名称                  手续费        印花税        过户费        结算费        证券代码        股东代码
          
人民币        民生银行        20140122000930        7.100           1200.00         -8527.39         -7528.24         911             证券买入(民生银行)        6.39          0.00          1.00          0.00          600016          A433244006        
人民币        R-001          20140122000931        7.320           -300.00         30006.02         22477.78         872             拆出购回(R-001)          0.00          0.00          0.00          0.00          131810          0155546324        
人民币        中鼎转债        20140122000932        117.500         -60.00          7042.95          29520.73         918             证券卖出(中鼎转债)        7.05          0.00          0.00          0.00          125887          0155546324        
人民币        民生转债        20140123000954        93.000          5.00            -4651.00         24869.73         940             证券买入(民生转债)        1.00          0.00          0.00          0.00          110023          A433244006        
人民币        民生转债        20140124001080        94.320          8.00            -7547.11         17322.62         987             证券买入(民生转债)        1.51          0.00          0.00          0.00          110023          A433244006        
人民币        民生银行        20140124001081        7.050           1000.00         -7056.29         10266.33         990             证券买入(民生银行)        5.29          0.00          1.00          0.00          600016          A433244006        
人民币        民生转债        20140124001082        93.950          5.00            -4698.50         5567.83          996             证券买入(民生转债)        1.00          0.00          0.00          0.00          110023          A433244006        
人民币        民生转债        20140124001083        94.520          5.00            -4727.00         840.83           1018            证券买入(民生转债)        1.00          0.00          0.00          0.00          110023          A433244006        
人民币        民生转债        20140124001084        94.660          10.00           -9467.89         -8627.06         1025            证券买入(民生转债)        1.89          0.00          0.00          0.00          110023          A433244006        

比特币交易记录:


交易 ID	  交易类型	    交易时间	       比特币	       人民币	 平均每比特币

6760639	  交易手续费	2013年12月17日 16:17:26	  ฿-0.00003000	   ¥0.00	  
6760638	  买入比特币	2013年12月17日 16:17:26	  ฿0.01000000	    ¥-41.00	  ¥4,100.00
6749278	  交易手续费	2013年12月17日 15:10:01	  ฿0.00000000	    ¥-0.13	  
6749277	  卖出比特币	2013年12月17日 15:10:01	  ฿-0.01000000	   ¥42.00	  ¥4,200.00
6690344	  交易手续费	2013年12月17日 09:51:43	  ฿-0.00000900	   ¥0.00	  
6690343	  买入比特币	2013年12月17日 09:51:43	  ฿0.00300000	    ¥-10.41	  ¥3,470.00
6684013	  交易手续费	2013年12月17日 09:33:23	  ฿-0.00003000	   ¥0.00	  
6684012	  买入比特币	2013年12月17日 09:33:23	  ฿0.01000000	    ¥-37.30	  ¥3,730.00
5278051	  卖出比特币	2013年12月07日 21:37:29	  ฿-0.01000000	   ¥50.09	  ¥5,009.00
5276581	  比特币充值	2013年12月07日 21:30:04	  ฿0.01000000	    ¥0.00	

3). 持仓记录

持仓记录,是指在金融交易中买入或者卖空(期货空投)时,持有的金融产品的记录。如果当日买入后,一直持有到收盘,根据收盘价对金融产品进行价值核算并记录。

通常情况,短线日内套利的操作,不进行持仓情况,持仓会反映在现金持有上。

证券的持仓记录: 部分数据


人民币: 余额:757.63  可用:36763.70  可取:757.63  参考市值:51183.93  资产:51183.93  盈亏:3119.30 
-------------------------------------------------------------------------------------------------------

证券名称        证券数量        可卖数量        成本价          浮动盈亏        盈亏比例(%)        最新市值         当前价          今买数量        今卖数量        证券代码        股东代码          成本金额         备注        
民生银行        3300            3300            7.078           898.50          3.84               24255.00         7.35            0               0               600016          A433244006        23356.50                     
新标准券        100             0               1000.000        0.00            0.00               100000.00        1000.000        0               0               888880          A433244006        100000.00                    

....

4). 投资人

从事投资活动时,需要有一定的资金来源,提供资金的人,称为投资人。公墓基金和私募基金,都会有投资人。

公募基金的募集对象是广大社会公众,即社会不特定的投资者。
而私募基金募集的对象是少数特定的投资者,包括机构和个人。

5). 资金进出

指投资人把资金 申购 和 赎回的过程。

  • 申购:买入基金,参与股份
  • 赎回:提取资金,退出股份

6). 投资人份额

当投资人申购后,就持有基金股份了。基金会按照投资人的申购量,与基金净值,计算投资人的持股份额。

只有当有投资人发生,申购 和 赎回操作的时候,份额才会有变化。

在本文第三部分:投资人份额计算,会讲到具体的计算公式。

7). 交易员

基金的投资交易操作,由交易员完成。会计系统要记录交易员的操作,报告交易员的业绩。

8). 基金净值

基金净值,即基金净资产,组合净值,是统计基金每日资产状况的报表,包括资产类,负债类。

在本文第二部分:资产核算,会讲到具体的计算公式。

9). 基金单位净值

基金净值,即基金单位净值,是每份基金单位的净资产价值,等于基金的总资产减去总负债后的余额再除以基金全部发行的单位份额总数。

  • 申购时,以当日(T日)净值进行计算。
  • 赎回时,以前一日(T-1日)净值进行计算。

在本文第四部分:净值核算,会讲到具体的计算公式。

2. 资产核算

注:以下所有类别计算,都以人民币作为单位进行结算。

总资产 和 总负债 的计算公式:


资产 = 现金 + 股票 + 国债现货 + 可转换债券 + 新质押回购 + 比特币 + 其它应收款
负债 = 国债回购 + 融资 + 融券 + 期货负债 + 其它应付款 

对于金融交易,为了降低风险,一般都需要进行投资组合,计算组合净值。


组合净值 = 资产 -  负债

3. 投资人份额计算

假设条件:

  • 2个投资人A,B
  • 成立日,A申购资金 42520.30元
  • 第二日,B申购资金 50000.00元,基金收益 499.85元
  • 第三日,基金收益 72.00元

基金总份额 = 投资人份额之和

成立日:


A申购资金 42520.30元
基金净值 = A申购资金 = 42520.30元

用户份额:
A用户份额 42520.30
基金总份额 = A用户份额 = 42520.30

第二日:


B申购资金 50000.00元
基金净值 = 成立日净值 + B申购资金 + 基金收益= 42520.30元 + 50000.00+ 499.85 = 93020.15 

收益率 = 基金收益 / 成立日基金净值 = 499.85/42520.30=1.18%
积累收益率 = (1+收益率)*成立日单位净值=(1+1.18%)*1=1.0118 

用户份额:
A用户份额 42520.30
B用户份额 = B申购资金/积累收益率=50000/1.0118=49419.05 

基金总份额 = A用户份额+B用户份额= 42520.30+ 49419.05=91939.35 

第三日:


基金净值 = 成立日净值 + 基金收益= 93020.15元 +  72.00  =  93092.15

收益率 = 基金收益 / 第二日基金净值 = 72/ 93020.15 =0.08%
积累收益率 = (1+收益率)*第二日单位净值=(1+0.08%)*1.0118 =1.0125 

用户份额:
A用户份额 42520.30
B用户份额 49419.05 

基金总份额 = A用户份额+B用户份额= 42520.30+ 49419.05=91939.35 

份额计算

  • 只有发生申购 和 赎回的时候,投资人份额计算需要重新计算。
  • 投资人份额,不进行标准化,只记录实际发生。

4. 单位净值核算

  • 成立日: 基金成立日,单位净值是1,所有投资人份额等于申购资金量
  • 清算日: 基金解散日,单位净值是0,所有资金按份额退还投资人
  • 一般结算日:非成立日和清算日的交易日。(比特币不休盘,24小时交易,每天都是交易日)

与上一步计算相同的假设条件:

  • 2个投资人A,B
  • 成立日,A申购资金 42520.30元
  • 第二日,B申购资金 50000.00元,基金收益 499.85元
  • 第三日,基金收益 72.00元

成立日:


单位净值 1 

第二日:


单位净值 = 基金净值/基金总份额=93020.15/91939.35=1.0118

第三日:


单位净值 = 基金净值/基金总份额=93092.15/91939.35=1.0125 

第三日结算时,基金单位净值为1.0125。也就是说,基金成立三天,每份额价格从1元涨到1.0125元。

5. 更复杂的计算案例

申购赎回事件


日期		事件

2014-2-10	A申购42520.30 	
2014-2-11	B申购50000
2014-2-12	无
2014-2-13	无
2014-2-14	C申购40000, D申购30000
2014-6-30	无
2014-7-01	D申购50000
2014-7-02	B计划全部赎回	 
2014-7-03	现金达到赎回要求
2014-7-04	B赎回50174.39 
2014-7-07	B申购100000.00
2014-7-08	A申购50000, D赎回30000
2014-7-09	计划全部赎回	 
2014-7-11	已清仓
2014-7-12	A赎回93817.31, B赎回100088.50, C赎回41076.38, D赎回51469.81

基金净值,收益,收益率,单位净值


日期	 	 T日组合净值 		T-1日组合净值 	 	净值变动 	 收益 	 	收益率 	 	累积收益率 	单位净值

2014-2-10	 42520.30 		-   	 		42520.30 	 -   	 	-   	 	1	 	1
2014-2-11	 93020.15 	 	42520.30 	 	50499.85 	 499.85 	1.18%		1.0118 		1.0118 
2014-2-12	 93092.15 	 	93020.15 	 	72.00 	 	 72.00 		0.08%		1.0125 		1.0125 
2014-2-13	 93055.78 	 	93092.15 	 	-36.37 	 	 -36.37 	-0.04%		1.0121 		1.0121 
2014-2-14	 162088.65 		93055.78 	 	69032.87 	 -967.13 	-1.04%		1.0016 		1.0016 
2014-6-30	 163853.98 		162088.65 	 	1765.33 	 1765.33 	1.09%		1.0125 		1.0125 
2014-7-01	 214187.65 		163853.98 	 	50333.67 	 333.67 	0.20%		1.0146 		1.0146 
2014-7-02	 214250.36 		214187.65 	 	62.71 	 	 62.71 		0.03%		1.0149 		1.0149 
2014-7-03	 214333.25 		214250.36 	 	82.89 	 	 82.89 		0.04%		1.0153 		1.0153 
2014-7-04	 165160.86 		214333.25 	 	-49172.39 	 1002.00 	0.47%		1.0200 		1.0215 
2014-7-07	 266161.10 		165160.86 		101000.24 	 1000.24 	0.61%		1.0277 		1.0277 
2014-7-08	 285960.99 		266161.10 		19799.89 	 -200.11 	-0.08%		1.0269 		1.0268 
2014-7-09	 286500.01 		285960.99 	 	539.02 	 	 539.02 	0.19%		1.0287 		1.0287 
2014-7-11	 286452.00 		286500.01 	 	-48.01 	 	 -48.01 	-0.02%		1.0286 		1.0286 
2014-7-12	 -   	 		286452	 	 	-286452 	 -   		0		0 		0

投资人份额,总份额


日期		 投资人A	 投资人B	 投资人C	 投资人D	 份额汇总

2014-2-10	 42520.30 	 -   	 	 -   	 	 -   	 	 42520.30 
2014-2-11	 42520.30 	 49419.05 	 -   	 	 -   	 	 91939.35 
2014-2-12	 42520.30 	 49419.05 	 -   	 	 -   	 	 91939.35 
2014-2-13	 42520.30 	 49419.05 	 -   	 	 -   	 	 91939.35 
2014-2-14	 42520.30 	 49419.05 	 39935.15 	 29951.36 	 161825.86 
2014-6-30	 42520.30 	 49419.05 	 39935.15 	 29951.36 	 161825.86 
2014-7-01	 42520.30 	 49419.05 	 39935.15 	 79232.13 	 211106.63 
2014-7-02	 42520.30 	 49419.05 	 39935.15 	 79232.13 	 211106.63 
2014-7-03	 42520.30 	 49419.05 	 39935.15 	 79232.13 	 211106.63 
2014-7-04	 42520.30 	 -   	 	 39935.15 	 79232.13 	 161687.58 
2014-7-07	 42520.30 	 97307.72 	 39935.15 	 79232.13 	 258995.30 
2014-7-08	 91210.77 	 97307.72 	 39935.15 	 50039.81 	 278493.45 
2014-7-09	 91210.77 	 97307.72 	 39935.15 	 50039.81 	 278493.45 
2014-7-11	 91210.77 	 97307.72 	 39935.15 	 50039.81 	 278493.45 
2014-7-12	 -   	 	 - 		  	 - 		  	 -		   	 -   

基金会计系统的核心业务及核算方法,已经被详细的列出来了。接下来,就可以从头开始做系统了,如果要是以后还能发个基金什么的,那就真是学有所用了。

转载请注明出处:
http://blog.fens.me/finance-fund-accounting/

打赏作者