首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

量化投资教程:用R语言打造量化分析平台

概述 和Python计算环境中的tushare包一样,在R中我们使用quantmod包接入第三方数据源,实现自定义量化分析平台的构建。...本文打算以陌陌的股票分析为背景,介绍如何通过quantmod包构建专属的量化分析平台。...什么是quantmod quantmod就是提供给宽客们使用的专业模块,Quantmod本身提供强大的数据接入能力,默认是雅虎财经的数据源,此外quantmod还以绘制专业的行情分析图表以及各种技术指标计算等功能著称...基于这个原理,我写了一个Quote函数来优化参数配置的体验。首先我们需要定义一个股票池序列,然后调用Quote函数获取某只股票的行情返回数据。...曲线addMACD() 效果 指标计算 参考官方文档,我们知道,利用quantmod和TTR包,我们可以快速计算常见指标,下面是对应的计算列表。

2.1K90

机器学习模型的变量评估和选择基于技术指标『深度解析』

简介 本文重点介绍机器学习模型中输入变量(预测因子)的选择,预处理以及评估的相关细节。所有的计算和实验将用R语言来实现。 输入数据 我们将采用11个指标(振荡器),在输入设置中不设优先级。...我们使用rminer::holdout() 函数进行数据分组,将数据集一分为二。使用caret::preProcess() 函数和method = c("spatialSign")做数据规范化。...所有在这个包中提供的方法被如下划分: RST 和 FRST的基本概念。在这一部分中我们可以观察四个不同的任务:不可分辨关系,上下近似,正域和差别矩阵。 离散化。它用于将物理数据转换成名称数据。...我们将使用和之前获得的数据一样的数据,但将其转换到包所使用的“DecisionTable”类中。...既然我们有的是连续的数值数据,我们将使用一个包中提供的特殊的离散化函数,来将其转换为标定数据。

