量化

  • 北京大学R语言教程(李东风)第7章: R向量下标和子集

    在R中下标与子集是极为强大的功能,需要一些练习才能熟练掌握,许多其它语言中需要多个语句才能完成的工作在R中都可以简单地通过下标和子集来完成。 7.1 正整数下标 对向量x, 在后面加方括号和下标可以访问向量的元素和子集。 设x <- c(1, 4, 6.25)。x[2]取出第二个元素;x[2] <- 99修改第二个元素。x[c(1,3)]取出第1…

    2023年10月26日
    19000
  • 北京大学R语言教程(李东风)第6章:字符型数据及其处理

    字符型向量 字符型向量是元素为字符串的向量。字符串在程序中写成用两个双撇号包围或者用两个单撇号包围的内容。如 s1 <- c(‘abc’, ”, ‘a cat’, NA, ‘李明’) 注意空字符串并不能自动认为是缺失值,字符型的缺失值仍用NA表示。 字符串内容一般从文件、网络、数据库获得,在程序中直接用双撇号或者单撇号写出只是输入字符串的办法之一。 …

    2023年10月24日
    15800
  • 北京大学R语言教程(李东风)第5章:逻辑型向量及其运算

    逻辑型向量与比较运算 逻辑型是R的基本数据类型之一,只有两个值TRUE和FALSE,缺失时为NA。逻辑值一般产生自比较,如 sele <- (log10(15) < 2); print(sele) ## [1] TRUE 向量比较结果为逻辑型向量。如 c(1, 3, 5) > 2 ## [1] FALSE TRUE TRUE (1:4) &…

    2023年10月24日
    24900
  • 我们都是宽客,系统投资的新时代

    关键点 系统或算法方法对投资决策施加冷静的纪律,但也带来了某些挑战。 系统性策略可能无法快速适应市场的结构性变化。 算法方法可能会导致投资经理毫无根据或夸大地声称采用最新的人工智能或机器学习工具。 由缺乏经验的研究人员进行的回测可能会过度拟合,导致令人失望的现场表现。 抽象的 在这个计算成本低廉、数据庞大、系统或算法驱动的时代,投资越来越受欢迎。系统性策略出…

    2023年10月23日
    8800
  • 北京大学R语言教程(李东风)第4章: 数值型向量及其运算

    数值型向量 向量是将若干个基础类型相同的值存储在一起,各个元素可以按序号访问。如果将若干个数值存储在一起可以用序号访问,就叫做一个数值型向量。 用c()函数把多个元素或向量组合成一个向量。如 marks <- c(10, 6, 4, 7, 8) x <- c(1:3, 10:13) x1 <- c(1, 2) x2 <- c(3, 4…

    2023年10月23日
    7600
  • 北京大学R语言教程(李东风)第3章: 常量与变量

    常量 常量是指直接写在程序中的值,包括数值、字符串等。 数值型常量包括整型、单精度、双精度等,一般不需要区分。写法如123, 123.45, -123.45, -0.012, 1.23E2, -1.2E-2等。为了表示123是整型,可以写成123L。 字符型常量用两个双撇号或两个单撇号包围,如”Li Ming”或’Li Ming’。字符型支持中文,如”李明”…

    2023年10月22日
    13700
  • 北京大学R语言教程(李东风)第2章:R语言入门运行样例

    启动R软件后进入命令行界面,每输入一行命令,就在后面显示计算结果。可以用向上和向下箭头访问历史命令;可以从已经运行过的命令中用鼠标拖选加亮后,用Ctrl+C复制后用Ctrl+V粘贴(这是MS Windows下的快捷键组合),粘贴的目标是当前命令行。 如果使用RStudio软件,有一个“Console窗格”相当于命令行界面。在RStudio中,可以用New F…

    2023年10月20日
    36900
  • 北京大学R语言教程(李东风)第1章: R语言介绍

    R的历史和特点 R的历史 R语言来自S语言,是S语言的一个变种。S语言由Rick Becker, John Chambers, Alan Wilks等人在贝尔实验室开发,著名的C语言、Unix系统也是贝尔实验室开发的。 S语言第一个版本开发于1976-1980,基于Fortran;于1980年移植到Unix, 并对外发布源代码。1984年出版的“棕皮书” (…

    2023年10月19日
    71500
  • 彭博:量化公司 Man Numeric 的目标是到 2025 年信贷交易实现 100% 电子化

    在其他金融市场出现多年之后,电子交易革命终于降临到公司债券上。 全球最大的上市对冲基金管理公司曼恩数字 (Man Numeric) 的量化投资部门就是这么认为的。该公司 90% 的高收益和投资级交易是通过数字平台执行的,预计两年内将达到 100%。一年前,其垃圾债券交易中只有约三分之一是电子化的,其余的则通过电话或消息平台进行。 资金管理者的转变表明,电子平…

    2023年9月9日
    14100
  • 北京大学Julia语言讲义第26章: 概率统计应用

    概率论例子 取帽子问题 问题介绍与推导 设 n个人都戴了帽子参加聚会,聚会时摘下帽子弄乱了,散会时随机抽取一顶。问:所有人都没有取到自己的帽子的概率是多少? 令 Ai表示第 i个人取对自己的帽子,要求概率的事件为 B=⋂i=1nAic. 由概率论的Jordan公式, P(B)=1−P(Bc)=1−P(⋃i=1nAi)=1−[∑iP(Ai)−∑i<jP(…

    2023年9月7日
    18200
  • 北京大学Julia语言入门讲义第25章: Julia编程示例–动态规划

    动态规划(dynamic programming)不完全是数学规划(最优化)问题的算法。它能解决如下问题:问题可以分解为子问题,子问题多次重复出现,就可以将已经出现的子问题记住,从而大大减小计算量。 Fibonacci数列 Fibonacci数列满足 F0=F1=1, Fn=Fn−1+Fn−2, n=2,3,…。 显然,可以写成简单的递归函数: functi…

    2023年9月6日
    10600
  • 北京大学Julia语言入门讲义第24章: Julia编程示例–单词和文本

    词典中单词的练习 二分法查词 设dict是一个字符串数组,包含了许多单词,按字典序排列。为了检查字符串word是否在dict中,可以用word in dict的写法,但是这样会进行线性搜索,效率较低。因为词典dict是按升序排序的,可以用二分法搜索。程序如下: function indict(dict, word) a = 1 b = length(dict…

    2023年9月6日
    5000
  • 北京大学Julia语言入门讲义第23章: Julia编程示例–递归趣例

    23.1 汉诺塔问题 设有三根柱子A, B, C,有大小依次为1,2,…,𝑛的𝑛个空心圆盘,在A柱子上依次从低向上穿了𝑛,𝑛−1,…,1大小的圆盘。任务是要把这𝑛个圆盘移动到C柱子上,仍按照从低向上越来越小的次序。移动的要求为: 每次仅移动一个圆盘到另一个柱子上; 每次的移动,都不能使得增加一个圆盘的柱子上的大圆盘压在小圆盘上。 这个问题是典型的递归问题: …

    2023年9月4日
    14800
  • 北京大学Julia语言入门讲义第22章: Julia编程示例–自然数处理

    在Julia中用Int64保存整数,如果需要许多位的整数就用BigInt类型。 从整数值拆分各个数字 编写一个函数,从一个正整数如12345,拆分成各个数字的数组[1,2,3,4,5]。 输入: n: 要拆分的值。 base: n的进制。 ndigits: 输出的位数,不足时在左边添加0,超过时出错。 function todigits(n, base = …

    2023年9月4日
    3800
  • 北京大学Julia语言入门讲义第21章: Julia编程示例–科学计算问题

    用迭代计算平方根 求某个正数 x的平方根,相当于求解方程 f(u)=u2−x=0。利用一阶泰勒展开式 f(u)=f(u0)+f′(u0)(u−u0)+o(u−u0),其中 f′(u)=2u,令 f(u)=0得 u≈u0−f(u0)f′(u0), 将其作为迭代公式 un=un−1−f(un−1)f′(un−1)=un−1−un−12−x2un−1=12(un−…

    2023年9月2日
    16900
  • 北京大学Julia语言入门讲义第20章: Julia统计图形—Gadfly

    介绍 Julia语言没有内建作图能力,作图需要通过扩展包提供,因为Julia语言的历史还比较短,现在有多种作图用的扩展包但是没有一个占绝对优势的包。比较常用的有Gadfly, Plots, PyPlot包。Julia还在快速发展阶段,功能的兼容性不够稳定,作图功能尤其如此。本文演示Gadfly包作图。 本文作者先安装了Anaconda3,然后安装Julia1…

    2023年9月2日
    9000
  • 北京大学Julia语言入门第19章: Julia统计图形–Plots库

    介绍 Julia语言没有内建作图能力,作图需要通过扩展包提供,因为Julia语言的历史还比较短,现在有多种作图用的扩展包但是没有一个占绝对优势的包。比较常用的有Plots, Makie, Gadfly, PyPlot包。其中Makie出现较晚,功能比较强大,后端安装容易。 本文演示Plots包。参见: https://docs.juliaplots.org/…

    2023年9月1日
    36000
  • 北京大学Julia语言入门讲义第18章: Julia程序效率介绍

    Julia的语言特点 Julia语言是一种历史很短的计算机语言,公开发布于2012年。其设计理念就是希望兼有Python、R、Matlab这样的动态语言的易用性,以及C、C++、Java这样的静态语言的运行速度。所以Julia很适合用来做统计和金融计算。 Julia语言的特点有: 动态语言; 使用基于LLVM的动态编译技术,可以动态生成高效的运行代码; 不需…

    2023年8月30日
    25800
  • 北京大学Julia语言入门讲义第17章: 离散事件模拟SimJulia

    对于离散事件系统模拟,比如排队系统的模拟,SimJulia包可以很容易地建模进行模拟。 一般的独立样本抽样、重要性抽样等可以直接利用Julia的随机数发生器模拟。 贝叶斯推断问题一般使用MCMC,Julia的Stan包调用Stan程序库进行MCMC计算,Stan程序会将模型转换为C++然后编译成本地二进制代码运行。 Julia的Mamba包是纯Julia语言…

    2023年8月29日
    13600
  • 北京大学Julia语言入门讲义第16章: 随机模拟

    介绍 在用数学模型, 包括概率统计模型处理实际应用中的问题时,我们希望建立的模型能够尽可能地符合实际情况。但是,实际情况是错综复杂的, 如果一味地要求模型与实际完全相符,会导致模型过于复杂, 以至于不能进行严格理论分析,结果导致模型不能使用。所以,实际建模时会忽略许多细节, 增加一些可能很难验证的理论假设,使得模型比较简单,可以用数学理论进行分析研究。 这样…

    2023年8月28日
    15300
  • 北京大学Julia语言入门讲义第15章: 统计计算

    这一部分介绍如何靠自己编写Julia程序进行定制化的统计计算。从自己编写程序作统计计算的角度简单介绍Julia中与统计计算编程有关的功能,如向量、矩阵计算,最优化,随机模拟,并行计算等。 Julia比较适合用作数值计算,编程既有Python、R、Matlab这样的语言的简洁,又有C++这样的编译语言的运行效率。统计数据分析、作图需要用到许多复杂的算法,有些算…

    2023年8月28日
    31400
  • 北京大学Julia语言入门讲义第14章: 统计学习介绍

    这一部分介绍一些机器学习(统计学习)方法。 参考: McNicholas and Tait(2019) Data Science Using Julia, CRC Press. Jose Storopoli, Rik Huijzer, Lazaro Alonso(2022) Julia Data Science. https://cn.julialang.o…

    2023年8月27日
    10700
  • 弥合基本面与量化的鸿沟

    如今,大多数大型主动基金管理公司都拥有基本面和量化投资团队。从历史上看,这两个群体一直处于不同的孤岛,并且有充分的理由:他们对投资流程有不同的方法,并且使用不同的日常语言。 分歧的根源在于各自的教育基础。基本面投资者研究经济学并学习自下而上的投资过程,旨在确定单一股票的未来价值。量化分析师学习数学和工程学,并从大量市场数据开始,采用自上而下的方法进行投资决策…

    2023年8月26日
    13000
  • 北京大学Julia语言入门讲义第13章: 基本统计功能

    这一部分介绍描述统计、估计、置信区间、假设检验和一些模型。 参考: McNicholas and Tait(2019) Data Science Using Julia, CRC Press. Jose Storopoli, Rik Huijzer, Lazaro Alonso(2022) Julia Data Science. https://cn.jul…

    2023年8月26日
    21200
  • 北京大学Julia语言入门讲义第12章: Makie包作图

    这一部分介绍用Julia的Makie包作图方法。 参考: Jose Storopoli, Rik Huijzer, Lazaro Alonso(2022) Julia Data Science. https://cn.julialang.org/JuliaDataScience/ Makie: https://makie.juliaplots.org/sta…

    2023年8月25日
    30200
  • 北京大学Julia语言入门讲义第11章: 数据框

    统计数据分析 Julia比较适合用作数值计算,编程既有Python、R、Matlab这样的语言的简洁,又有C++这样的编译语言的运行效率。统计数据分析、作图需要用到许多复杂的算法,有些算法耗时很多,比如MCMC等。大量数据的分析、计算、测试都需要易用的编程和高效的运行效率,Julia在这两点都很适合。 Julia用作统计数据分析,缺点是其问世时间还比较短,许…

    2023年8月24日
    10000
  • 北京大学Julia语言入门讲义第10章: 泛型编程和其它内容

    方法 Julia的函数能够针对不同的自变量类型通过即时编译产生高效代码,不需要声明自变量类型。 函数可以声明自变量类型和返回值类型,这可以限定能使用的自变量类型,避免错误的输入,使得程序意图更明显;同一个函数可以有不同类型的自变量,这其实是多个函数共用同一个函数名,称这些函数为该函数名的“方法”(methods)。这种做法称为“多重派发”(multiple …

    2023年8月23日
    15600
  • 北京大学Julia语言入门讲义第9章: 类型系统

    程序中的常量和变量都有类型,比如,常数108的类型为Int64。函数typeof()可以返回常量或变量的类型,如 变量的类型由其中保存的值的类型决定,Julia变量实际是“绑定”到了某个保存了值的地址。如 x = 108; typeof(x) ## Int64 用isa运算符可以查看某个对象是否属于某个类型,如: 函数typemax()可以求一个数值类型能保…

    2023年8月22日
    18500
  • 北京大学Julia语言入门讲义第8章: 作用域

    变量的作用域是某个变量可见的范围。同名的变量使得问题变得复杂,变量作用域使得同名的不同变量能够区分开来。 变量作用域都是某些程序结构的范围内,比如一个函数定义范围,而不是任意的一段程序行的范围。 有两种主要的作用域: 全局作用域 局部作用域,可以嵌套,分为: 软局部作用域 硬局部作用域 全局作用域适用于模块(module)内,baremodule内,或者在命…

    2023年8月21日
    18200
  • 北京大学Julia语言入门讲义第7章: 模块

    前面的例子都是相当于在命令行直接运行的。这样,变量和函数属于命令行对应的名字空间,称为Main模块。如果要写比较长的程序,所有变量和函数都在同一个名字空间中就很容易发生名字冲突。 Julia使用模块来区分名字空间,不同模块的同名变量、函数没有关系,不会发生冲突。 在一个模块内,可以有模块本身的全局变量,不同模块的全局变量即使同名也没有关系。 在模块内,可以控…

    2023年8月20日
    21200
客服
客服
关注订阅号
关注订阅号
分享本页
返回顶部