龙凤呈祥!如何用量化分析方法发现这种无厘头炒作?

2024-01-30 20:20

本文主要是介绍龙凤呈祥!如何用量化分析方法发现这种无厘头炒作?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作为量化人,我们敏锐地观察市场,不放过任何一个可能产生利润的机会。一旦发现这样的机会,我们决不会在乎其它人怎么看怎么想,书上有没有这么讲。但是,大胆假设,小心求证。

今天带来的因子,挺魔幻的,我把它叫做魔性汉字。如果你难以接受这种无底线的炒作,那么,我们换一个名字:另类因子。

2023年底,市场开始炒作龙字,后来又开始炒凤字,被戏称为龙凤呈祥。2024年的年度汉字可能是华。这是一种魔幻和无厘头的炒作。但就像一年有四季一样,A股一年至少会这样魔幻地炒一次。

在历史上并不罕见。老股民会记得在2018年底,2019年初,出现了一支十倍牛股,东方通信。它带动了对”东方“这个词的炒作。一时间,只要标的名称中带有”东方“两字的,都能沾上一点雨露。

现在我们就来看看,要怎么实现这个因子。

在这里插入图片描述

我们略过如何获取涨停名单的过程。无论是使用akshare,还是jqdatasdkq都可以拿到历史涨停数据。

在寻找最热的词时,我们先是去掉”股份、科技和控股“这几个词。它们在名称中出现太过频繁,按照TF-IDF的理论,过于频繁出现的词是没有信息量的。

# 使用的数据源在证券名称上,没有提供PIT数据。当前已退市的标的,
# 其名字为None。我们要先滤掉这部分。注意这里已经引入了一个回测
# 偏差
text = " ".join(filter(lambda x: x, df["alias"]))# 排除掉没有信息量的词
cleaned = re.sub(r"股份|科技|控股", "", text)

接下来我们处理热词。根据观察,热词可能是像”东方“这样的两个字的词,也可能是像”龙“、”兔“这样的单字词。所以我们要分两批处理,并且把两字词放在前面。

    for word in jieba.cut(cleaned):if word == " " and len(word) != 2:continueif word in two:two[word] += 1else:two[word] = 1

这里我们使用了结巴分词(jieba)。我不太清楚现在的情况,但直到2021年,它一定是Python汉语分词的翘楚。它的作用是,将”东方通信“这样的词,分解为”东方“和”通信“这样两个词。如果”东方航空“也上榜的话,那么它会被分解为”东方“和”航空“,从而”东方“获得两分,通信和航空各获得1分。

类似的方法处理单字词。我们得到的结果(像two)是一个集合。为了取计数最高的字(词),我们要对其进行排序:

two = sorted(two, key = lambda x: x[1], reverse=True)

这是非常常用的语法了。

构建板块并不难,但是我们得利用证券列表。这也是我们讲的,任何数据源,在你购买之前,必须要考察它是否具务的几个基本API。如果像证券列表这样的API没有的话,那么几乎无法编写任何策略。

获得某日未涨停个股的清单后,我们就可以取该日及此后10天的行情数据,然后通过pandas的pct_change来计算1,5和10日持有收益。

在因子分析中,这类函数通常叫forward_returns,所以,我们这里也将其命名为get_forward_returns,这样代码更容易阅读。

async def get_forward_returns(dt: datetime.date, n=10):...end = tf.day_shift(dt, n)barss = {}for sec in secs:bars = await Stock.get_bars(sec, n+1, FrameType.DAY, end=end)if len(bars) != n + 1:continuebarss[sec] = bars["close"]df = pd.DataFrame.from_dict(barss)returns = []for period in (1, 5, 10):returns.append(df.pct_change(period).mean())df = pd.concat(returns, axis=1).rename(columns={0:"1d", 1:"5d", 2:"10d"})mn = df.mean()print(f"{dt} {concept} 1D: {mn.iloc[0]:.2%} 5D: {mn.iloc[1]:.2%} 10D: {mn.iloc[2]:.2%}")return df

在处理过程中,我们就已经打印出了当日板块的1、5和10日未来收益(如果当天存在这种题材炒作的话),以便调试。另外,我们也返回这个收益结果,以方便进一步处理。

最后,我们选择2019-2-10到2019-3-5这个区间运行了一下,结果是:

你的钱就是这样被赚走的。打不过就加入吧!

原文代码发布在我们的策略预览环境。如果想亲自体验下结果,了解不同时间段大A都在炒什么,欢迎进入策略预览环境运行体验。

了解如何进入预览环境,请看这篇文章:如何使用策略研究环境(免费)

这篇关于龙凤呈祥!如何用量化分析方法发现这种无厘头炒作?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/661429

相关文章

【微服务】Ribbon(负载均衡,服务调用)+ OpenFeign(服务发现,远程调用)【详解】

