感谢您的回答,我之前没有使用过 StackOverflow,所以我对答案的数量和速度感到惊讶——太棒了。
我还没有正确地完成答案,但认为我应该在问题规范中添加一些信息。见下图。
我无法在此发布图片,因为我没有足够的积分,但您可以在http://journal.acquitane.com/2010-01-20/image003.jpg看到图片
这张图片可能更准确地描述了我想要实现的目标。因此,您可以在页面上的水平线上看到图表上的价格点。现在,您可以在每条线的 0.5% 范围内得到一个聚类,这被认为是一件好事,也是我想自动识别这些聚类的原因。您可以在图表上看到 S2 和 MR1、R2 和 WPP1 有一个集群。
所以我每天都会产生这些价格点,然后我可以手动识别那些在 0.5% 以内的价格点。- 但这个问题的目的是如何用 python 例程来做。
我再次复制了带有标签的列表(见下文)。请注意,标价点与图像中的价格点不匹配,因为它们来自两个不同的日子。
[YR3,175.24,8] [SR3,147.85,6] [YR2,144.13,8] [SR2,130.44,6] [YR1,127.79,8] [QR3,127.42,5] [SR1,120.94,6] [ QR2,120.22,5] [MR3,118.10,3] [WR3,116.73,2] [DR3,116.23,1] [WR2,115.93,2] [QR1,115.83,5] [MR2,115.56,3] [DR2 ,115.53,1] [WR1,114.79,2] [DR1,114.59,1] [WPP,113.99,2] [DPP,113.89,1] [MR1,113.50,3] [DS1,112.95,1] [WS1, 112.85,2] [DS2,112.25,1] [WS2,112.05,2] [DS3,111.31,1] [MPP,110.97,3] [WS3,110.91,2] [50MA,110.87,4] [MS1,108.91 ,3] [QPP,108.64,5] [MS2,106.37,3] [MS3,104.31,3] [QS1,104.25,5] [SPP,103.53,6] [200MA,99.42,7] [QS2,97.05, 5] [YPP,96.68,8] [SS1,94.03,6] [QS3,92.66,5] [YS1,80.34,8] [SS2,76.62,6] [SS3,67.12,6] [YS2,49.23,8 ] [YS3,32.89,8]
我确实在原始列表中犯了一个错误,因为 C 组是错误的,不应该包括在内。感谢您指出了这一点。
0.5% 也不是固定的,这个值会每天都在变化,但我只是用 0.5% 作为一个例子来说明问题。
再次感谢。标记
PS。我现在会开始检查答案。
你好:
我需要对股价进行一些操纵。我刚刚开始使用 Python,(但我认为我在用任何语言实现它都会遇到麻烦)。我正在寻找一些关于如何在 python 中很好地实现这一点的想法。
谢谢马克
问题:我有一个列表列表(FloorLevels(见下文)),其中子列表有两个项目(股票价格,重量)。我想将股价在彼此相差 0.5% 以内时分组。一个团体的实力将由其总重量决定。例如:
Group-A
115.93,2
115.83,5
115.56,3
115.53,1
-------------
TotalWeight:12
-------------
Group-B
113.50,3
112.95,1
112.85,2
-------------
TotalWeight:6
-------------
FloorLevels[
[175.24,8]
[147.85,6]
[144.13,8]
[130.44,6]
[127.79,8]
[127.42,5]
[120.94,6]
[120.22,5]
[118.10,3]
[116.73,2]
[116.23,1]
[115.93,2]
[115.83,5]
[115.56,3]
[115.53,1]
[114.79,2]
[114.59,1]
[113.99,2]
[113.89,1]
[113.50,3]
[112.95,1]
[112.85,2]
[112.25,1]
[112.05,2]
[111.31,1]
[110.97,3]
[110.91,2]
[110.87,4]
[108.91,3]
[108.64,5]
[106.37,3]
[104.31,3]
[104.25,5]
[103.53,6]
[99.42,7]
[97.05,5]
[96.68,8]
[94.03,6]
[92.66,5]
[80.34,8]
[76.62,6]
[67.12,6]
[49.23,8]
[32.89,8]
]