[012量化交易] python 最高价 最低价

# 遍历股票收盘价格
def TraversalElement():
    print("Traverse stock closing prices.")
    for stock in data_list:
        print(stock[5])  # 价格是字符串类型 <class 'str'>
        ClosePriceList.append(stock[5])


def HighestLowestPrice():
    print('Highest Price:', max(ClosePriceList))  # 最高价
    print('Lowest Price:', min(ClosePriceList))  # 最高价


在这里插入图片描述

import baostock as bs
import pandas as pd

HighestPrice = 0
LowestPrice = 1000  # 假设为1000
ClosePriceList = []

#### 登陆系统 ####
lg = bs.login()
# 显示登陆返回信息
print('login respond error_code:' + lg.error_code)
print('login respond  error_msg:' + lg.error_msg)

#### 获取沪深A股历史K线数据 ####
# 详细指标参数,参见“历史行情指标参数”章节;“分钟线”参数与“日线”参数不同。“分钟线”不包含指数。
# 分钟线指标:date,time,code,open,high,low,close,volume,amount,adjustflag
# 周月线指标:date,code,open,high,low,close,volume,amount,adjustflag,turn,pctChg
rs = bs.query_history_k_data_plus("sh.600000",
                                  "date,code,open,high,low,close,preclose,volume,amount,adjustflag,turn,tradestatus,pctChg,isST",
                                  start_date='2021-01-01', end_date='2021-12-31',
                                  frequency="d", adjustflag="3")
print('query_history_k_data_plus respond error_code:' + rs.error_code)
print('query_history_k_data_plus respond  error_msg:' + rs.error_msg)

#### 打印结果集 ####
data_list = []
while (rs.error_code == '0') & rs.next():
    data_list.append(rs.get_row_data())  # 获取一条记录,将记录合并在一起
# result = pd.DataFrame(data_list, columns=rs.fields)
#
# #### 结果集输出到csv文件 ####
# result.to_csv("D:\\history_A_stock_k_datao12ooo.csv", index=False)
# print(result)

#### 登出系统 ####
bs.logout()


# 遍历股票收盘价格
def TraversalElement():
    print("Traverse stock closing prices.")
    for stock in data_list:
        print(stock[5])  # 价格是字符串类型 <class 'str'>
        global HighestPrice
        global LowestPrice
        if float(stock[5]) > HighestPrice:
            HighestPrice = float(stock[5])
        elif float(stock[5]) < LowestPrice:
            LowestPrice = float(stock[5])
        else:
            pass
        ClosePriceList.append(stock[5])


def UpFallDay():
    print(len(data_list))  # 打印交易天数
    TradeDay = len(data_list)  # 交易天数
    UpDay = 0  # 涨的天数
    FallDay = 0  # 跌的天数
    NoUpFall = 0  # 不涨不跌天数
    previous = 0  # 前一个的价格
    for count in range(0, len(data_list)):
        print(str(data_list[count][0]) + '   num:' + str(count))
        # print(data_list[count][5])
        OpenPrice = float(data_list[count][2])  # 开盘价
        ClosePrice = float(data_list[count][5])  # 收盘价
        print(ClosePrice)
        if count == 0:
            print("First entry count is 0.")
            print("%f   %f" % (OpenPrice, ClosePrice))
            previous = float(data_list[count][5])
            if OpenPrice > ClosePrice:
                FallDay = FallDay + 1
            elif OpenPrice == ClosePrice:
                NoUpFall = NoUpFall + 1
            else:
                FallDay = FallDay + 1
        else:
            # print("%f   %f" % (previous, float(data_list[count][5])))
            if previous > float(data_list[count][5]):
                print("%f > %f" % (previous, float(data_list[count][5])))
                FallDay = FallDay + 1
            elif previous < float(data_list[count][5]):
                print("%f < %f" % (previous, float(data_list[count][5])))
                UpDay = UpDay + 1
            else:
                NoUpFall = NoUpFall + 1
                print("%f == %f" % (previous, float(data_list[count][5])))
            previous = float(data_list[count][5])
        print(previous)

    print("price...........")
    print('trade days is:' + str(len(data_list)))
    print("Up days is:" + str(UpDay))
    print("Fall days is:" + str(FallDay))  ###################
    print('No up fall days is' + str(NoUpFall))
    print('percent: {:.2%}'.format(UpDay / len(data_list)))
    print("price...........")


def HighestLowestPrice():
    print('Highest Price:', max(ClosePriceList))  # 最高价
    print('Lowest Price:', min(ClosePriceList))  # 最高价
    print('Highest Price:', HighestPrice)  # 最高价
    print('Lowest Price:', LowestPrice)  # 最高价


TraversalElement()
UpFallDay()
HighestLowestPrice()  # 最高价  最低价

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值