194浏览
查看: 194|回复: 3

[项目分享] mind+秒变《股市摸鱼利器》

[复制链接]
一、项目背景
股市谚语:早上大跌可加仓,早上大涨要减仓,下午大涨只减仓,下午大跌次日买,早上下跌不卖票,逢低加仓T+0,下午拉高不追涨,逢高减仓T+1,上午拉高看十点,下午拉高看二点,股票卖在最高点,股若强势十点封,股若不强二点封,控制仓位不侥幸,滚动操作是上策。
参考朋友做短期的建议 ,尝试制作股市监视器,希望能在上班时间 ,股市摸鱼;下班回家,幸福喝汤 。

郑重提示:股市有风险,入市需谨慎,项目仅供参考。

实现功能
1.png


二、摸鱼利器
1.硬件pinpong 板*1
支持python编码,完善的pinpong库(也可用UNO板子替代),自带oled屏幕,led蜂鸣器等众多组件;设计外形和常见开发板类似,不容易被发现,适合隐藏摸鱼


IMG_20210719_170904.jpg

2.软件平台
mind+1.7 python库安装方便,手动撸代码

12.png


三、准备工作
1.库安装
pinpong 库
推荐库-》硬件控制-》pinpong
功能:pinpong 库是用于连接硬件设备进行在线编程的 Python 库。可创作丰富有趣的软硬件互动项目。
MonJuly-202107199040..png


requests库
推荐库-》爬虫-》requests
功能 :Requests 库可以用来发送请求、处理响应结果;学会 Requests 库,我们能够轻易调用网络 api 接口,实现爬虫、翻译、智能机器人等各种有趣的效果。
4.png

2.新浪股市API
API接口:http://hq.sinajs.cn/list=两位字母+数字(sh代表上海证券交易所,sz代表深证证券交易所,6位数字是股票代码)
例如:在浏览器直接输入 网址 http://hq.sinajs.cn/list=sh600779 即可获取返回值
如图可见返回值依次为:股票代码var hq_str_sh600779="水井坊,今日开盘价格,昨日收盘价格,当期价格,最高价格,最低价格,。。。。。。返回值之间用逗号分开,格式规整,适合pyhton爬虫,切片操作

浏览器API返回值
MonJuly-202107191207..png



炒股软件图
Screenshot_2021-07-19-17-59-10-743_com.tencent.mm.jpg


四、程序流程
5.png

1.导入库
  1. import time
  2. from pinpong.board import Board,NeoPixel,Pin
  3. from pinpong.libs.dfrobot_ssd1306 import SSD1306_I2C
  4. import requests
复制代码
2.初始化数据和设备
  1. Board("uno").begin()
  2. NEOPIXEL_PIN = Pin.D9 #初始化LED灯珠
  3. PIXELS_NUM = 4 #灯数
  4. np = NeoPixel(Pin(NEOPIXEL_PIN), PIXELS_NUM)
  5. np[0] = (0, 0 ,0) #设置RGB灯关闭
  6. oled = SSD1306_I2C(width=128,height=64)
  7. oled.fill(0)
  8. oled.text('hello world !!!',0,0)
  9. oled.show()
  10. ticker_code=input('请输入股票代码')
复制代码
3.Ticker函数,分析股价,预测结果
  1. r = requests.get('http://hq.sinajs.cn/list=sh'+ticker_code)#,headers=headers) #sh603589'
  2.     res = r.text
  3.     print(res)
  4.     result = res.split('=')[1]  # 截取等号之后的数据部分
  5.     name = result.split(',')[0].replace('"', '')  #股票名称
  6.     start_price = float(result.split(',')[2])  #昨日收盘
  7.     now_price = float(result.split(',')[3])  #当前价格
  8.     rate = (now_price-start_price)/start_price * 100  #涨跌幅度
  9.     content2=str(round(rate,2))+'%'
  10.     oled.fill(0)
  11.     np[0] = (0,0,0)
  12.     oled.text("TickerNO:"+ticker_code,0,0)
  13.     oled.text(content2,20,20)
  14.     oled.show()
  15.     if abs(rate) > 3.0:
  16.         oled.fill(0)
  17.         content = "股票拉升:当前股票{0}, 涨幅{1:.2f}%, 请注意!".format(name, rate)
  18.         content2=str(round(rate,2))+'%'
  19.         oled.text("TickerNO:"+ticker_code,0,0)
  20.         oled.text(content2,20,20)
  21.         np[0] = (0,200,0) #设置RGB灯为红色
  22.         oled.show()
  23.         time.sleep(0.3)
  24.         oled.fill(0)
  25.         oled.text("Attention")
  26.         oled.show()
复制代码
4.主程序
每1分钟调用检测一次股价
  1. while True:
  2.     Ticker()
  3.     time.sleep(60)
复制代码
注意网站貌似增加了安全机制,如果调用时间过短例如3秒或5秒 ,则会报如下错误;
尝试了度娘的类似解决方案,仍未奏效,欢迎高手们来一起解决

request拍错.png

五、测试视频




pATAq  版主

发表于 7 天前

pinpong 板 啥时候上架啊
回复

使用道具 举报

gray6666  初级技神
 楼主|

发表于 7 天前

pATAq 发表于 2021-7-26 04:01
pinpong 板 啥时候上架啊

估计快了吧
回复

使用道具 举报

TuTu  中级技师

发表于 4 天前

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2021 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail