如何用python代码判断一段范围内股票最高点

供稿:hz-xin.com     日期:2025-01-14
Copyright © 1999-2020, CSDN.NET, All Rights Reserved




登录

python+聚宽 统计A股市场个股在某时间段的最高价、最低价及其时间 原创
2019-10-12 09:20:50

开拖拉机的大宝 

码龄4年

关注
使用工具pycharm + 聚宽数据源,统计A股市场个股在某时间段的最高价、最低价及其时间,并打印excel表格输出

from jqdatasdk import *
import pandas as pd
import logging
import sys
logger = logging.getLogger("logger")
logger.setLevel(logging.INFO)

# 聚宽数据账户名和密码设置
auth('username','password')

#获取A股列表,包括代号,名称,上市退市时间等。
security = get_all_securities(types=[], date=None)
pd2 = get_all_securities(['stock'])

# 获取股票代号
stocks = list(get_all_securities(['stock']).index)

# 获取股票名称
stocknames = pd2['display_name']

start_date = '2015-01-01'
end_date = '2018-12-31'
def get_stocks_high_low(start_date,end_date):
# 新建表,表头列
# 为:"idx","stockcode","stockname","maxvalue","maxtime","lowvalue","lowtime"
result = pd.DataFrame(columns=["idx", "stockcode", "stockname", "maxvalue", "maxtime", "lowvalue", "lowtime"])
for i in range(0,stocks.__len__()-1):
pd01 = get_price(stocks[i], start_date, end_date, frequency='daily',
fields=None, skip_paused=False,fq='pre', count=None)
result=result.append(pd.DataFrame({'idx':[i],'stockcode':[stocks[i]],'stockname':
[stocknames[i]],'maxvalue':[pd01['high'].max()],'maxtime':
[pd01['high'].idxmax()],'lowvalue': [pd01['low'].min()], 'lowtime':
[pd01['low'].idxmin()]}),ignore_index=True)

result.to_csv("stock_max_min.csv",encoding = 'utf-8', index = True)
logger.warning("执行完毕!

如何用python读取文本中指定行的内容
另一种方法是使用linecache模块,它提供了一个简单的接口来访问文件中的单行。例如,要读取文件中第10行的内容,可以使用如下代码:python import linecache print(linecache.getline(r'D:\\z.txt',10))如果你需要读取某段特定范围内的行,例如第10行到第13行的内容,可以使用with语句和for循环结合的方式...

Python和Java代码实现:进退法确定搜索区间
根据计算结果,若值降低,则搜索区间收缩至前一步位置;若值升高,则收缩至后一步位置。若值未改变,表明搜索区间已确定为单峰函数区间。通过循环,直至找到合适的区间范围。以黄金分割法中的实例为例,假设函数为f(x),最小值为1.75,对应的x值未知。Python代码实现如下:主函数中选取三种不同初始值...

如何用python代码判断一段范围内股票最高点
result = pd.DataFrame(columns=["idx", "stockcode", "stockname", "maxvalue", "maxtime", "lowvalue", "lowtime"])for i in range(0,stocks.__len__()-1):pd01 = get_price(stocks[i], start_date, end_date, frequency='daily',fields=None, skip_paused=False,fq='pre', ...

python检测一列有多少?
1.每个维度都画出来,看直方图,肉眼判别。python中可以用matplotlib画图。 2.连续的分布:KolmogorovSmirnov(k-s)test或者Cramér–vonMises(CvM)test 3.离散的分布:Chi-Squaretest 4.正态性可以用Lilliforstest 5.通常而言,你会发现这些数据不是从常见分布来的;什么分布并不重要,常见分布只是简化计算用的。 2,3和...

Python里面如何表达一个数等于一个范围之内的任意一个数?
假设要判断整数i是否位于区间[min,max],可以用if i in range(min,max+1)。下面是一个例子:min,max=1,10 r=range(min,max+1)for i in list(r)+[11,12]:print("%d in [%d,%d]" %(i,min,max) if i in r else "%d not in [%d,%d]" %(i,min,max))下面是运行...

怎么用pythonfor计算0到100(含)之间有多少个数能被4整除?
在上述代码中,我们首先初始化一个变量 `count` 用于计数,然后使用 for 循环遍历范围从 0 到 100(包括 0 和 100)的所有数字。对于每个数字,通过取余运算符 `%` 来判断其是否能被 4 整除,如果余数为 0,则说明可被 4 整除,将计数器 `count` 加 1。最后打印输出结果。运行以上代码,你将...

Python2大类方法筛选excel特定的值以及范围
接下来,我们扩展到使用多个条件进行筛选。例如,除了筛选label大于0之外,我们还想查看is_sale_day等于1的行。正确的代码使用了“&”(逻辑与)来连接条件,并且要注意使用括号正确表示逻辑关系。运行结果验证了同时满足两个条件的行。对于更复杂的筛选需求,如在特定值范围内筛选数据,我们可以使用中括号...

python求1-1000之间能被7整除或者个位数字是7或者十位数字是七的数并...
以下是一个示例代码:for num in range(1, 1001):if num % 7 == 0 or num % 10 == 7 or num \/\/ 10 % 10 == 7:print(num)这段代码使用range(1, 1001)生成1到1000的整数范围,然后通过条件判断筛选出能被7整除或者个位数字是7或者十位数字是7的数。满足条件的数将逐个通过print()...

python中如何表示1到1000?
在Python中,可以使用range()函数来表示1到1000之间的数字。具体来说,可以使用以下代码:numbers = range(1, 1001)这将创建一个包含从1到1000的整数的范围对象。如果需要将这些数字存储在一个列表中,可以使用list()函数将其转换为列表,如下所示:numbers = list(range(1, 1001))现在,numbers变量...

python的if语句用法
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。Python 编程中 if 语句用于控制程序的执行。其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围...