欢迎访问369期货网 369会员登录 注册

当前位置: 主页 > 期货量化

量化交易实战24 - 自然语言处理(NPL)用于抓热点,抑或躲避关税大跌

时间:2025-10-14 15:22|来源:369期货网|作者:369期货网|点击:
就今年的股市,我们都会遇到下面这些问题:

为什么所有策略4.7号都遭受了最大回撤?
为什么这波科技牛,有的人赚的盆满钵满,有的人依旧没赚钱?

我们能不能让策略在危机爆发的初期就感知到“大事不妙”,及时抛出全部股票,从而躲过后面的大跌?

我们能不能让策略从各类新闻与媒体报道中,找到对应某个行业或概念的重大利好并迅速建仓,吃一波热点的红利?

相信不少朋友对这类问题都有自己独到的见解。

实际上,在金融领域,很多知名的机构一直在探索类似上述问题的解决方案。例如,对冲基金Two Sigma就使用了NLP(NaturalLanguage Procession,自然语言处理)技术中LDA话题模型,分析美国联邦公开市场委员会(FOMC)历年会设记录的主题,根据不同主题比例的变化趋势来分析FOMC在不同时期对于资经布会议司流的主要观点和立场。

NLP是 NaturalLanguage Processing 的缩写,翻译成中文就是“自然语音处理”。根据维基百科的定义:自然语言认知和理解是让计算机把输入的语言变成有意思的符号和关系、然后根据目的再处理。通俗地说,自然语言处理就是让计算机能够懂得我们人类的语言,并且帮我们干活。

这个更多的概念问题,感兴趣的朋友可以自己去研究一下,我这边主要是演示一下在策略中的用法。

获取新闻文本数据

关于数据问题,这边还是用聚宽的,薅一下聚宽的羊毛

图片

输入代码:

    # 导入模块from jqdatasdk import *import datetime# 获取前一天的日期yesterday = datetime.date.today() - datetime.timedelta(days=1)# 构造查询q = query(finance.CCTV_NEWS).filter(finance.CCTV_NEWS.day == yesterday.strftime('%Y-%m-%d'))# 执行查询news = finance.run_query(q)# 查看前5条print(news.head(5))

    运行代码就可以得到这样的结果:

    图片


    我们可以根据这个数据,抓起关键字,然后去计算每个关键字的比重,然后根据比重去筛选相关的个股。


    关于这个舆情数据更多的用法,就看大家自己研究了。


    编辑推荐

    Copyright © 2024-2025 成都宁时科技有限公司 版权所有

    蜀ICP备2022023994号