1.7K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    《极限挑战》罗志祥遭套路“破产”,我们却看到了更大的危机

    4、在 R 语言中使用 SVM 的外汇策略构建规则:鉴于对特征和 SVM 的理解,先以 R 语言为例。选取欧元/美元货币对的一小时时间框架,可追溯到 2010 年。...指标为 MACD(12,26,9)和抛物线 SAR,默认设置为(0.02,0.2)。 首先,在 R 语言中加载必要的库,读取 EUR / USD 数据。...然后,使用「TTR」包中提供的各自功能计算 MACD 和抛物线 SAR。随后,从每个数据点的 SAR 值中减去收盘的 EUR / USD 价格。...将指标和类合并为一个称为模型数据的数据框,再将模型数据分成训练和测试数据。 然后,使用「e1071」包中的 SVM 功能并训练数据;通过预测函数进行预测,并绘制模式。这一过程准确度达到了 53%。...&(价格-特区)MACD > -0.0005 短期交易的准确率为 54%,长期交易的准确率为 50%。

    80730

    R︱mlr包挑选最适机器学习模型+变量评估与选择(案例详解)

    所有的计算和实验将用R语言来实现。 输入数据 我们将采用11个指标(振荡器),在输入设置中不设优先级。我们将从某些指标中抽取多个变量。然后我们将写一个函数形成17个变量的输入集。...所有在这个包中提供的方法被如下划分: RST 和 FRST的基本概念。在这一部分中我们可以观察四个不同的任务:不可分辨关系,上下近似,正域和差别矩阵。 离散化。它用于将物理数据转换成名称数据。...既然我们有的是连续的数值数据,我们将使用一个包中提供的特殊的离散化函数,来将其转换为标定数据。...所有在这个包中提供的方法被如下划分: RST 和 FRST的基本概念。在这一部分中我们可以观察四个不同的任务:不可分辨关系,上下近似,正域和差别矩阵。 离散化。它用于将物理数据转换成名称数据。...既然我们有的是连续的数值数据,我们将使用一个包中提供的特殊的离散化函数,来将其转换为标定数据。

    2.6K20

    空间单细胞|10x Visium数据分析、可视化与整合(1)

    将包括以下常见于空间数据分析的任务: 数据标准化 降维和数据聚类 发现空间变异性特征 与单细胞RNA测序数据的整合 处理多个样本切片 首先,将加载Seurat及其所需的其他包以进行本教程的操作。...,该数据集是利用Visium v1化学技术生成的。...数据集包括两组连续的前脑切片和两组(配对的)后脑切片。 您可以利用Seurat中的Load10X_Spatial()函数将其导入。...该函数能够读取spaceranger流程的输出结果,并生成一个包含点级表达数据和相应组织切片图像的Seurat对象。 此外,您还可以通过SeuratData包轻松获取数据,如下面的示例所示。...首先,需要对数据进行标准化处理,以校正不同数据点之间测序深度的差异。发现,空间数据集在分子计数或点上的变异可能非常显著,尤其是当组织中的细胞密度不同时。

    21910

    两个不同数据集:同一课题组同样的实验设计差异分析结果一致性却很差是为什么呢?

    数据芯片平台为:GPL8300 [HG_U95Av2] Affymetrix Human Genome U95 Version 2 Array 数据二:GSE35452 与上面同样的实验设计:这个数据集包括...数据芯片平台为:GPL570 [HG-U133_Plus_2] Affymetrix Human Genome U133 Plus 2.0 Array 简单的预处理数据并进行差异分析 第一个数据集的处理...批次效应可能导致数据不一致性,掩盖真实的生物学信号,增加噪声,从而影响差异分析结果的一致性。 3. 数据预处理和标准化 不同芯片数据的预处理和标准化方式可能不同。...不同的分析方法对数据的假设和处理方式不同,可能会影响最终的分析结果。 6. 基因注释和探针匹配问题 不同芯片平台的基因注释和探针匹配可能存在差异。...单独分析和结果对比:如果可能,先对每个数据集单独进行差异分析,然后对比结果,找出共同的差异基因。 通过以上方法,可以在一定程度上提高不同GEO芯片数据差异分析结果的一致性。

    7410

    R语言金融市场量化交易:布林带、价差策略、RSI交易策略,回测COMP 226|附代码数据

    如果有连续多日价格向同一方向移动的情况 每一天的方向与之前的变化不同,对该策略来说都是亏损的一天,所以这样的日子不应该有大的价格波动。...测试该策略 从现在开始,我们将重复使用实用工具脚本 "utilities.R "中的函数。在这种情况下,我们将使用。 getLogReturns(prices),从调整后的价格中计算出对数回报。...,然后将在我们的下一个交易策略示例中使用 图表系列 > library(quantmod) > getSymbols('AAPL') 这使用包中的BBands函数TTR quantmod在chartSeries...连续积分理论正是处理平稳的时间序列的线性组合,但我们不会去研究数学。 接下来我们将看到一个简单的基于布林线的价差交易策略想法。 例子:RSI策略 RSI是一个标准的指标,在TTR软件包中实现。...数据集的漂移可能导致良好的参数组合在样本内和样本外期间有所不同 ---- 本文选自《R语言金融市场量化交易:布林带、价差策略、RSI交易策略,回测COMP 226》。

    99100

    R语言金融市场量化交易:布林带、价差策略、RSI交易策略,回测COMP 226

    - 如果有连续多日价格向同一方向移动的情况- 每一天的方向与之前的变化不同,对该策略来说都是亏损的一天,所以这样的日子不应该有大的价格波动。...测试该策略从现在开始,我们将重复使用实用工具脚本 "utilities.R "中的函数。在这种情况下,我们将使用。- getLogReturns(prices),从调整后的价格中计算出对数回报。...BBands函数TTR quantmod在chartSeries中结合了xts和TTR功能策略代码我们将使用与相同的循环、收益和权益曲线计算改变的是位置向量的计算pos 的时间序列的线性组合,但我们不会去研究数学。接下来我们将看到一个简单的基于布林线的价差交易策略想法。例子:RSI策略- RSI是一个标准的指标,在TTR软件包中实现。...  - 数据集的漂移可能导致良好的参数组合在样本内和样本外期间有所不同  最受欢迎的见解1.R语言对S&P500股票指数进行ARIMA + GARCH交易策略2.R语言改进的股票配对交易策略分析SPY—TLT

    92120

    应用空间统计学分析空间表达数据

    为了致敬原作,文章部分内容我们将在下面复现 H&E图像辅助细胞聚类 首先,我们配置好演示用的R包和数据。...空间变异基因 至于空间信息,我们不妨理解为采样点,不同分辨率的技术,理解为一个采样点采到了多少个细胞。...这里我们用的方法是广义空间线性模型(generalized spatial linear models,GSLM),这一方法在单细胞转录组中的应用被封装在R包SPARK中,文章见: Shiquan Sun...我们知道单细胞数据分析过程中,落脚点往往是在某个基因集上面,这里我们也选一个基因集来做地理加权回归。...这里用的是R包sp, 在sp中定义了一个空间对象基础类Spatial,由两个solt 构成:bbox和proj4string, 在Spatial类的基础上,分别扩展为点线面和栅格4种空间数据类型,分别为

    1.1K20

    应用空间统计学分析空间表达数据

    为了致敬原作,文章部分内容我们将在下面复现 H&E图像辅助细胞聚类 首先,我们配置好演示用的R包和数据。...空间变异基因 至于空间信息,我们不妨理解为采样点,不同分辨率的技术,理解为一个采样点采到了多少个细胞。...这里我们用的方法是广义空间线性模型(generalized spatial linear models,GSLM),这一方法在单细胞转录组中的应用被封装在R包SPARK中,文章见: Shiquan Sun...我们知道单细胞数据分析过程中,落脚点往往是在某个基因集上面,这里我们也选一个基因集来做地理加权回归。...这里用的是R包sp, 在sp中定义了一个空间对象基础类Spatial,由两个solt 构成:bbox和proj4string, 在Spatial类的基础上,分别扩展为点线面和栅格4种空间数据类型,分别为

    1.4K20

    Seurat4.0系列教程22:空间转录组的分析、可视化与整合

    SpatialFeaturePlot(brain, features = c("Hpca", "Ttr")) Seurat 中的默认参数强调分子数据的可视化。...此过程还有助于将这些数据与下一节中的外皮层 scRNA-seq 数据集整合。首先,我们取群的子集,然后根据确切的位置进一步细分。subset后,我们可以在完整图像或裁剪图像上可视化皮质细胞。...首先加载数据(此处下载[10]),预处理 scRNA-seq 参考集,然后执行标签转移。该过程为每个点输出每个scRNA-seq细胞的概率分类。我们将这些预测添加到新的Seurat 对象进行分析。...Seurat 对象中的多个切片,我们提供了merge。...此教程将遵循与 10x Visium 数据的空间教程大致相同的结构。 您可以使用SeuratData 包轻松访问数据,如下所示。安装数据集后,您可以键入?

    10K35

    Go函数下篇:defer和闭包

    defer内的结果: 3010解析:在work函数内,变量num传递给了通过defer注册了的匿名函数,在匿名函数内做了加20,但它的结果并未影响到外面的num变量,这就是值拷贝。...闭包闭包初体验闭包的本质其实返回的是一个函数,但这个函数有点特殊,为啥说特殊呢?...//第1次调用的结果输出hello ttr ttr //第2次调用的结果输出hello ttr ttr ttr //第3次调用的结果输出hello ttr ttr ttr ttr //第4次调用的结果输出这次对...在bibao函数中,对于匿名函数内部来说,它的外部变量就是bibao函数里的base变量。...调用函数bibao并传入"ttr",在匿名函数中进行了字符串拼接,bibao("ttr")初始化了一次,b()反复调用了4次,在匿名函数中引用的外部变量base,每次调用时返回的是外部变量base的多个副本

    79810

    糖尿病视网膜病变患者的长非编码RNA的鉴定

    功能注释和基因集富集分析用于分析TTR的影响途径和过程。采用加权基因共表达网络分析(WGCNA)获得HUB模块和基因。根据顺式、反式和竞争性内源RNA的作用方式构建了LncRNA-mRNA调控网络。...结果:低糖(LG)、高糖(HG)和高糖加4μM的TTR(HG+TTR)处理的人肾小管上皮细胞(HRECs)进行了测序。...使用MCODE寻找主网络内密集连接的区域和自网络。 4.WGCNA 当软阈值定义为10时,具有133个基因ME绿色的模块与葡萄糖和TTR的相关性最高。...从GEO数据库下载得到表达矩阵 一文就够 GSEA分析一文就够(单机版+R语言版) 根据分组信息做差异分析- 这个一文不够的 差异分析得到的结果注释一文就够 得到如下所示的火山图和差异基因热图; ?...顺式调控网络(8A)中,选择编码mRNAs附近的lncRNAs进行网络构建。网络中的edge表示同一染色体中10kb内的相对上游或下游位置。

    54820

    文献推荐:影像组学评分是基于影像学特征的一个单发HCC患者术后生存的预后指标

    今天献丑了,分析的是ZBH和LLZ两位师兄的临床评分文章(我能大概读懂结果和思路,但是方法学一窍不通)。如有不妥之处,请多多指点。...(数据丢失太多,最后导致的样本量小,这可能是文章的不足之处,偏倚大) 2. 两个结局指标是:复发间隔期TTR和总生存期OS 3....质构分析的影像学特征的挑选+rad评分系统的建立:(前面这个10倍这个没看懂)用R语言的glmnet包做lasso-logistic regression从110个rad特征里筛出6个(用训练队列212...统计分析用的SPSS或R的rms包,X-tile用来取rad-score的cut-off值(X-tile是一种可以区别肿瘤亚群、判定biomarker和结局关联性强度的工具,非常想学)。...个人感悟:可以看出丰富的方法学手段为一个简单的idea添砖加瓦,锦上添花,提升档次。

    6K30

    Qlib来啦:模型训练篇

    接下来,我们就以MACD和RSI两个指标为例,实现一个自定义DataHandlerLP的类。...准备数据及模型,进行训练 在Qlib的框架下,使用机器学习进行量化研究主要有以下步骤: 数据准备 Dataset 模型配置 训练及结果分析 我们之前的数据篇已经完成了数据准备的部分,这其中的核心就是因子...接下来我们使用Alpha158数据集,及内置ALSTM模型,说明一下模型训练的过程。...Qlib中使用R作为QlibRecorder的简称,每次开始实验都会在指定目录(默认当前目录)新建一个mlruns文件夹,用于存放每次实验的中间结果: 在以上的代码中R.start()只能与with搭配使用...我们只要看一下SigAnaRecord的源码就明白了:  可以,看出以上代码中,generate方法就是实现了: 根据训练好的模型生成预测pred,并保存在pickle文件中 获取了测试集的label

    3.4K43

    实战:基于技术分析的Python算法交易

    这个函数用来设置回测的起始时间,因为我希望所有策略开始实施的时间保持一致,设置为2016年的第一天。不过,有些基于技术指标的策略需要一定数量的历史数据,也就是所谓的 warm-up 阶段。...) 当投资者购买股票时,他们会花掉全部本金 之所以选择这段时期,是因为2018年中后的 Quandl 数据集还没有更新,我们希望代码可以尽可能简化。...该策略的逻辑可以归纳为以下几步: 当20天的 SMA 价格上升时,买入股份 当20天的 SMA 价格下降时,卖掉全部股份 用前19天和当天的数据计算移动平均数,次日执行交易决策 这是我们第一次调用预设辅助函数的地方...该策略的逻辑如下: 当较快的移动平均值穿越较慢的移动平均值时,我们买入股份 当较慢的移动平均值穿越较快的移动平均值时,我们卖出股份 一定要记住一点,在这种策略中,许多不同长度窗口的组合构成了速度不同的移动平均数...RSI 的结果为0到100之间的数字,一般按14天进行计算。为生成交易信号,通常要指定 RSI 的下限为30,上限为70。也就是说,30以下在超卖区,70以上为超买区。

    1.6K22
    领券