从零开始做量化(3)

# 系列文章目录
从零开始做量化(0)—— 引言
从零开始做量化(1)—— 交易框架
从零开始做量化(2)—— 开发环境搭建
从零开始做量化(3) —— 框架实现


持续更新中。。。


前言

上一篇文章介绍了开发环境的部署,本次我们结合之前介绍的讨论交易框架,用部署好的开发环境编程实现我们的框架。本文分了两部分,第一部分是python编程中模块、包的概念以及如何实现;第二部分介绍交易框架的实现。

1. python中的模块与包

在部署开发环境的时候,我们介绍了后面会用到的第三方包的安装,如:pandas、numpy等,这和我们本节要介绍的包是同一个概念。一般Python的程序是由包(Package)、模块(Module)和函数(Function)组成。模块是处理某一类问题的集合,由函数和类(class)组成。包是由一系列模块组成的集合。它们之间的关系如下图所示:
在这里插入图片描述
在具体实现时,函数、类等这些由代码组成;函数、类组成模块,Python中的模块都是以“.py”为后缀;包则是一个特殊的文件夹,其内部包含一个“__init__.py”,告诉解释器这是一个Python解释器能够识别的包,而不是一个普通的文件夹。

在使用外部包的时候通过:

import packageName
# 或者
import packageName as another_name

来进行导入包,后面才能继续引用包内的接口(API)。

和上面的类似,引用外部模块时的格式为:

import moduleName
# 或者
import moduleName as another_name

按照上面的方式导入包或者模块时,在使用该包或者模块内部的函数或者创建对象的时候,需要加上包名或模块名作为前缀,如:

import numpy # 导入numpy包

# 使用numpy里面的array函数时,需要带上前缀
array = numpy.array([1,2,3]) # 创建一个向量

2. project框架

2.1 文件结构

在这里插入图片描述![

  • DataStorage

文件夹:数据缓存目录,主要缓存两部分数据:历史行情数据(cache目录)和策略配置参数(config目录)。

  • Gui

包:图形用户界面接口,可视化显示一些数据,可以辅助调试、设置参数、本地预警等。

  • NetRequest

包:网络请求数据的接口,网络请求、财经数据云端获取、爬虫等。

  • Strategies

包:交易策略接口,后续交易策略实现的模块都会在该目录下。

  • Warning

包:邮件/微信警告接口,调用该接口可以远程发送提示/警告信息。

  • document

文件:说明文档。

  • setup.py

文件:软件运行入口,搭建好开发环境,可直接双击运行。

2.2 实现代码

3. 总结与下文预告

本文主要介绍了框架的代码实现,后续的开发工作都会在该框架下填充我们的代码。下面会介绍网络数据请求接口的实现。

感谢您的耐心阅读,文章创作不易,转发请注明出处!系列文章首发于个人微信公众号“24K纯学渣” ,学习资源与源码将第一时间共享在该平台,欢迎关注!

参考书目

《Python程序设计:编程基础、web开发及数据分析》(李辉 刘洋)
《Python3 快速入门与实战》(肖冠宇 杨婕等)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值