先说效果:AI智能体自动盯盘,触发条件就提醒,我炒股再也不用刷手机了
作为一个老股民,我每天最烦的就是得时不时刷手机看股价,生怕错过买卖点。最近,我折腾出了一个零成本的解决方案:用Python脚本+AI生成代码,搞了个自动监控股价的AI智能体。它定时抓取股价数据,一旦触发我设定的条件(比如跌破某个价位),就自动发微信或邮件提醒我。现在,我该干嘛干嘛,再也不用被股价绑架了。
这玩意儿成本为零,因为用的都是免费工具和API。下面,我就手把手教你搭建,代码都贴出来,照着改就行。
第一步:准备工具和环境,全是免费的
你需要的东西不多,大部分都能白嫖:
- Python 3.7+:编程语言,官网免费下载。
- requests库:用来抓取股价数据,安装命令:
pip install requests。 - yfinance库:一个免费的股票数据接口,比某些付费API还好用,安装:
pip install yfinance。 - schedule库:定时任务调度,安装:
pip install schedule。 - 微信推送:我用的是Server酱(免费版),注册后拿个SCKEY就行,能发微信消息到手机。
- 邮件推送:用Python的smtplib库,配合QQ邮箱或Gmail的SMTP服务(免费)。
- AI助手:比如ChatGPT或Claude,用来生成和调试代码,省时省力。
我一开始想用付费的股票API,但发现yfinance完全够用,数据更新快,还免费。AI助手帮我快速写了核心代码,不然自己琢磨得半天。
第二步:写Python脚本,核心是抓数据和判断条件
脚本主要做三件事:定时抓股价、判断触发条件、发送提醒。我用AI生成了基础代码,然后微调了一下。
1. 抓取股价数据
用yfinance库,几行代码就能搞定。比如监控腾讯控股(港股代码:0700.HK):
import yfinance as yf
def get_stock_price(symbol):
stock = yf.Ticker(symbol)
# 获取最新股价,这里用历史数据模拟实时(延迟约15分钟)
hist = stock.history(period="1d", interval="1m")
if not hist.empty:
latest_price = hist['Close'].iloc[-1]
return latest_price
else:
return None
# 测试一下
price = get_stock_price("0700.HK")
print(f"当前股价: {price}")
注意:yfinance的数据有延迟(通常15分钟左右),对于非高频交易够用了。如果你要实时数据,得用付费API,但我觉得没必要,炒股又不是炒币。
2. 判断触发条件
我设了个简单条件:当股价低于某个阈值时提醒。你可以扩展,比如涨跌幅超过5%、突破均线等。
def check_condition(price, threshold):
if price is not None:
if price < threshold: # 跌破阈值
return True, f"股价已跌破 {threshold},当前价: {price}"
return False, ""
# 设置阈值,比如腾讯低于300港币时提醒
threshold = 300.0
is_triggered, message = check_condition(price, threshold)
if is_triggered:
print(message)
3. 发送提醒
我两种方式都做了:微信推送快,邮件更正式。先看微信,用Server酱(免费版每天最多发5条,够用了):
import requests
def send_wechat_message(sckey, title, content):
url = f"https://sctapi.ftqq.com/{sckey}.send"
data = {
"title": title,
"desp": content
}
response = requests.post(url, data=data)
if response.status_code == 200:
print("微信消息发送成功")
else:
print(f"发送失败: {response.text}")
# 替换成你的SCKEY
sckey = "你的SCKEY"
send_wechat_message(sckey, "股价提醒", message)
邮件推送用QQ邮箱的SMTP(记得在QQ邮箱设置里开启SMTP服务,拿授权码):
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_email(subject, body, to_email):
from_email = "你的QQ邮箱@qq.com"
password = "你的授权码" # 不是QQ密码!
msg = MIMEText(body, 'plain', 'utf-8')
msg['From'] = Header(from_email)
msg['To'] = Header(to_email)
msg['Subject'] = Header(subject, 'utf-8')
try:
server = smtplib.SMTP_SSL("smtp.qq.com", 465)
server.login(from_email, password)
server.sendmail(from_email, [to_email], msg.as_string())
server.quit()
print("邮件发送成功")
except Exception as e:
print(f"邮件发送失败: {e}")
send_email("股价提醒", message, "接收邮箱@example.com")
第三步:整合脚本,加上定时任务
把上面代码拼起来,用schedule库定时运行。我设了每30分钟检查一次,你可以按需调整。
import schedule
import time
def job():
symbol = "0700.HK" # 股票代码
threshold = 300.0 # 阈值
price = get_stock_price(symbol)
if price:
print(f"[{time.ctime()}] 检查 {symbol}: 当前价 {price}")
is_triggered, message = check_condition(price, threshold)
if is_triggered:
# 发送提醒
send_wechat_message("你的SCKEY", "股价提醒", message)
send_email("股价提醒", message, "接收邮箱@example.com")
else:
print(f"[{time.ctime()}] 获取数据失败")
# 每30分钟运行一次
schedule.every(30).minutes.do(job)
print("AI股价监控智能体启动中...")
while True:
schedule.run_pending()
time.sleep(1)
保存为stock_monitor.py,在命令行运行:python stock_monitor.py。脚本会一直运行,定时检查并发送提醒。
第四步:部署到服务器或云函数,实现24小时监控
本地运行电脑不能关机,所以最好部署到云端。我推荐两种零成本方式:
- 云服务器免费试用:比如AWS、Google Cloud或Azure都有免费层,跑个Python脚本绰绰有余。
- 云函数:像Vercel或Railway,支持Python,有免费额度,设置定时触发就行。
以Vercel为例(需要点前端知识),把脚本改成无服务器函数,用cron触发。具体步骤:
- 注册Vercel,安装CLI。
- 创建
api/stock.py文件,把上面的job()函数放进去,导出为HTTP端点。 - 在Vercel项目设置里加cron job,比如
*/30 * * * *表示每30分钟执行。
这样,脚本就在云端24小时运行了,完全免费。
注意事项和我的经验
- 数据延迟:yfinance不是实时的,延迟15分钟左右。如果你做短线,得考虑这点。我用它监控中长期持仓,完全没问题。
- 免费限制:Server酱免费版每天5条消息,超了得付费。邮件推送也有频率限制,别设太短的间隔。
- 错误处理:实际运行中,网络可能出错。我加了try-except块,避免脚本崩溃。
- 扩展功能:你可以用AI助手生成更多功能代码,比如监控多个股票、复杂技术指标(如RSI、MACD),或者集成到Telegram、Discord。
- 安全:不要把API密钥或邮箱密码硬编码在代码里。用环境变量,比如
os.getenv('SCKEY')。
我用了两周,成功提醒了我两次加仓机会。这AI智能体虽然简单,但真心省事。代码总共不到100行,大部分是AI生成的,我只改了改参数和逻辑。
总结
用Python+AI,零成本搭建股价监控智能体,其实就这么几步:装工具、写脚本(抓数据、判条件、发提醒)、定时运行、部署到云端。成本为零,效果实实在在——我再也不用整天盯盘了。
如果你也想试试,拿上面的代码去改,用AI助手帮你调试。有问题欢迎来我博客298.name交流。炒股已经够累了,让AI智能体帮你盯盘吧!
本文来源:一江山水的随笔
本文地址:https://www.298.name/post/115.html
主要内容:零成本让AI智能体自动监控股价,触发条件就微信/邮件提醒你
版权声明:如无特别注明,转载请注明本文地址!
博主有点懒,啥也没写!