文章目录 1.Ribbon(负载均衡,服务调用)1.1问题引出1.2 Ribbon负载均衡1.3 RestTemplate整合Ribbon1.4 指定Ribbon负载均衡策略1.4.1 配置文件1.4.2 配置类1.4.3 定义Ribbon客户端配置1.4.4 自定义负载均衡策略 2.OpenFeign面向接口的服务调用(服务发现,远程调用)2.1 OpenFeign的使用2.1 .1创建

量化交易面试:什么是连贯风险度量?

连贯风险度量(Coherent Risk Measures)是金融风险管理中的一个重要概念,旨在提供一种合理且一致的方式来评估和量化风险。连贯风险度量的提出是为了克服传统风险度量方法(如VaR,风险价值)的一些局限性。以下是对连贯风险度量的详细解释: 基本概念: 连贯风险度量是指满足特定公理的风险度量方法,这些公理确保了风险评估的一致性和合理性。 这些公理包括:非负性、次可加性、同质性和单调

Matlab)实现HSV非等间隔量化--相似判断:欧式距离--输出图片-

%************************************************************************** %                                 图像检索——提取颜色特征 %HSV空间颜色直方图(将RGB空间转化为HS

升级kali系统 进入后发现一直蓝屏

因为要出去晚饭 结果回来重启发现 一直蓝屏 感觉可能是升级过程中 什么软件的安装或者配置出了问题 就直接长按电源重启进入恢复模式 选择最新版的recovery Mode 然后输入  dpkg --configure -a 之后reboot重启  一切正常!

涉密电脑插U盘会不会被发现?如何禁止涉密电脑插U盘?30秒读懂!

在涉密电脑插U盘的那一瞬间,你是否也好奇会不会被发现?涉密电脑的安全监控可是滴水不漏的!想知道如何彻底禁止涉密电脑插U盘?简单几招搞定,轻松锁死外部设备,信息安全无懈可击! 涉密电脑插U盘会不会被发现? 涉密电脑是否会在插入U盘时被发现,需要根据具体情况来判断。在一些情况下,涉密电脑可能没有安装任何监控软件或安全工具,插入U盘可能不会立即触发警告。然而,随着信息安全管理的不断升级,越来越多

API安全 | 发现API的5个小tips

在安全测试目标时,最有趣的测试部分是它的 API。API 是动态的,它们比应用程序的其他部分更新得更频繁,并且负责许多后端繁重的工作。在现代应用程序中,我们通常会看到 REST API,但也会看到其他形式,例如 GraphQL 甚至 SOAP。 当我们第一次对某个目标进行安全测试时,我们需要做大量研究,以了解其主要功能以及它们在幕后如何工作。建议花一些时间来阅读有关目标及其服务的信息。例如,如果

linux 使用ffpmeg 发现转化目标必须是一个路径

一直有个疑惑  就是使用ffpmeg转码时,源文件和目标文件到底可以传URL地址还是必须为路径    下面就将实验 请看如下代码: 当源文件为一个URL地址时 ,目录为地址时  转码不成功 /usr/local/ffmpeg/bin/ffmpeg --ss 00:00:00 -t 0.01 -i http://www.baidu.com/1.mp4 -y -q:v 2 -f image2 h

期货赫兹量化-种群优化算法:进化策略,(μ,λ)-ES 和 (μ+λ)-ES

进化策略(Evolution Strategies, ES)是一种启发式算法,旨在模仿自然选择的过程来解决复杂的优化问题,尤其在没有显式解、或搜索空间巨大的情况下表现良好。基于自然界的进化原理,进化策略通过突变、选择等遗传算子迭代生成解,并最终寻求全局最优解。 进化策略通常基于两个核心机制:突变和选择。突变是对当前解进行随机扰动,而选择则用于保留适应度更高的个体。本文详细介绍了 (μ,λ)-ES

发现个有趣的东西:Tweetable Mathematical Art(用三个140字符以内的函数生成一个1024尺寸的图片)

发现 我是在看《构建之法》这本书时,看到作者提到这个: 好厉害!用三段140字符以内的代码生成一张1024×1024的图片_IT新闻_博客园 这是2014年一个人在 Code Golf Stack Exchange (a question and answer site for programming puzzle enthusiasts and code golfers) 发起的编程挑战:

10分钟理解大模型的量化

1. 什么是量化 量化是大模型领域中的一项关键技术,它通过降低模型参数的精度,将浮点数转换为整数或定点数,从而实现模型的压缩和优化。这样做的主要目的是减少模型的存储需求、加快推理速度,并降低模型的计算复杂度,使得大模型能够更高效地在资源受限的设备上运行,例如移动设备、嵌入式系统等场景。 2. 精度 先来看下数据存储的基本概念 bit 位是计算机中最小的数据单位,只能存储 0 或 1 两种