有次看朋友去,他一边编程一边炒股。因为开市后股价很低,不适合买入,就陪着我瞎聊。不成想股价慢慢在上升,等我们意识到还要购买股票时,错过了最佳的买点,只好又再次等待回调后买入。由此,我想到了Python3 基于tushare的股票价格监控。直接看代码吧
import tushare as ts
import winsound
import time
import datetime
import timeit
duration = 500 # millisecond
freq = 440 # Hz
symbols = ['002544']
while True:
# start = timeit.default_timer()
hour = datetime.datetime.today().hour
minute = datetime.datetime.today().minute
second = datetime.datetime.today().second
df = ts.get_realtime_quotes(symbols)
df = df[['code', 'price', 'volume', 'amount']]
df = df.set_index('code')
curr_price = float(df.iloc[0,0])
if curr_price > 15.23 :
print("\033[1;31;47m%s\033[0m" %(curr_price), end='')
print(" High price! %s:%s:%s" %(
str(hour).zfill(2), str(minute).zfill(2), str(second).zfill(2)))
winsound.Beep(freq, 500)
# end = timeit.default_timer()
# print('Running time: %s Seconds' % (end - start))
time.sleep(2.4)
else:
# end = timeit.default_timer()
# print('Running time: %s Seconds' % (end - start))
time.sleep(2.9)
主循环程序每3秒运行一次。每次都是先抓当前股票价格,然后判断价格是否达到预期的高点。如果达到了高点,一边输出红色即时价格,一边报警(winsound.Beep函数,参数是频率和时间ms)。
当然也可以同时监控很多个股票,设定很多个报警线。
这样可以一边忙自己的一边炒股了。