对量化交易感兴趣的同学,对于系统肯定不陌生。以quantopian为蓝本的平台,国内已经一抓一把,那为什么还需要从头实现一个系统?而且,什么是“搭积木式实现策略”呢?对比现存的量化平台,实现如下价值:1,市面上量化系统引擎是黑盒(当然大部分是zipline——代码是开源的,但可读性一般),从头实现可以做到知其然更知其所以然。2,拥有自己的,代码易读性的系统,不用担心策略泄漏。3,提供一个构
backtrader是基于Python的量化框架,功能丰富,操作方便。其优点是运行速度快,支持pandas的矢量运算;内置多种技术指标计算,还支持股票分析技术指标库talib;支持参数自动寻优运算;支持多品种(股票、期货、期权、外汇和数字货币)、多策略、多周期(Ticks、秒、分、日、周、月和年)的和交易;支持PyFlio、empyrica分析模块库、alphalens多因子分析模块库等;
在本文中,我们将深入探讨如何构建一个高效的 Python 系统。该系统能够模拟策略并评估其在历史数据上的表现。本篇博文将通过环境准备、集成步骤、配置详解、实战应用、性能优化及生态扩展等方面进行全面记录,旨在为你提供一个系统的解决方案。 ## 环境准备 首先,我们需要搭建系统的环境。在此,我们推荐使用 Python 及其相关库。 ```bash # 安装必要的库 pip install
原创 5月前
73阅读
首先我们需要明白自动化测试框架更倾向于一种设计思想 ,这种思想指导工具的使用或者自研开发,并且不是只能使用仅仅一种框架,结合被系统本身特性一般是选择多种测试框架的组合,来满足测试和设计需求(开发、维护角度)。录制回放测试框架录制回放测试框架所采用的原理是通过录制应用程序产生的线性脚本进行回放从而达到自动化测试的目的。优点:对测试人员测试开发能力要求最低,通过录制就可以得到所需脚本。缺点:一般不具
前言随着系统的数据量越来越大,为了解放个人电脑,决定将回系统部署到云服务器。 _ _Episode Sp. 系统的优化与云服务器部署之前说到个人系统建立出来后为了有效和一些云平台划清优势,我做了一个参数的调优循环:def complex_test(): n=0 complex_count=1 complex_pralist=[] current_list=[] for
win10下搭建zipline python3.5量化平台1、安装 Anaconda1.1 下载Anconda1.2 安装1.3 Anaconda Prompt1.4 检查安装1.5 创建python3.5环境2、安装zipline2.1 添加下载频道2.2 安装zipline3、安装PyCharm3.1 下载PyCharm(Windows)3.2 安装PyCharm3.3 配置Anacon
 一、什么是RSI策略?双均线策略的思想主要是根据长短周期 MA 指标的关系来判断买卖时机。基于 RSI 指标的策略主要是根据买卖双方力量之间的对比来判断买卖点。RSI 指标是通过一段时间价格变动情况来计算市场买卖力量的对比,从而推测未来价格变动的技术指标。当RSI大于80时,称为处于超买区,意味着未来价格可能会出现下跌;当RSI小于20时,称为处于超卖区,意味着未来价格可能会出现上涨。
