通达信提示内存不足,出现在运行复杂指标、条件选股、预警公式或跨周期引用公式时。通达信公式系统本身支持技术指标、条件选股、交易系统、五彩K线等,用户可以通过公式管理器自由编写公式,但公式越复杂、引用数据越多、计算越大,占用的内存就越高。遇到“内存不足”时,可以从限制计算范围、优化公式清理数据、调整软件设置和升级几个方向处理。
. 在公式中限制计算线数量:这是最直接的方法。打开公式管理器,找到报错的公式,在开头加入 SETTORANGE(500); 或SETTORANGE();`,表示只计算最近500根或100根线。很多公式默认从上市第一天开始计算,数据量过大就容易触发内存不足。限制范围后,指标、选股和预警的计算量会明显下降。
2 精简公式逻辑:通达信公式虽然灵活,但不适合写过于复杂的循环和。如果公式中使用了 FOR、WHILE,应尽量改成数组或条件判断。避免HHV(H,)、LLV(L,)、SUM(V,) 这类从全历史开始统计的写法,改成周期,例如 HHV(H,)、LLV(L,250)、SUM(V60)。REF 嵌套太深,合并的条件尽量合并。
3 减少跨周期和跨品种引用公式里频繁使用 C#DAY、C#MIN5、V#WEEK 等周期引用,会额外加载不同周期数据。引用越多,内存占用越大。如果只是做日线选股,尽量不要在公式里同时引用分钟、周线、月线数据。确实需要跨周期时,可以单独写一个简化公式,分步骤计算。
- 选股和预警时范围:条件选股不要每次都选全部A股。可以先把选股范围设为自选股、某个板块或行业,或者先加入“流通市值大于50亿”“换手率大于1%”等基础条件过滤掉大量股票。预警公式也不要同时开启太多,关闭不用的预警,减少后台计算。历史阶段选股时,尽量缩短时间段,不要一次计算十年以上数据。
- 通达信数据与缓存:长期使用后,通达信的日线、分钟线、财务数据和缓存文件会占用大量空间,也可能影响公式计算。可以通过“管理”或“盘后数据下载”清理不必要的数据,只保留自己关注的品种和周期。安装目录下的缓存文件不建议手动乱删,最好用软件自带的数据清理功能。后重启通达信,再运行公式。
7.增加虚拟内存和物理内存**:如果电脑物理内存较小,例如4GB8GB,同时运行多个行情软件、浏览器和办公软件,很容易出现内存不足。可以在Windows的“高级系统设置”中调整虚拟内存,建议设置为物理内存的1.到2倍,交给系统自动管理。条件允许时,把内存升级到16GB以上,对通达信多窗口、多公式运行会有明显改善。
- 64位版本或升级软件:32位通达信受地址空间限制,单个能使用的内存有限,公式计算量大时更容易报内存不足。可以到通达信官网或券商官网下载64位金融终端版本。升级到较新版本也能修复部分内存管理问题。如果使用的是券商定制版,可以咨询券商是否有64位版本或最新升级包。
- 拆分复杂公式:如果一个公式同时完成指标绘制、条件判断、选股输出和预警信号,建议拆成多个公式。例如把选股条件单独写成条件选股公式,把画线部分单独写成技术指标公式。选股公式中不要使用
STICKLINE、DRAWTEXT`DRAWICON等绘图函数,函数会额外消耗资源。拆分的公式分别运行,内存压力会小很多。







