第1章:环境搭建——先把家伙事儿备齐

做量化交易,说白了就是和数据打交道。而数据这玩意儿,你得先有个趁手的工具才能摆弄它。我个人习惯是先把Python环境收拾利索了,再谈别的。这一章咱们就把基础环境搭好,后面写代码的时候才不会手忙脚乱。

1.1 Python环境配置

Python版本怎么选?我建议直接用Python 3.9或3.10。为什么?因为我在项目中踩过坑——有些库对3.11以上的版本支持还不完善,尤其是金融数据相关的库。你想想看,装了半天发现某个库不兼容,那多闹心。

下载地址:python.org

安装时记得勾选「Add Python to PATH」,这个选项很多人会忽略。嗯,这里要注意:如果不勾选,你后面在命令行里敲python会提示找不到命令。我曾经帮一个学员远程调试,折腾了半小时才发现是这个问题。

小提示:安装完成后,打开命令行(Windows按Win+R,输入cmd),输入 python --version,如果显示版本号,说明安装成功。

1.2 安装yfinance库

yfinance是我最常用的美股数据获取库,没有之一。它直接从雅虎财经拉数据,免费、稳定、接口简单。说白了,一行代码就能拿到苹果或特斯拉的历史行情。

安装命令:

pip install yfinance

如果你用的是Mac或Linux,可能需要加个sudo:

sudo pip install yfinance
注意:如果你同时装了Python 2和Python 3,记得用 pip3 而不是 pip。我刚开始做量化时就用错了pip,结果装到了Python 2上,折腾了半天才发现。

1.3 安装pandas与numpy

pandas和numpy是数据清洗的左右手。pandas管表格数据,numpy管数值计算。这两个库在量化领域几乎是标配,你后面写的每一行代码几乎都离不开它们。

安装命令:

pip install pandas numpy

为什么要把它们放在一起装?因为pandas底层依赖numpy,分开装容易版本冲突。我建议一次性装好,省心。

库名 用途 版本建议
pandas 数据处理、表格操作 ≥1.5.0
numpy 数值计算、数组操作 ≥1.24.0

1.4 安装requests库

requests库是用来发HTTP请求的。虽然yfinance内部已经封装了网络请求,但有时候你需要自己写爬虫去抓一些特殊数据,比如财报、新闻情绪等。这时候requests就派上用场了。

安装命令:

pip install requests
核心知识点:requests库的用法非常简单——requests.get(url)就能拿到网页内容。我在做美股舆情分析时,就用它抓过Seeking Alpha的新闻数据。

1.5 验证安装

装完了别急着走,先验证一下。打开Python交互环境(命令行输入python),逐行敲入以下代码:

import yfinance as yf
import pandas as pd
import numpy as np
import requests

# 测试yfinance:获取苹果公司最近5天的数据
aapl = yf.download('AAPL', period='5d')
print(aapl.head())

# 测试pandas:创建一个简单的DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
print(df)

# 测试numpy:创建一个数组并计算均值
arr = np.array([1, 2, 3, 4, 5])
print(np.mean(arr))

# 测试requests:访问百度首页
r = requests.get('https://www.baidu.com')
print(r.status_code)

如果每段代码都没有报错,说明环境搭建成功。如果某个库报错,大概率是安装时网络不稳定,重新装一次就好。

避坑指南:我曾经在验证yfinance时遇到SSL证书错误,后来发现是公司网络代理的问题。解决办法:在代码开头加上 import ssl; ssl._create_default_https_context = ssl._create_unverified_context

本章知识体系

下面这张图帮你理清本章的核心逻辑:

环境搭建核心流程 Python 3.9/3.10 pip install yfinance pandas numpy requests yfinance 美股数据获取 pandas + numpy 数据清洗与计算 requests 网络请求与爬虫 验证安装:import + 测试代码

环境搭建这件事,看起来简单,但很多人会在这里卡住。我的建议是:别急,一步一步来。装完一个库就验证一个,别一口气装完再查问题,那样你根本不知道是哪个环节出了错。

好了,环境搭好了,咱们就可以正式开始搞数据了。下一章会讲怎么用yfinance拉取美股历史数据,到时候你就知道今天这功夫没白花。


公众号:蓝海资料掘金营,微信deep3321