凡事预则立,不预则废。
一、制定学习计划
让我们首先制定一个学习计划,我是量化小白,这一步就靠AI了。
我找了Gemini和ChatGPT分别帮我做一份7天的入门学习计划。
以下是我的提示词,借鉴了JayBee黄博士(在此感谢),大家可以参考:
我需要一个7天入门量化交易的学习计划,但我是一个量化交易的完全小白,没有python编程和机器学习的技能。我希望在中国的A股市场进行量化交易尝试,目前没有工具及数据来源。我每天有足够的时间学习,所以请帮我规划一条7天内合理的学习路径,要有每日里程碑、任务清单,操作步骤,以及七天结束之后的交付物。我需要尽可能详细、系统、可执行的规划。
我比较喜欢Gemini的计划,内容较长,不做一次性展示,大家可以根据自己掌握的技术能力,自行制定计划。
以下记录我根据计划的学习历程,先把学习准备和目标列出来。
核心理念:
- 循序渐进: 从最基础的概念和工具开始,逐步深入。
- 动手实践: 理论结合实践,每天都有编码任务。
- 聚焦基础: 不追求复杂策略或AI/ML,重点是掌握流程和基本功。
- 目标明确: 最终交付物是一个简单的回测代码和学习总结。
- 认识市场: 了解A股市场的基本特性和数据获取方式。
准备工作:
- 硬件: 一台可以正常上网和编程的电脑 (Windows, macOS, Linux 均可)。
- 软件(第一天安装): Anaconda (集成了Python和常用的数据科学库)。
- 心态: 保持好奇心、耐心和持续学习的热情。认识到7天只是入门,量化交易是长期学习的过程。
最终交付物 (End Deliverable):
- 一个包含完整回测流程的Python脚本 (.py) 或 Jupyter Notebook (.ipynb) 文件: 包含数据获取、指标计算、信号生成、持仓计算、收益计算和结果可视化。代码应有适当的注释。
- 一份简短的学习总结报告 (.md, .pdf 或 .docx): 包含上述第七天任务清单中要求的内容,特别是对过程、结果、局限性和未来学习计划的阐述。
重要提醒:
- 安全第一: 这个计划只涉及模拟回测,绝对不要在没有充分理解风险和没有经过严格测试的情况下投入真实资金。量化交易风险很高。
- 持续学习: 7天仅仅是打开了量化交易的大门。真正的掌握需要持续不断的学习、实践和思考。
- 保持耐心: 编程和调试过程中会遇到各种问题,保持耐心,学会利用搜索引擎(Google, Bing)和开发者社区(Stack Overflow, GitHub Issues)解决问题。
- 数据质量: 免费数据源可能存在质量问题(缺失、错误),在实际应用中需要更关注数据清洗和验证。
然后看看我第一天需要做什么
第一天:启程 - 基础概念与环境搭建 (Day 1: Kick-off - Concepts & Setup)
- 主题: 什么是量化交易?我需要什么工具?
- 学习目标:
- 理解量化交易的基本定义、优势与劣势。
- 了解量化交易系统的主要组成部分(数据、策略、回测、执行)。
- 了解为什么Python是量化交易常用的语言。
- 成功安装并配置好基础的Python开发环境。
- 任务清单:
- 阅读/观看入门资料: 搜索并阅读/观看至少2-3篇关于“什么是量化交易”、“量化交易入门”的文章或视频。重点理解其区别于主观交易的特点。
- 梳理核心概念: 用自己的话总结量化交易的流程(获取数据 -> 策略逻辑 -> 信号生成 -> 模拟/实际下单 -> 风险控制 -> 业绩评估)。
- 安装Anaconda: 访问Anaconda官网,下载适合你操作系统的版本并完成安装。选择Python 3.x 版本。
- 验证安装: 打开Anaconda Navigator,启动Jupyter Notebook或Spyder IDE。尝试运行简单的Python代码(如
print("Hello, Quant!")
)确保环境正常工作。- 了解A股基础: 简单了解A股的交易时间、T+1制度、涨跌停限制。
- 里程碑: 成功安装Anaconda,能够启动Jupyter Notebook/Spyder,并对量化交易有了初步的宏观认识。
1,2是关于量化交易理论学习的,网上有很多资料,大家可以自行学习。本文主要关注供和实操,所以从环境安装开始。
二、安装学习环境Anaconda
1.下载Anaconda
需要提供邮箱地址,在邮件中会收到下载访问页面
根据你的系统选择版本下载
没用过Anaconda?那就再下载过程中,先了解一下Anaconda
通过学习,以下简单总结一下
Anaconda,是一个开源的Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项。
Anaconda就是可以便捷获取包且对包能够进行管理,包括了python和很多常见的软件库和一个包管理器conda。常见的科学计算类的库都包含在里面了,使得安装比常规python安装要容易,同时对环境可以统一管理的发行版本。
Anaconda对于python初学者而言及其友好,相比单独安装python主程序,选择Anaconda可以帮助省去很多麻烦,Anaconda里添加了许多常用的功能包,如果单独安装python,这些功能包则需要一条一条自行安装,在Anaconda中则不需要考虑这些,同时Anaconda还附带捆绑了两个非常好用的交互式代码编辑器(Spyder、Jupyter notebook)。
具体来说,
在python中,我们写程序的时候经常离不开第三方库,我们可以称之为包。包可以理解成一个工具,我们要通过这个工具去实现我们所需要的功能。怎样使用这个工具呢?毫无疑问,我们都是import…,import…
但是,import初始只能导入python自带的库,第三方库需要我们自己通过cmd去pip install这个,pip install那个安装,及其麻烦,因为很多库都是python不自带的,我们都是要通过pip额外安装。
这个时候Anaconda的作用就出来了,Anaconda自带了很多python库,不用我们自己去额外安装,极少数我们需要安装的时候,我们通过conda install xxx就好了,及其方便!
三、使用Anaconda
1.配置Anaconda源
这一步非常重要!因为Anaconda的下载源默认在国外,如果不配置我们国内源的话,下载速度会慢到你怀疑人生的。而且很多时候会导致网络错误而下载失败。配置方法如下:
打开Anaconda Prompt,
执行以下命令,将清华镜像配置添加到Anaconda中:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
然后我们输入conda info命令查看当前的channel,查看是否配置成功:
(base) C:\Users\XXX>conda info
...
channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/noarch
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
...
镜像源添加完成.
2.创建虚拟环境
有命令行创建方式,我这里采用更直观的方式Anaconda Navigator.
首先,打开Anaconda Navigator.
切换到Environments页面
点击Create按钮,
输入你的环境名,选择环境中需要包含的相应语言版本对应的包,Python或R(一种用于统计分析、数据可视化和报告的编程语言)。
创建好一个独立的环境后,你会看到安装的pakage比base环境少很多(也更干净),需要你根据使用需求自己安装。
所创建的环境地址通常是再这个目录
C:\ProgramData\anaconda3\envs\
3.安装Notebook应用
Anaconda Navigator切换到Home页面,选择你新建的环境:
安装Jupyter Notebook
安装过程中会附带安装一系列相关的环境和工具,最终会是这个状态
点击Notebook的launch按钮,可以在浏览器打开以下页面
如果你的浏览器提示“找不到文件”,这通常是由于浏览器的安全策略不允许访问本地路径,修改安全策略,或者直接使用google浏览器 Google Chrome Canary
接下来,点击Untitled.ipynb,再打开页面选择已有的脚本内核,如Python3
写出我们的“hello world”吧,Shift+Enter可以运行检查结果,如图。
四、量化交易概念总结
最后,总结一下量化交易的概念和流程:
1.概念
量化交易(Quantitative Trading)是一种利用 数学模型 和 计算机算法 来进行金融市场交易的方法。它的核心思想是用 数据驱动决策,而不是依赖人的主观判断。
量化交易的特点:
-
数据分析驱动:通过分析大量历史数据,寻找市场中的 高概率交易机会。
-
自动化执行:交易策略由计算机程序自动执行,减少人为情绪影响。
-
策略多样化:
-
趋势跟踪:利用技术指标(如 MACD、均线)判断市场趋势。
-
套利交易:利用市场价格差异进行低买高卖,如 统计套利 和 高频交易。
-
市场中性策略:同时买入和卖出相关资产,降低市场风险。
-
量化交易的优势:
-
高效执行:计算机可以在毫秒级别完成交易,比人工交易更快。
-
减少情绪干扰:避免因恐惧或贪婪导致的错误决策。
-
可优化策略:可以不断调整和优化交易模型,提高收益率。
量化交易的应用:
量化交易广泛应用于 股票、期货、外汇 等金融市场,尤其在 对冲基金 和 机构投资 领域非常流行。
2.流程
2.1. 数据收集与处理
-
获取市场数据(如股票价格、成交量、财务数据)。
-
清理数据,去除异常值,确保数据质量。
-
进行特征工程,提取有用的指标(如 VMACD、BIAS5)。
2.2. 策略开发
-
选择交易策略类型(趋势跟踪、套利、市场中性等)。
-
设计数学模型,确定买卖规则。
-
进行历史数据回测,评估策略的有效性。
2.3. 风险管理
-
设定止损和止盈规则,控制最大损失。
-
计算投资组合的风险敞口,优化资金分配。
-
监控市场波动,调整策略参数。
2.4. 交易执行
-
通过交易算法自动下单,减少人为干预。
-
采用高频交易或低频交易方式,根据策略需求。
-
监控交易执行情况,优化订单处理。
2.5. 策略优化与迭代
-
评估交易结果,调整模型参数。
-
结合新数据进行优化,提高收益率。
-
适应市场变化,调整策略逻辑。
量化交易的核心在于 数据驱动决策,而不是依赖主观判断。
第一天学习结束。未完待续...