通达信函数中的 FILTER 和 EXIST 到底有什么区别?

如题所述

在通达信的函数中,FILTER和EXIST这两个词虽然相似,但它们的功能和应用有着显著的区别。首先,从时间概念上讲,EXIST关注的是过去,它查找的是在给定条件(如CLOSE>OPEN)下在过去(如五天内)存在的情况,一旦满足条件,即使只有一天,也会返回TRUE。然而,FILTER则是前瞻性的,它指的是未来,如果今天的收盘价大于开盘价,FILTER会检查接下来的五天,不论是否满足条件,都会返回FALSE。

在使用条件上,FILTER并非计算函数,而是筛选工具。它可以与Calculate函数配合,或者与聚合函数如Countrows一起使用,例如Countrows(filter(表,筛选条件))来统计满足条件的行数。FILTER的语法灵活,允许嵌套,表、筛选条件都是其关键组成部分。

尽管EXIST更适合于判断历史事件,FILTER在实际操作中更常用于指标图,以避免重复显示相同的图标。然而,FILTER并不直接用于选股,而是作为辅助工具使用。

而谈到扩展,FILTER这个词在编程中也有其特定含义。在PHP中,Filter是一个COM组件,主要用来处理数据流,分为Source Filter(输出流)、Transform Filter(输入和输出流)和Renderer Filter(输入流)。通常,Filter项目通过CoCreateInstance函数在Win32 DLL项目中创建,与应用程序以二进制级别协作。

总结起来,FILTER和EXIST在通达信函数中有着截然不同的应用场景和功能,一个关注历史,一个指向未来,理解和区分它们有助于更准确地在实际操作中运用。
温馨提示:答案为网友推荐,仅供参考
相似回答