当前位置: 欣欣网 > 码农

摸鱼助手——用C#开发的股票盯盘小工具

2024-06-01码农

写了个盯盘小工具,最近发现一些技术群里面的小伙伴在摸鱼,摸鱼炒股啥的。不过上班期间看手机频繁是不是影响不好?或电脑上打开交易软件,那影响是不是更不好?所以我就写了个小工具,给大家「摸鱼」用。虽然是摸鱼用,但是平常丢一边,或者你自己改造下代码,写个循环在控制台里面刷新等等,或者输出到VS的输出栏里面等等,都行,也不会影响你工作,还可能因为你减少打开手机盯盘的操作,反而工作效率更高了,那我就算是做了个好事吧。winform界面如下所示,功能简单,可以添加、删除指定的股票代码。目前我只写了大A沪股和深股,其他没写,感兴趣可以自己拓展。

核心代码,实际上就是一个Get请求,然后解析有关内容。Get请求的是你的股票数据。请求地址是新浪股票数据。目前默认5秒刷新一次。

请求的地址是新浪股票地址:

http://hq.sinajs.cn/list=股票代码

核心解析代码,供参考。

try {// 发送 GET 请求 HttpResponseMessage response = client.GetAsync(url).GetAwaiter().GetResult(); response.EnsureSuccessStatusCode();// 读取响应内容byte[] contentBytes = response.Content.ReadAsByteArrayAsync().GetAwaiter().GetResult();string data = Encoding.GetEncoding("gb2312").GetString(contentBytes);// 将数据分行存入数组string[] stockList = data.Split('\n');if (!stockList.Any()) {return; } lbResult.Clear();// 打印每行数据foreach (var stock in stockList) {var values = stock.Split('=');if (values.Length != 2) {continue; }var fund = values[1].Trim('\"');string[] items = fund.Split(',');float curr = Convert.ToSingle(items[3]); // 当前价格float yend = Convert.ToSingle(items[2]); // 昨日收盘价格float percent = (curr / yend - 1) * 100; // 百分比变化float diff = curr - yend; // 价格差异string disp = $"{items[0]} | {items[3]} | {percent:0.00}% | {diff:0.000} "; if (percent == 0.0) { lbResult.SelectionColor = Color.White; }elseif (percent > 0.0) { lbResult.SelectionColor = Color.Red; }else { lbResult.SelectionColor = Color.Green; } lbResult.AppendText(disp + "\r\n"); } }

需要以上可执行的工具,可以百度云盘自行获取,已经编译好32和64位,无依赖环境,windows系统均可打开:

链接:

https://pan.baidu.com/s/1_uglW-6arjA0hJZsY45LQw?pwd=moyu

提取码:moyu

如果需要该摸鱼助手源码,可以在我公众号【Dotnet Dancer】后台回复 「摸鱼助手」 即可获取源码下载链接。