转载 2023-06-12 17:28:00
426阅读
1引言目前基于Python的量化框架有很多,开源框架有zipline、vnpy、pyalgotrader和backtrader等,而量化平台有Quantopian(国外)、聚宽、万矿、优矿、米筐、掘金等,这些量化框架或平台各有优劣。就个人而言,比较偏好用backtrader,因为它功能十分完善,有完整的使用文档,安装相对简单(直接pip安装即可)。优点是运行速度快,支持pandas的矢量运算;
PyUnit(unittest) 是 Python 自带的单元测试框架,用于编写和运行可重复的测试。PyUnit 是 xUnit 体系的一个成员,xUnit 是众多测试框架的总称,PyUnit 主要用于进行白盒测试和回归测试。通过 PyUnit 可以让测试具有持久性,测试与开发同步进行,测试代码与开发代码一同发布。使用 PyUnit 具有如下好处:可以使测试代码与产品代码分离。
通过Tushare和backtrader实现量化投资(tushare ID=418443)一.Tushare介绍二.安装Tushare三.backtrader介绍和安装四.编写代码1、初始化tushare,获取指定股票代码的股票历史数据。2、加载数据3、加载backtrader引擎,初始化投资金额4、增加策略5、布林线规则策略的具体实现6、输出结果并打印图形五.运行结果 一.Tushar
转载 2023-09-21 11:29:07
526阅读
2评论
我们把量化小工具的基础版本称为V0,该版本的股票行情页面中的股票名称只有4个,分别为开山股份、浙大网新、水晶光电、高鸿股份,如果同学们要添加自选股,只能在代码中添加。接下来我们把A股市场中全部的股票都添加到下拉框中去。此处使用Tushare Pro的stock_basic()接口,该接口获取上市的所有股票基础信息数据,包括股票代码、名称、上市日期、退市日期等。输入参数说明如下:is_hs:是否沪深
一、OHLCV:当天的开盘价(Open)、最高价(High)、最低价(Low)和收盘价(Close)。如果再加上这一个小时总的成交量(Volumn),就得到了 OHLCV 数据。使用 Zipline 进行策略,或者用 Pyfolio 进行投资组合分析。Quantopian,就提供了基于 Zipline 的标准环境。国内也有诸如 BigQuant、果仁网等类似平台,提供不同市场和金融产品的交
转载 2024-02-14 19:54:27
77阅读
Q:两个有序数组合并成一个有序数组def merge_sort(a, b): ret = [] i = j = 0 while len(a) >= i + 1 and len(b) >= j + 1: if a[i] <= b[j]: ret.append(a[i]) i += 1
作者 | liuchungui我们的程序是用Python写的,因为使用Jupter Notebook显示结果非常方便。但是,最近在一次运行整个代码时,整整花了20分钟才出现结果。于是,我们打算好好优化一下。最终,性能提升10倍以上,耗时在1分29秒左右。优化流程我们优化主要分成两部分,第一部分是程序内部逻辑,第二部分是Python提速。所以,我们整个流程可以分成下面三步:第一步,
转载 2023-11-21 16:44:09
80阅读
# Python股票系统开源之旅 ## 介绍 随着量化交易的兴起,越来越多人开始关注股票系统系统不仅帮助我们检验交易策略的有效性,还能为开发更加复杂的算法交易提供支持。本文将介绍如何使用Python创建一个简单的股票系统,并提供一些开源项目的示例。我们将通过代码示例使读者了解股票的基本流程。 ## 股票系统的工作原理 股票系统的核心是模拟历史交易。的基本流
原创 9月前
409阅读
# 系统架构:概述与实现 在金融领域,系统是一种重要工具,为策略的评估与验证提供了必要的支持。的目的是将历史市场数据应用于交易策略,评估其潜在表现,以判断其是否具备盈利能力。本文将介绍系统的架构,并给出代码示例,帮助大家理解这一过程。 ## 系统架构概述 系统通常包含几个重要组件: 1. **数据采集模块**:获取市场数据,可能包括历史价格、成交量等。 2. **策
原创 2024-10-24 04:49:58
123阅读
测试代码1.单元测试和测试用例 Python标准库中的模块unittest提供了代码测试工具。单元测试用于核实函数的某个方面没有问题;测试用例是一组单元测试,这些单元测试一起核实函数在各个情况下的行为都符合要求。良好的测试用例考虑了函数可能受到的各种输入,包含针对所有这些情形的测试。2.测试函数 直接看一个例子,下面是一个简单的函数,它接受包含中间名的外国姓名并返回整洁的姓名:def get_fo
转载 2024-02-19 18:38:26
62阅读
编写函数或类时,还可以为其编写测试。通过测试,可确定代码面对各种输入都能够按要求的那样工作。程序员都会犯错,因为每个程序员都必须经常测试其代码,在用户发现问题前找出它们。测试函数被测试的代码,下面是一个简单的函数name_function.py,它接受名和姓返回整洁的姓名:def get_formatted_name(first, last): """接受名和姓返回整洁的姓名""" full_na
Python 测试代码通过测试,可确定代码面对各种输入都能够按要求的那样工作序员都会犯错,因此每个程序员都必须经常测试其代码,在用户发现问题前找出它们。1、测试函数:要学习测试,得有要测试的代码首先再当前目录下创建一个name_fun.py的文件,内容如下:def get_test_name(first, last): """测试名字的代码""" full_name = first
海龟交易法作为最早的量化交易法,已经被利用了很多年了,我发现网络上有很多利用python进行海龟交易法的代码教程,而且都是先通过akshare库再通过均线组合的方式实现,但是其中大多会报错,小编找了很多很多,但是最后还是差强人意,因此有了下面的这些。希望对您有所帮助。我注释了一些需要注意的地方,其实这个均线策略是可以修改的,比如把10日和20日均线改成100日和200日,小编认为均线的具体选择
  • 1
  • 2
  • 3
  • 4
  • 5