如何找到股票每个交易日的低点?

     2023-03-12     38

关键词:

【中文标题】如何找到股票每个交易日的低点?【英文标题】:How to find the lows of a stock for each trading day? 【发布时间】:2021-04-10 09:41:23 【问题描述】:

所以我有一个包含 Microsoft 分钟股票数据的 csv。我试图找到每个交易日的低点。代码如下:

ticker='MSFT'
df = pd.read_csv('/Volumes/Seagate Portable/S&P 500 List/.txt'.format(ticker))
df.columns = ['Extra', 'Dates', 'Open', 'High', 'Low', 'Close', 'Volume']
df.Dates = pd.to_datetime(df.Dates)
df.set_index(df.Dates, inplace=True)
df.drop(['Extra', 'High', 'Volume', 'Dates', 'Open'], axis=1, inplace=True)
df = df.between_time('9:30', '16:00')
df['Low'] = df.Low.groupby(by=[df.index.day]).min()
df

输出是:

                     Low    Close
Dates       
2020-01-02 09:30:00 NaN 158.610
2020-01-02 09:31:00 NaN 158.380
2020-01-02 09:32:00 NaN 158.620
2020-01-02 09:33:00 NaN 158.692
2020-01-02 09:34:00 NaN 158.910
... ... ...
2020-12-18 15:56:00 NaN 218.700
2020-12-18 15:57:00 NaN 218.540
2020-12-18 15:58:00 NaN 218.710
2020-12-18 15:59:00 NaN 218.150
2020-12-18 16:00:00 NaN 218.500

所以问题是低点充满了 NaN 值,我想这是因为我错过了使用 groupby。我也试过:

ticker='MSFT'
df = pd.read_csv('/Volumes/Seagate Portable/S&P 500 List/.txt'.format(ticker))
df.columns = ['Extra', 'Dates', 'Open', 'High', 'Low', 'Close', 'Volume']
df.Dates = pd.to_datetime(df.Dates)
df.set_index(df.Dates, inplace=True)
df.drop(['Extra', 'High', 'Volume', 'Dates', 'Open'], axis=1, inplace=True)
df = df.between_time('9:30', '16:00')
df = df.groupby(by=[df.index.day]).min()
df

对此的输出是:

         Low    Close
Dates       
1   150.8200    150.9800
2   150.3600    150.8400
3   152.1900    152.2800
4   165.6200    165.7000
5   165.6900    165.8200
6   156.0000    156.0700
7   157.3200    157.3500
8   157.9491    158.0000
9   150.0000    150.2700
10  152.5800    152.7950
11  151.1500    151.1930
12  138.5800    138.7600
13  140.7300    140.8700
14  161.7200    161.7500
15  162.5700    162.6300
16  135.0000    135.3300
17  135.0000    135.3400
18  135.0200    135.2600
19  139.0000    139.1300
20  135.8600    136.5900
21  166.1102    166.2100
22  165.6800    165.6900
23  132.5200    132.7100
24  141.2700    141.6481
25  144.4400    144.8102
26  148.3700    149.7000
27  149.2000    149.2700
28  152.0000    153.8152
29  165.6900    165.7952
30  150.0100    152.7200
31  156.5600    157.0450

问题在于它找到了收盘价和开盘价的低点。此外,总共只有 31 行,尽管应该有更多行,因为这是 2020 年全年的数据集。我假设这样做我分组错误,因为我查看了前 31 天每天的收盘价,并且有不可能这些都是那些日子的最低点。所以问题是如何在不影响收盘列的情况下找到每天的低点,并避免上述问题?

【问题讨论】:

"dates" 是你的索引还是列? 这是我的索引,虽然我相信它因为 groupby 函数而改变了 【参考方案1】:

试试这个:

unique_dates = list(set([str(date).split()[0] for date in df.index]))

min_values_daily = [min(df.loc[df.index==date].Close) for date in unique_dates] 

最后,创建一个新的数据框:

low_data = pd.DataFrame(
     'date': unique_dates,
     'low': min_values_daily
)

【讨论】:

这给了我错误TypeError: unhashable type: 'numpy.ndarray' 是的,我修好了。我的错误是在 .loc 中使用 () 而不是 [] 好的,我没有收到任何错误,但是输出是一个每分钟都有一个低值的数据帧。它们是不同的,这让我相信它只是打印出每分钟的低点,而不是找到每一天的低点。有没有办法解决这个问题? 请在评论中打印出变量 unique_list。我想错误来自那里 好的,根据您的代码,我能够找到一个可行的解决方案,所以我将其标记为答案

