行业资讯

加入亿拓客·流量大师 撬动财富之门!!!

券商封了本地接口?如何采用DLL共享内存技术进行信息传递

wang 2026-10-26 行业资讯
券商封了本地接口?如何采用DLL共享内存技术进行信息传递

最近,量化圈出了个新规:个人股票量化系统,不能读取本地文件,也不能通过网络连接外部获取数据,只能用券商提供的功能。

这意味着一大堆靠爬取外部舆情、读取本地DB数据的策略直接瘫痪。很多朋友抱怨,以前通过 TCP/IP 或 SMTP 邮件发交易信号的方式,现在在代码里全被禁用了。

但我常跟人说:技术问题从来不是问题,无非是时间、成本、效率之间的三角关系。 只要底层的物理机还在你手里,通道就永远存在。

既然应用层(7层)和传输层(3层)被盯上了,那我们就直接降维,走操作系统底层——Windows 自带的“共享内存”技术。

我以前在做跨平台交易时,就设计过一套极其野路子的信号交换架构,现在刚好派上用场。

我的信号路径是这样的:
信号源 ➡️ DLL ➡️ Python ➡️ TCP/IP(或共享内存) ➡️ 接收端。

具体怎么玩?

  1. 信号源:无论是我的 ETF 策略、还是量化信号,先连接到动态链接库(DLL)。

  2. DLL 处理:DLL 收到信号后,直接传递给 Python。这里我用的是 C语言 编写的 DLL(最开始用 C++,遇到各种内存崩溃的坑,后来发现 C 语言才是王道)。代码里引入了必要的库,直接通过 sendcomm.c 进行底层通信。

  3. Python 枢纽:Python 收到信号后,就不会受制于券商的网络封锁,可以通过共享内存把数据扔出去。

  4. 接收端反转:接收端的逻辑完全反过来,python ➡️ 共享内存 ➡️ DLL ➡️ 接收端。

如果中间需要用到服务器中转,我以前用的是 Linux 搭建的 MQTT 服务器(代码依然在),或者用 SMTP 协议传递。至于到底用哪种,完全取决于你的业务需求。

以sendcomm.c的部分源代码。需要用到库也列明了。
以下是发送端的PYTHON程序部分源代码、
以下 是接收端的PYTHON部分源代码。
因为我之前信号中转用的服务器是LINUX,传递方式用的是MQTT,以下是中转服务器的部分源代码、
这样,通过共享内存技术就可以把信息进行传递 ,至于是用MQTT还是用SMTP,就根据业务需求逻辑特征进行选择,但是总体架构是一样的。

猜你喜欢

发表评论

发表评论: