AVL树是一种自平衡二叉搜索树。在这种树中,任何节点的两个子树的高度差被严格控制在1以内。这确保了树的平衡,从而保证了搜索、插入和删除操作的高效性。AVL树是由Georgy Adelson-Velsky和Evgenii Landis在1962年发明的,因此得名(Adelson-Velsky和Landis树)。
平衡因子:每个节点的平衡因子是其左子树的高度减去其右子树的高度。平衡因子必须保持在-1
更新时间:2024-05-20 05:55
\
更新时间:2024-05-20 02:30
Python是互联网、数据科学、量化交易等领域使用最广泛的编程语言之一,是AI量化策略研究平台主要使用的策略开发语言。
本文简短而全面,用十分钟的时间带你走入Python的大门。建议一边学习,一边在 AI量化平台-编写策略 里实践。
Python中没有强制的语句终止字符,代码块是通过缩进来指示的。缩进表示一个代码块的开始,逆缩进则表示一个代码块的结束。一般用4个空格来表示缩进。
更新时间:2024-05-20 02:09
Python作为一门最热门的语言,现在已经成为数据分析、编程门投资、机器学习的主流语言。
Python是一种计算机程序设计语言。你可能已经听说过很流行的编程语言,比如非常学的C语言,非常流行的Java语言等等,适合初级的基本的JavaScript语言。
首先,我们学一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如下载一个MP3,写一个文档等等,而计算机干活的CPU只认识机器指令,所以,尽管不同的编程语言千差万别,最终都可以“翻译”成CPU可以用机器指令。而不同的编程
更新时间:2024-05-20 02:09
本文内容对应旧版平台与旧版资源,其内容不再适合最新版平台,请查看新版平台的使用说明
新版量化开发IDE(AIStudio):
https://bigquant.com/wiki/doc/aistudio-aiide-NzAjgKapzW
新版模版策略:
https://bigquant.com/wiki/doc/demos-ecdRvuM1TU
新版数据平
更新时间:2024-05-16 03:33
ValueError在Python中是一种异常,表示当一个操作或函数接收到一个具有正确类型但不合适的值时抛出。简而言之,这意味着传入的参数类型是对的,但是参数的值是不适当的,因此无法执行该操作。
避免ValueError的关键是确保在进行操作或调用函数时,传入的参数值在逻辑上是有意义的,并且符合函数或操作的预期。以下是一些避免ValueError的策略:
更新时间:2024-02-20 03:39
出现 ValueError: 0 is not in range 这个错误通常意味着您在Python代码中尝试访问一个序列(比如列表、元组或字符串)的索引0,
但该序列是空的,或者您正在使用一个期望特定范围内的整数值(例如在一个for循环或数组索引中)但提供了一个不在该范围内的值。
以下是一些常见的情况和解决策略:
索引空序列
如果您尝试访问一个空序列(如空列表、空字符串等)的第一个元素(索引0),将会导致此错误。
my_list = []
print(my_list[0]) # 这会导致错误,因为my_list是空的
解决办法:在尝试
更新时间:2023-12-14 08:36
请问通过instrument列查询出一共有多少只不同的股票的python代码是什么
这个表是运行可视化策略后通过某个查看某个模块的结果后得到的,想知道如果要查看有多少只股票的话应该用什么python代码
\
每个模块都有一个模块名,在notebook下方运行代码,如m3.data.read()可以把数据全读取出来,然后通过pandas的一些语句进行筛选查看就行了。
更新时间:2023-10-09 07:24
使用平台的“自定义Python模块”勾中“启用缓存加速”选项,在模块第一次执行成功后,模块的输出数据会被缓存。
但是在对模块的主函数代码进行更新后,再运行该模块,则会命中旧代码的输出缓存,不会执行新代码输出新数据。
要想获得新数据必须要去掉“启用缓存加速”后运行模块,这样可以得到新数据,但是新数据就不会被缓存,如果再重新勾选“启用缓存加速”又会命中缓存里的旧数据。
总之,没有办法清除掉旧的缓存,以便生成新的缓存。
另外,试过了重启开发环境和重启策略内核都不能清除掉旧的缓存。
更新时间:2023-10-09 03:47
965,双休,不加班,福利待遇好
211/985本硕博
数学,计算机,金融工程,统计等相关专业
机器学习,量化研究员,C++开发,python开发,数据开发,运维,全栈,风控,市场。
加分项:ACM-ICPC奖牌,NOIP、NOI奖牌,数学/物理奥赛奖牌。
大厂经验
base北上杭深
薪资open
V:cm2435428253
邮箱:ina@quantjob.cn
更新时间:2023-09-28 06:04
965,双休,不加班,福利待遇好
211/985本硕博
数学,计算机,金融工程,统计等相关专业
机器学习,量化研究员,C++开发,python开发,数据开发,运维,全栈,风控,市场。
加分项:ACM-ICPC奖牌,NOIP、NOI奖牌,数学/物理奥赛奖牌。
大厂经验
base北上杭深
薪资open
V:cm2435428253
邮箱:ina@quantjob.cn
更新时间:2023-09-28 06:04
此文是量化投资协会成员之前在人大经济论坛上总结的,现在分享给大家。
在量化投资领域,获取数据、整理数据、模型计算、数据图形化均可以用python实现;而且Python强大的库功能使其非常适合做quant类工作的语言,进而逐渐成为科学计算方面的统治级语言;IPython,pandas等重量级神器更是为Quant类工作量身定做;以后python在量化投资中的地位会越来越重要。
更新时间:2023-06-14 03:02
首发于我的博客 The North。
GitHub 里老早之前就 Star 了 felixglow/Stock 这个项目,原作者 felixglow。昨天晚上又想起这个来,于是今儿早上就拿出来看——我对其中相当多的部分都不熟悉,有些还是第一次了解。在这里将我的理解记录下来,其中的错谬之处,还望各位大神指正。
![](/community/uploads/defau
更新时间:2023-06-14 03:02
开篇申明:笔者也是python初学者,以下内容纯粹从个人使用经验来讨论问题,若有谬误,请大神们拍砖。
Python where we can, C++ where we must,这句话基本概率了python大法对CTA的重要作用。不是说迷信python大法好,而是说python特别符合CTA策略研发的一些特征,即利用了python的一些优势,又很好的回避了它的一些局限性。原因有如下3个:
1. 代码简洁,开发效率高。CTA策略研发需要大量来回调参,修改局部代码,属于典型的投入多,产出少。尝试几十几百个策略,成果却可能就那么1-2个,这种事情更是家常便饭。python代码极为简洁
更新时间:2023-06-14 03:02
不是每个人都有时间时刻盯盘的,而且股票那么多,往往挂一漏万,错过很多好的股票和买入机会。笔者尝试用python实现了一个可以自动盯盘的程序,调用了一个免费的股票数据接口baostock提供的历史行情数据和实时数据,实现了对盘中突破10日高点,且在20日均线上股票的提示。目前股票池最大容量为500只股票,同时实现对500只股票的监控,3秒以内就能快速识别和反应,听上去是不是很心动?如果大家有兴趣,可以自己往里面添加不同的判别条件,实现自己的策略。首先默认已经安装python,且版本是3.5或者以上。安装pandas: pip insall pandas安装numpy: pip install
更新时间:2023-06-14 03:02
该文章接上一篇Python最好用的科学计算库:NumPy快速入门教程(二)
import numpy as np
%matplotlib inline
广播操作允许通用函数能够对不是严格相同形状的输入进行处理。
广播的第一个规则是,如果所有输入数组不具有相同数量的维度,则将“1”重复地预先添加到形状较小的数组中,直到所有数组具有相同数量的维度。
广播的第二个规则是,确保有某个维度大小为1的数组,操作起来像该维度与在该维度上具有最大形状的数组一样。
更新时间:2023-06-14 03:02
如果学习过编程语言话,一定知道一个叫做"三目运算符"(三元表达式)的东西,一般来说我们可以把他看成是一个简单的"if - - else"语句。下面是在java中的三目表达式(其实在大多数的语言中都是这样的):
单目运算符: ~3(位运算符取反码)双目运算符:3 + 4三目运算符:格式:比较(关系)表达式**?表达式1:**表达式2;比较表达式:结果是一个boolean类型。执行流程:根据比较(关系)表达式的计算返回一个ture或者false。如果是true,就把表达式1作为结果。如果是false,就把表达式2作为结果。
那为什么要提一下别的语
更新时间:2023-06-14 03:02
seriesn. 系列,连续;[电] 串联;级数;丛书
在介绍series之前,需要说一说它和pandas之间的关系。其实很好理解,pandas模块中有两个主要的数据结构:
虽然它们并不能解决所有的问题,但是他们为大多数的应用提供了一种可靠的、易于使用的基础。
Series是一种类似于一维数组的对象,它由一组数据(他的类型可以是任意的numpy数据类型)还有一组与之相关的数据标签(即索引)组成
更新时间:2023-06-14 03:02
转置(transpose)是重塑的一种特殊形式。他返回的是源数组的视图,也就是说源数组与对源数组转置后返回的数组指向的是同一个地址。numpy中的转置有三种方式:
T属性
transpose方法
swapaxes方法
import numpy as np array = np.arange(12).reshape((3,4)) array2 = array.T
print("-----源数组-----") print(array) print(array2) print("-----修改后的数组
更新时间:2023-06-14 03:02
Numpy中关于Meshgrid函数:meshgrid官方。
meshgrid函数就是用两个坐标轴上的点在平面上画网格(当然这里传入的参数是两个的时候)。当然我们可以指定多个参数,比如三个参数,那么我们的就可以用三个一维的坐标轴上的点在三维平面上画网格。
numpy.meshgrid
更新时间:2023-06-14 03:02
原创文章,转载请注明出处:用Python的交易员
Python在2016年里可以说是风靡国内量化投资圈,目前整个生态链已经初具规模:
随着用户越来越多,Python语言的性能问题也就逐渐成为整个社区关注的重点,经常遇到新手问:Python写的量化交易程序是不是很慢啊?
在他们心中,Python估计是这个样子:
![{w:100}](/community/uploads/default/orig
更新时间:2023-06-14 03:02
使用Python 处理数据 数据整理是数据科学研究流程中的一个重要步骤。本文要介绍的pandas就是一个广受欢迎的数据整理库。这个应用最早基于NumPy开发,那么NumPy又是什么东西?NumPy其实是Python里进行数学计算的基础工具。Pandas库提供了快速、简捷、易懂的数据结构,简化了数据整理步骤。
然而,pandas简捷的数据结构并不是那么容易上手。正因为pandas数据结构比较简洁,所以许多常用的功能放置只能被在其他的函数当中。将这些极其常用的功能和数据本身进行了分离,这就是pandas刚开始不那么容易上手的原因。对新手来说,需要找到一个好的学习的切入点。现在市面上有许多
更新时间:2023-06-14 03:02
关于python的优势就不说再多了,地球人都知道,还不知道的去面壁思过。因为不想当韭菜,所以还是自己老老实实写代码吧。
记录些常用的内容,以便自己回头复习。
常用的函数有:
numpy 处理向量矩阵
scipy 数据统计优化处理
pandas 金融数据分析
matplotlib 画图
tushare 财经数据
Zipline 回测平台
TaLib 技术指标
——介绍
Numpy
Numpy是Python的一个科学计算的库,提供了矩阵运
更新时间:2023-06-14 03:02
本文介绍如何如使用Python3获取美元人民币实时汇率。
经过查找分析多种数据渠道,我们最终选定使用和讯外汇的行情数据。其网页地址为
http://quote.forex.hexun.com/USDCNY.shtml
通过监测http,得到其api接口为
http://webforex.hermes.hexun.com/forex/quotelist?code=FOREXUSDCNY&column=Code,Name,DateTime,Price,Amount,Volume,LastClose,Open,High,Low,UpDown,UpDo
更新时间:2023-06-14 03:02
vn.py项目起源于国内私募的自主交易系统,2015年初启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献,目前已经一步步成长为一套全面的交易程序开发框架,用户群体也日渐多样化,包括私募基金、证券自营和资管、期货资管和子公司、高校研究机构、个人投资者等。
项目构成:
更新时间:2023-06-14 03:02