Jupyter Notebook中如何设置环境变量?
我们常常通过Jupyter Notebook来分享代码和演示分析结果。有时候,我们需要在代码中使用账号和密码,如果它们也被分享出去,可就大不妙了。正确的做法是把密码设置在环境变量中,在代码中读取环境变量。但是,Jupyter Notebook默认设置下,并不能读取到主机的环境变量。
方法之一是使用jupyterhub_config.py,将环境变量设置在这个文件中:
1 |
|
这样,在Jupyter hub启动notebook时,列表中的环境变量就会被带入到notebook中。但是,这仅限于jupyterhub的场景。
另一个方法是使用 python-dotenv库,在每一个notebook的头部,通过cell magic语法加载环境变量:
1 2 |
|
使用kernel.json¶
有一种方法设置起来复杂一些。但一旦设置好,在使用上却是最简便。这就是通过修改kernel.json。
这个文件的内容如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
最后的"env"字段,显示了如何设置环境变量。如果我们在notebook中要使用tushare, 或者jqdatasdk的账号或者密码,就可以在这个文件中这样设置:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
Tip
tushare和jqdatasdk是两个重要的A股证券数据源。
设置后,重新打开notebook,现在就可以这样访问了:
1 2 3 |
|
kernel.json的位置¶
在单元格中,运行以下命令:
1 |
|
1 2 |
|
《因子投资与机器学习策略》喊你上课啦!
面向策略研究员的专业课程,涵盖因子挖掘、因子检验和基于机器学习的策略开发三大模块,构建你的个人竞争优势!
- 全网独家精讲 Alphalens 分析报告,助你精通因子检验和调优。
- 超 400 个独立因子,分类精讲底层逻辑,学完带走 350+ 因子实现。
- 课程核心价值观:Learning without thought is labor lost. Know-How & Know-Why.
- 三大实用模型,奠定未来研究框架1:聚类算法寻找配对交易标的(中性策略核心)、基于 XGBoost 的资产定价、趋势交易模型。
- 领先的教学手段:SBP(Slidev Based Presentation)、INI(In-place Notebook Interaction)和基于 Nbgrader(UCBerkley 使用中)的作业系统。

1. 示例模型思路新颖。未来一段时间,你都可以围绕这些模型增加因子、优化参数,构建出领先的量化策略系统。