gray6666 发表于 2021-7-19 18:39:40

mind+秒变《股市摸鱼利器》

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

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

实现功能



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




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




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



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


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

浏览器API返回值




炒股软件图



四、程序流程


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



五、测试视频


https://www.bilibili.com/video/BV1UM4y1K7aQ
https://www.bilibili.com/video/bv1oh411B7Ty

pATAq 发表于 2021-7-26 04:01:29

pinpong 板 啥时候上架啊

gray6666 发表于 2021-7-26 16:42:51

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

估计快了吧

TuTu 发表于 2021-7-29 14:11:38

{:6_213:}{:6_213:}{:6_213:}

小企鹅 发表于 2022-3-15 20:51:46

厉害厉害
页: [1]
查看完整版本: mind+秒变《股市摸鱼利器》