自创深度学习算法,预测股票上涨

...计学压缩。通过搜索历史股票上涨的信息,选择20个交易日内涨幅超过40%、40个交易日涨幅超过80%、最低点的股票,标注为1,其余标注为0.将连续两年的交易数据标注后,压入深度学习模型,记录达到要求的股... 查看详情

matlab如何从wind中获取股票数据收盘开盘最高最低交易量

... 收市价又称收盘价,通常指某种证券在证券交易所每个交易日里的最后一笔买卖成交价格。如果某种证券当日没有成交,则采用Recently一成交价作为收盘价。初次上市的证券,以其上市前公开销售的平均价格作为收盘价。如果... 查看详情

如何实现兴登堡预兆指标?

...我来说,这意味着,我们每天滚动并回顾52周或252个营业/交易日,然后计算高点(或低点)的数量,最后计算该回报或pct_change,即 查看详情

股票交易

题目描述最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i天的股票卖出价为每股BPi(... 查看详情

[scoi2010]股票交易(代码片段)

题目描述最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i天的股票卖出价为每股BPi(... 查看详情

量化交易多因子的筛选阶段介绍

...选阶段的任务基本面数据因子(特征)如此之多,那么如何去找到对应的对股票收益率比较好的。并且能在未来一段时间给我们的选股收益率提供帮助。二、挖掘因子的过程我们可以大概从这几个方面去做1、先从上百个因子当... 查看详情

洛谷p2569[scoi2010]股票交易

P2569[SCOI2010]股票交易题目描述最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i天的股... 查看详情

bzoj1855:[scoi2010]股票交易

Description最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i天的股票卖出价为每股BPi(... 查看详情

bzoj1855[scoi2010]股票交易

Description最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i天的股票卖出价为每股BPi(... 查看详情

scoi2010股票交易(代码片段)

题目最近( extlxhgww)又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,( extlxhgww)预测到了未来(T)天内某只股票的走势,第(i)天的股票买入价为每股(ap_i),第(i)天的股票卖出价... 查看详情

量化交易中,如何快速把股票代码转换成int整形?(代码片段)

最近笔者在量化交易的大神沟通中,收到这样一个需求,需要快速把股票代码转换成整形变量,也就是需要把新收到的股票交易信息,迅速与历史的股票信息结合起来,从而通过交易策略快速决策。 由于量化... 查看详情

bzoj1855[scoi2010]股票交易dp+单调队列

【BZOJ1855】[Scoi2010]股票交易Description最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i... 查看详情

一本通1605股票交易(代码片段)

1605:股票交易时间限制:1000ms      内存限制:524288KB【题目描述】原题来自:SCOI2010最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预... 查看详情

[bzoj1855][scoi2010]股票交易(代码片段)

Description最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价为每股APi,第i天的股票卖出价为每股BPi(... 查看详情

股票基金模拟交易日志1

股票基金模拟交易日志1002594比亚迪(1)记录模拟交易期间交易账户的市值:比亚迪在11月01日至11月05日这一周内,市价从开盘价301.410一直涨到了325.210才出现回落,在此段期间里我抓住了圆弧底破位处进入。&#... 查看详情

如何获取实时的股票数据

...单子,在9:30才开始处理。如果你委托的价格无法在当个交易日成交的话,隔一个交易日则必须重新挂单。休息日:周六、周日和上证所公告的休市日不交易。(一般为五一国际劳动节、十一国庆节、春节、元旦、清明节、端午... 查看详情

连续三个交易日内收盘价格涨跌幅偏离值累计达到20%是如何计算的

...0%-1%=-21%,说明这股票的当天下跌偏离值为11%。11%.连续3个交易日内日收盘价格涨跌幅偏离值累计达到±20%的;偏离值是指该股票与相关的基准指数所产生的的偏离值。上海证券交易所挂牌的股票所对应的基准指数为上证指数,深... 查看详情

股票量化交易中,如何确定高质量的历史数据

一、数据概述数据字段:量价数据(如开盘价、最低价、最高价、成交量、成交额、总市值等)、财务数据(如净利润TTM、现金流TTM、净资产、总资产、总负债、净利润(当季)等)、另类数据(主要是资金流入流出数据,如中... 查看详情