通达信编程的顶层设计与语法特点攻略

通达信编程使用的是通达信公式语言TDXFL与文华的麦语言同属基础的C语言,从量化为目的的编写意图看,均可作为程序化交易的首选,都是倡导积木式的编程方法,“小语法,大函数”的构建模式,其实大部分代码都是相似的,有网友把通达信、文华、同花顺重新整合了一个MYTT,放入到PYTHON中,这是更有益的尝试。

通达信编程的顶层设计与语法特点攻略

因为使用通达信习惯了,也就不再在各种软件之间跳来跳去,做期货时更习惯直接用文华,做股票时用通达信,而同花顺的题材分析似乎更加亲民一些,也就各取其长吧。

通达信的公式基础分法是两大类,一是指标,二是选股,前者的核心是图形化呈现,后者的核心是筛选,当然在指标上也可以在直接在图形上呈现诸如BUY、SELL的小箭头,从而让图形更加直观。

正是这样的设计初衷,指标类侧重的是“看图”,一类是主图,一类是副图,在编写公式时就应该明确是适用于主图还是副图,两者差别较大。

通达信编程的顶层设计与语法特点攻略

主图倾向于K线和均线的匹配分析,并侧重于对关键K线或波动带的修饰和跟踪,以便按设计者的交易系统进行要点把握。

下图是采用了缠论作为底层结构分析,并重点跟踪情绪超短,所以在盘口呈现上,对于最核心的题材数据、板块周期、开封板时间、每一日的情绪超短数据、龙虎榜数据都进行了精确呈现,堪称复盘精灵,一叶知秋。

通达信编程的顶层设计与语法特点攻略

主图风格决定了主人的风格

而副图更侧重于对关键信号的提示,特别是异常交易信号的捕捉,比如极值跟踪、背离、反转等,副图一般可以进行多指标并列,特别是不同分析角度的信号呈现,比如基本面、技术面、资金面、题材面的交叉提示,往往可以在妖股等情绪分析中暴发出巨大的时机把握能力。

下图侧重对情绪异动在成交量、主动买力、周期衰变、MACD变盘点进行了跟踪。

通达信编程的顶层设计与语法特点攻略

从对总体框架的设计可以看出,不同风格的交易者,在指标的选择和匹配上是有明显分野的,谈不上谁好谁坏,但手熟尔,都是看见你想看见的东西而已,因为我们的注意力太宝贵,不能浪费。

一般而言,围绕K线价格来做的指标大抵相似,就比如RSI、KDJ、MACD、CCI、布林等,他们的买卖点重合度高达90%以上,排列一大堆毫无意义,应该更多地从不同维度,比如价格、成交量突变、题材变迁、龙虎榜异动、机构价值分析等非同源数据的交叉比对中寻找共振点,才能及时感知不同流派交易者的心理预期差异。

通达信编程的顶层设计与语法特点攻略

最后来谈一下通达信语言中的一些特点和风格

1、通达信是以英文输入法为主环境设计的,所以通篇不能出现任何中文标点符号,也不得出现任何全角字符,所有的中文都是当做变量名来看待的,而字母清一色只有大写,没有小写;

2、每一个指标公式必须有一个名称,这个名称可以由字母、数字和中文组成,公式名称在公式中必须是唯一的,公式名称最多15个字符,但是不能以数字开头。参数定义区:每一个公式可以设计所需的参数,参数用来替代公式中所需要的常数,在使用时可以方便地调节参数,不必修改公式就可以对效果进行优化调节。参数包括参数名称、最小值、最大值、缺省值、步进值五个部分,参数名称用于标识参数,计算公式时采用缺省值计算,而最小值和最大值是参数的调整范围,步进值一般取1;

3、在选股公式中,只允许有一个输出结果,所以我们通常把最后一句赋值设置为输出结果,表现为“:”,而中间的所有变量都必须赋值为“:=”形式,换言之,不允许有指标呈现,也不得有任何修饰性语法,诸如色彩、线型、图标、柱线、提示性词语,因为所有变量的存在只有一个目的,就是计算出最后的选股结果。很多朋友在把指标改选股公式时,老是测试不过关,大抵问题出在这;

4、注释性文字都必须用一对“{}”来限定他的起止位置,注释语句仅用于标准化理解编程思想,机器不做任何解读,但每句长度仍受字条符限制,通达信最大单词数不得超过 800 个, 每行最多不能超过 1300 个字母。

5、公式计算符将函数连接成为公式,计算分为算术计算符和逻辑计算符。

A、算术计算符包括+、-、*、/,它们分别对计算符两边的数据进行加减乘除计算,这同一般意义上的算术计算没有差异。

B、逻辑计算符包括>、<、<>、>=、<=、=、AND、OR八种,分别表示大于、小于、不等于、大于等于、小于等于、等于、逻辑与、逻辑或运算,如果条件成立计算结果就等于1,否则等于0,例如:3+4等于7,4>3就等于1,3≤12就等于0,“逻辑与”表示两个条件都成立时结果才成立;“逻辑或”表示两个条件中只要有一个成立结果成立。

除了这五点,其余的我们就不在此处一一罗列了,后续我们会慢慢用到。掌握这些大原则,编译不通过的时候也大概率可以自主判断出来是哪里出了问题。

最后,我们来看一下通达信的主要函数分类

1\序列行情函数(OPEN、CLOSE、HIGH、LOW、VOL等)

2\大盘函数(INDEXA、INDEXC、INDEXH等)

3\常数函数(包括关联财务函数、专业财务函数和动态行情函数等)

4\时间系统函数(DATE、DAY、TIME等)

5\引用函数(MA、HHV、COUNT、REF、SUM、SMA等)

6\逻辑算术函数(IF、CROSS、NOT等)

7\数学函数(MAX、MIN、LN、三角函数等)

8\统计函数(STD、VAR、AVEDEV等)

9\指标形态函数(PEAK、SAR、COSET、WINNER、ZIG等)

10\绘图函数(DRAWLINE、DRAWTEXT等)

11\板块字符函数(CODE、HYBLOCK等)

12\资金流向函数(L2_AMO(N,M)、ACTINVOL等)

今天的内容特别庞杂,能看到这里真应该给自己点个赞,建议收藏后,随时复习,当然,这些东西是不需要背的,我们又不高考最好是打开公式管理器里逐一看一遍,清楚有些什么东西,需要时再研究不迟,也应该不断地找度娘交流交流,自然熟能生巧。

这一篇攻略算是一个加篇,工欲善其事,必先利其器,参观完了武器库,余下的是思考如何交易,我们不是码农,学习代码,不是因为天下没有最适合我们的工匠,而是要在江湖行走中慢慢缘份。

通达信编程的顶层设计与语法特点攻略

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/78397
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 2024 年 7 月 15 日
下一篇 2024 年 7 月 15 日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注