JoinQuant技术支持 发布于2019-09-27
回复 51
浏览 71473
102
《聚宽新手指南》系列教程从平台简介、获取数据、投资研究使用和常见问题处理四个方面介绍了聚宽平台,使初入平台的用户从整体上熟悉聚宽平台的使用。
之前的教程都是分一个一个知识点展开的,本教程将整体串起来。
本篇是《聚宽新手指南》系列教程中的第四篇 。
### 目录:
(1) [初识聚宽量化投研平台](https://www.joinquant.com/view/community/detail/85ae46566640c0e5a9dd6f4e1f183a7a)
(2) [获取数据教程](https://www.joinquant.com/view/community/detail/5e4d0eac18d9ddb774452a7eb8f58bd4)
(3) [常见报错及警告解决方法](https://www.joinquant.com/view/community/detail/dc97ed907cd6c189a2106133dc72ccd4)
(4) 投资研究使用教程(本篇)
## 投资研究概述
相较于回测,研究模块提供更大的自由度,您可以更好的验证自己的交易思想。研究模块支持以下功能:
- 每个Cell独立运行,实时查看结果;
- 支持使用matplotlib/seaborn等Python库画各种统计图;
- 支持Markdown和代码混排,可读性更好;
- Notebook支持分享到社区,方便与大家交流;
## 投资研究基本使用方法
讲述jupyter的使用方法,主要讲述一些快捷键、帮助及一些常用操作
### 常用快捷键
#### 查看帮助中的快捷键说明
说明:command mode指的是在命令行模式下,需要在编辑的状态下esc退出后使用。


#### 常用快捷键说明
##### 两种模式
- 编辑模式 (默认,Enter 键启)
- 命令行模式(按键esc)
##### 编辑模式
- **Tab** : 代码补全或缩进
- **Shift-Tab** : 提示
- **ctrl-/**:注释
- **Ctrl-A** : 全选
- **Ctrl-Z** : 复原
- **Ctrl-Home** : 跳到单元开头
- **Ctrl-Up** : 跳到单元开头
- **Ctrl-End** : 跳到单元末尾
- **Ctrl-Down** : 跳到单元末尾
- **Ctrl-Delete** : 删除后面一个字
- **Shift-Enter** : 运行本单元,选中下一单元
- **Ctrl-Enter** : 运行本单元
- **Alt-Enter** : 运行本单元,在下面插入一单元
- **Ctrl-S** : 文件存盘
- **Up** : 光标上移或转入上一单元
- **Down** :光标下移或转入下一单元
- **Esc** : 进入命令模式
##### 命令行模式
- **Shift-Enter** : 运行本单元,选中下个单元
- **Ctrl-Enter** : 运行本单元
- **Alt-Enter** : 运行本单元,在其下插入新单元
- **Y** : 单元转入代码状态
- **M** :单元转入markdown状态
- **R** : 单元转入raw状态
- **1** : 设定 1 级标题
- **2** : 设定 2 级标题
- **3** : 设定 3 级标题
- **Up** : 选中上方单元
- **K** : 选中上方单元
- **Down** : 选中下方单元
- **J** : 选中下方单元
- **Shift-K** : 扩大选中上方单元
- **Shift-J** : 扩大选中下方单元
- **A** : 在上方插入新单元
- **B** : 在下方插入新单元
- **X** : 剪切选中的单元
- **C** : 复制选中的单元
- **Shift-V** : 粘贴到上方单元
- **V** : 粘贴到下方单元
- **Z** : 恢复删除的最后一个单元
- **D,D** : 删除选中的单元
- **Shift-M** : 合并选中的单元
- **S** : 文件存盘
- **L** : 转换行号
- **H** : 显示快捷键帮助
- **I,I** : 中断Notebook内核
- **0,0** : 重启Notebook内核
- **Enter** : 转入编辑模式
### 使用示例代码

### 帮助

### 常用操作
#### 重启内核

#### 文件移动、下载(需要先打勾)

#### 文件重命名、下载不同格式(html, md等格式)

#### 重启研究、重新运行全部

#### 关闭进行中的研究

## 投资研究的使用
### 在投资研究中进行基本研究
#### 学习使用Python模块
[Pandas的DataFrame选取数据](< https://www.joinquant.com/view/community/detail/fcc74204986b03f90d1fc4e769c2b2b8>)
#### 可视化研究结果
[【共享函数】绘制回测或模拟交易的买卖点](https://www.joinquant.com/view/community/detail/c726fe1842f6356326f0df97a54dabc8)
### 在投资研究中写策略并回测
#### 概述
- 讲述如何在投资研究中写策略并回测,核心API为create_backtest
- 区分create_backtest(策略ID)和get_backtest(回测ID)
- 策略ID(algorithmId):每个策略的唯一标识,可以为此策略设置不同的回测条件,得到不同的回测ID

- 回测ID(backtestId):每个回测的唯一标识

- 模拟交易ID(backtestId):每个模拟交易的唯一标识

- create_backtest:在研究中创建回测,需要使用策略ID(algorithmId)
- get_backtest:在研究中获取回测或者模拟交易的信息,获取回测信息使用回测ID(backtestId),获取模拟交易信息使用模拟交易ID(backtestId)
- 三个ID的关系
- 策略ID设置不同的回测条件(开始时间、资金、频率),会得到不同的回测结果;
- 每组回测条件下的回测ID是唯一的
- 可以根据回测结果创建模拟交易,[创建模拟交易的方法](< https://www.joinquant.com/help/api/help?name=faq#如何进行模拟交易?>)
#### 参考教程
[研究中写策略并回测](https://www.joinquant.com/view/community/detail/6342bc6bd43e371bda10f7402359b805)
### 在投资研究中并行回测调参
#### 并行回测调参框架教程
[多回测运行和参数分析框架](https://www.joinquant.com/view/community/detail/aaaf43b0b39a46f1600cbf44f3cf8513)
#### 框架概述
- 通过在研究遍历不同参数的组合,调整回测策略中的全局变量,得到不同的回测结果。然后在研究中分析不同参数组合得到的回测结果。
- 核心API为:create_backtest和get_backtest
#### 研究中写策略并回测与并行回测的关系
- 研究中写策略并回测:讲怎么在研究中写**一个**策略并进行回测;
- 多回测运行和参数分析框架:讲在回测中写策略,然后怎样在研究中控制这个策略的参数,最后得到最优参数等结果。
- 回测策略与研究中传入参数的关系:变量名需要对应起来

#### 并行回测框架使用步骤
- 在[策略列表](< https://www.joinquant.com/algorithm/index/list>)创建需要调参的策略;
- 确定策略中需要优化的参数是什么:例如实例教程中是g.factors和g.quantile;
- 在研究中复制框架parameter_analysis并运行;
- 填写需要优化的策略ID以及优化的参数,运行框架;
- 查看运行结果;
### 在投资研究中获取回测或者模拟交易数据,做进一步处理
[回测及模拟交易的绘图、多基准策略对比](< https://www.joinquant.com/view/community/detail/872b885345bbdf13d2138580a7baa066>)
### 客户端投资研究的使用
客户端使用方法基本和云端一致,主要说明下具体位置
## 投资研究常见问题
### 投资研究打不开的解决方法
- 如果网络正常的话,有可能是文件比较多或者比较大,加载比较慢,稍微等会再看;
- 使用Chrome浏览器,清空浏览器缓存;
- 重启研究环境,在[研究根目录](https://www.joinquant.com/research),右侧点击**重启**按钮;
- 文件太多了,清空回收站,或者删除一些文件;
- 还有问题,请联系下我们的工作人员,并提供下您的注册手机号;
### 研究中出现ipynb文件损坏怎么办?
进入文件中,选择 “文件” - “恢复到”,将文件恢复到最近的一次记录
### 回测和研究数据如何交互
- 回测中可以使用[read_file](https://www.joinquant.com/help/api/help?name=api#read_file)/[write_file](https://www.joinquant.com/help/api/help?name=api#write_file)读写研究模块的文件;
- [如何在回测及模拟交易中读取(或写入)研究中不同格式的文件(csv、json等)及数据](https://www.joinquant.com/view/community/detail/19300);
- [在回测及模拟交易中获取研究数据](https://www.joinquant.com/view/community/detail/b048a3e848d190ad810c3930fb07a4dc)
- 研究中可以使用create_backtest创建回测,通过get_backtest获取回测及模拟交易的结果;
## 升级投资研究的配置
投资研究磁盘空间太小、内存不够运行慢?可以在积分商城兑换更多的资源
[积分商城](https://www.joinquant.com/view/credits/list)
评论
请问:如果不慎关闭了浏览器或者网页,云端的IPython Jupyter进程多久会自动关闭?
2019-10-23
@星空J 一般会保持运行十几分钟, 一直没连接的话会自动关闭研究服务
2019-10-23
这个jupyter似乎不支持代码高亮?
2021-06-17
哪里下客户端呢,是不是没有了
2021-08-12
@ekkorodin 只有api 库,可能用anconda
2021-12-13
虽然不懂
,回复搞点积分备用
2022-01-04
入门有点难啊,希望每天学习都有所收获
2022-01-16
@JUSTSOSO 感谢分享。
2022-03-01
请问在帖子里copy了一个研究之后,在研究里打开后是空的,请问是需要什么初始设置吗?多谢
2022-04-22
请问,允许到最后出现这个的原因是什么?数据量不算大就能超内存限制?
Kernel Restarting
The kernel appears to have died.it will restart automatically;
有什么好的解决方案没有呢?
2022-05-29