第一章公式教程:公式编写规则、实例及常用技术指标选股说明
<股票配资公司>第一章公式教程:公式编写规则、实例及常用技术指标选股说明股票配资公司>
第一章公式教程
简介
公式编写规则
公式编写实例
系统函数说明
常用技术指标
选股
第1节简介
TDX的公式系统是一套功能强大、使用简单的计算机描述系统。用户
可以通过对每日深沪两地交易所和历史上发送的行情数据按照简单的运算
法则进行分析、选股、测试,在TDX当中一共提供了四大类公式编辑器:
1.1
技术指标公式编辑器
技术指标公式即通常所说画线指标,此类公式的主要目的是通过对数
据采取一定的运算,将输出结果直观的显现在分析图上,为投资者提供研
判行情的基本依据。此类指标至少要有一条输出线,本系统允许最多6条
的输出线。
技术指标公式编辑器实现对技术图表分析中各类技术指标和自我定义的技
术分析指标的编写,并且通过TDX的分析界面形成图表、曲线,以方便和
寻找有意义的技术图形和技术特征。
1.2
条件选股公式编辑器
也就是通常意义上解释的智能选股。但我们的目的在于建立一个完全
开放、自由的选股平台,可以通过对该平台的熟练使用,借助计算机的高
速和准确的检索功能寻找满足您的理解的股票形态和技术特征,作到先知
先觉,快人一步!并且提供相应的同样开放式的结果检测报告。
1.3
五彩K线公式编辑器
准确讲,该编辑器的功能是附属于条件选股功能之上的,我们可以通
过该功能将满足条件的连续K线形态赋予颜色,区别了其它的K线。
条件选股公式与五彩K线公式的区别:
条件选股公式和五彩K线公式都有且仅有一个输出,其目的都是为投
资者提供买入或卖出点的指示,不同之处在于:条件选股公式仅对最近数
据提示买入或卖出,而五彩K线公式则对输入的所有历史数据进行提示。
另外,五彩K线公式的输出是在K线图上,通过各种颜色对提示数据进行
标识,条件选股公式的输出是找出符合最近条件的所有股票。
1.4
交易系统公式编辑器
交易系统公式是通过设定买入和卖出点(有且仅有这两个输出),由计
算机进行模拟操作。以此为依据,系统一方面可以进行五彩K线公式的功
能,同时提示买入和卖出;另一方面可以通过模拟操作,对指标买卖的收
益、指标的最佳参数及最佳指标等各情形进行测试。
交易系统是在条件选股功能上的一次大的延伸,旨在建立一套完整的
交易规则体系,通过该编辑器对各个相关的交易环节,包括买入的切入、
卖出、止损以及整体的交易性能检验等等作出定量的规定,帮助投资者建
立一套属于自己的买卖规则和理论。
TDX系统所有的分析方法,包括技术指标、条件选股、交易系统和五
彩K线,均采用开放平台进行描述。也就是说,所有分析方法的算法对用
户时开放的,任何人都可以对原算法进行修改,或增加自己的新算法。
1.5
公式管理器
快捷键:〖Ctrl〗+〖F〗
在公式管理器中,用户可以对系统公式进行全面管理,包括新建公式,
修改公式算法、引入、输出公式、设置组合条件等。
公式管理器用树形结构显示系统中存在的所有分析方法,包括指标公
式、条件选股公式、交易系统公式、五彩K线公式和组合条件。需要对哪
一类公式进行处理,可以用鼠标点取将该类公式展开,直到找到需要的公
式名称。
查找公式可以从公式组、全部、系统和自编四种列表方始中选择,公
式组方式便于分类管理,全部方式便于有公式名称直接查找,系统方式便
于系统内置常用指标的快速查找,而自编方式则便于查找自己编写的或从
外部引入的公式。
公式管理器可管理四种类型的公式:
指标公式:用于指标图形的绘制。
条件选股公式:用于条件选股。
交易系统公式:用于专家指示及测参、测指。
五彩K线公式:用于K线模式指示。
这四种公式相互独立,名称可以相同,但其内容和作用不同。
每种类型的公式包括四种形式:
系统加密公式:用绿色图标和锁形符号显示,要进行密码确认
系统公式:用绿色图标显示,可进行删改
用户加密公式:用红色图标和锁形符号显示,要进行密码确认
用户公式:用红色图标显示,可进行删改
指标公式附加买卖逻辑判断式,得到交易系统公式;指标公式附加选
股条件逻辑判断式,得到条件选股公式。指标公式附加色彩逻辑判断,得
到五彩K线公式。
1.6
公式编辑器
调出公式管理器方法:
1.点击〖新建〗或〖修改〗按钮;
2.鼠标左键单击指标线、指标参数选中指标,再用右键单击,弹出的
对话框中选中“修改指标公式”,系统弹出公式编辑器。
公式编辑其中包含许多输入窗口和按钮,功能分别为:
〖公式名称〗用于识别公式,最多可以有9个字符,该名称在每一类
分析方法必须唯一,例如不能出现两个MA技术指标,但可以出现一个MA
技术指标和一个MA条件选股指标。
〖公式描述〗简单描述该指标的用途,可以输入任意字符。
〖密码保护〗选中密码保护,表示将对该公式加密,加密密码输入到
密码输入框中。对于已加密的公式,今后对它进行修改和查看必须先输入
密码,在输出公式到文件时也需要密码。要去掉密码,点击“密码保护”,
使它前面的√消失即可。
〖画线方法〗这组单选按钮用于指定指标公式类型,紧密围绕股票价
格变化的指标可定为主图叠加类型,叠加在主图上显示;否则定为副图指
标,显示在副图上。(仅在编辑技术指标公式时出现)
〖参数〗公式可以带有0-6个参数,使用参数可以方便地使用中需要
修改得数值进行调整。每个参数需要设定参数名称、最小值、最大值和缺
省值。
〖坐标位置〗可指定在某些特殊位置画水平坐标线,例如对RSI第一章公式教程:公式编写规则、实例及常用技术指标选股说明,可
以输入:0;20;50;系统将在这三个数值处绘制三条水平坐标线。缺省时为
“自动”,即系统据实际情况定水平坐标线。(深红色线) (仅在编辑副
图技术指标时出现)
〖额外 Y 轴分界〗:在副图坐标中显示重要的数值分界线(白色线);
〖测试公式〗检查公式的语法错误。
〖引入指标公式〗以系统已有的某个指标公式为蓝本,新建自己的指
标公式。
〖插入函数〗显示选择函数对话框,帮助您在通达信函数集中寻找所
需函数。当您对系统提供的标准函数还不熟时,这个功能可帮你节省时间。
〖用法注释〗供用户输入指标算法、用法的解释,在使用公式时提示
操作方法及注意事项。
〖动态提示〗用户输入指标、算法或函数时,同步提示中文语意。
〖参数精灵〗在使用分析工具时,很多时候用户都需要调整参数,但
很多用户无法理解对参数调整的实际意义。使用参数精灵,可以将参数调
整及参数意义放在同一段文字中,方便用户使用。
用户在使用分析方法时,会在指标旁边显示参数精灵的内容。参数精
灵的内容是由公式剪辑者输入的一段文字,该文字描述了参数的使用方法,
并且可以将参数设置与文字混合编辑。方法是用 Param#N 来代替参数即可。
例如:公式中有两个参数 M 和 N,需要描述当 M 日均线与 N 日均线金
叉时买入,可以这样写参数精灵:
Param#1 日均线与 Param#2 日均线发生金叉,发出买入信号
在实际使用该分析方法时,系统将显示:
5 日均线与 10 日均线发生金叉,系统发出买入信号
其中被包围在输入框中的 5 和 10 是参数,用户可以直接修改这些参数,
而实际运算时将采用这些参数进行计算。
使用参数精灵大大降低了公式的使用难度。
〖公式编辑窗〗公式编辑窗用于书写分析方法的算法,是公式编辑器
的核心部分。用户可以将自己的算法用公式语法书写到编辑窗中,关于公
式语法请参见附录。
公式编辑器在使用上十分灵活,支持丰富的键盘操作和鼠标操作。
基本的键盘定义如下所示:
热键
↑、↓、←、→
Ctrl+P
Ctrl+A
Ctrl+C
Ctrl+V
Ctrl+Z
Ctrl+Y
Ctrl+↑
Ctrl+↓
Ctrl+←
Ctrl+→
Ctrl+Home
功能
上,下,左,右移动光标
插入/覆盖切换
括号匹配查找
全选
复制选中文本
粘贴文本
取消操作
恢复操作
上滚一行
下滚一行
左移一个单词
右移一个单词
移至文件最头部
Ctrl+End 移至文件最尾部
Ctrl+鼠标左键 选中当前鼠标下的一个单词
Ctrl+鼠标右键 在钩槽中将全部文本选中
Shift+↑
向上选中一行
Shift+↓ 向下选中一行
Shift+← 向左选中一个字母
Shift+→ 向右选中一个字母
Shift+鼠标左键 在钩槽中将当前一行文本选中
Ctrl + Shift +
←/→
以单词为单位的选中
Ctrl + Shift +
Space
显示当前函数或指标的 提示(只在函数内部有效)
TAB 键
存在选中文本时,若是多行,将选中文本全部右移一个 TAB
能的距离),若是单行,将选中文本删除后右移一个 TAB
存在选中文本时,简单右移一个 TAB 单位
Shift+TAB 键 将选中文本左移一个 TAB 单位(只在右多行选中文本时有效)
鼠标右键单击 右键菜单
鼠标左键双击 选中当前光标下的一个单词
名称 含义
STICK 彩色柱状线,当值为正时显示虹色,否则显示绿色。
为线形赋色,
为线形赋红色
为线形赋蓝色
表示黄色线
成交量柱状线,股价上涨显示红色空心柱,则显示绿色
同时画出柱状线和指标线
对线体的粗细作出描述
小叉线
小圆圈线
小圆点线
黑色
蓝色
绿色
青色
红色
洋红色
棕色
淡灰色
深灰色
淡蓝色
淡绿色
淡青色
淡红色
淡洋红色
A 黄色
单位(智
单位;不
第2节 公式编写规则
所有的公式系统都是遵守统一的运算法则,统一的格式进行函数之间
的计算,所以我们掌握了技术指标公式的基本原理,其他的公式也不会出
脱其外。例如指标公式:KDJ,右键点击 KDJ,选择“编辑公式”后打开公
式算法编辑器,显示出 KDJ 指标公式的内容。
参数名称:缺省值,最小值,最大值
N:9,1,10O
M1:3,2,40
M2:3,2,40
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);
D:SMA(K,M2,1);
J:3*K-2*D;
该公式绘制 K、D、J 三条指标线。RSV 行是一个中间语句,计算当期
收盘价与 N 天内最低价之差除以 N 内最高价与最低价之差的比值,再乘以
系数 100。K 线为 RSV 的 M1 天移动平均线,D 线为线 K 的 M2 天移动平均线,
J 线为 K 线与 J 线的差值。
分析以上公式,我们可以引出以下相关的格式和法则的结论:
2.1
数据引用
A 数据来源
公式中的基本数据来源于接收的每日行情数据,这些数据由行情函数
从数据库中按照一定的方式提取,例如、高开低收、成交量、 成交额等等。
B 数据类型
按照公式使用的数据类型,系统可以处理的数据分为两类:变量和常
量。所谓变量就是一个随着时间变化而变化的数据,例如成交量;常量就
是永远不变的数据。例如 3,每个函数需要的参数可能是变量也可能是常
量,不能随便乱用,函数计算的结果一般是一个变量。
例如计算收盘价均线 MA(CLOSE,5),MA 函数要求第一个参数为变量,
而 CLOSE 函数返回的正是一个变量;MA 函数要求的第二个参数是常量,5
就是一个常量,所以我们就不能这样书写:MA(5,CLOSE)。
2.2
特殊数据引用
A 指标数据引用:
经常地编制公式的过程当中,需要使用另外一个指标的值,如果按照
通常的做法,重新编写过这个指标显得麻烦,因此有必要学习使用如何调
用别的指标公式。
基本的格式为:“指标.指标线”(参数)
a) 指标和指标线之间用逗号分开,一个指标不—定只有一条指标线,
所以有必要在指标后标注指标线的名称,但是如果缺失则表示引用最后一
条指标线。
b) 参数在表达式的末尾,必须用括号括起来,参数之间用逗号分开,
通过参数设置可以选择设定该指标的参数,如果参数缺失则表示使用该指
标的默认参数设置。
c) 整个表达式用引号引在其中,除参数以外。例如:“MACD.DEA”
(26,12,9)表示计算 MACD 指标的 DEA 指标线。计算参数为 26、11、9,
(26,12,9)表示该指标的最后一条指标线,计算参数是 26、12、9, “MACD”
表示该指标的最后—条指标线并且使用公式的默认参数。
B 跨周期引用指标数据:
a) 引用大盘数据:引用大盘数据时使用下列函数: /NDEXV,
等等!
b) 引用个股数据:引用个数据时使用下列格式:“股票代码$数据”.在以
上格式当中调用 CLOSE,VOL, 等等!例如“$VOL'表
该股本周期的成交量。“$CLOSE"同样也可以表示为 A 股指数本周期
的收盘价,此时的 A 股指数被视为一只个股。
C 其它股票数据引用:
使用以下的格式可以在当前的分析界面下引用大盘的数据或者其它个
股的数据实现横向上的对比。
a) 引用大盘数据:引用大盘数据时使用下列函数: /NDEXV,等等!
b) 引用个股数据:引用个数据时使用下列格式:“股票代码$数据”.在以
上格式当中调用 CLOSE,VOL, 等等!例如“$VOL'表
该股本周期的成交量。“$CLOSE”同样也可以表示为 A 股指数本周
期的收盘价,此时的 A 股指数被视为一只个股。
2.3
公式构成
A 公式语句
所有的公式体由若干语句按照一定的格式组成,每个语句表示一个计
算结果,根据各个语句的功能分为两大类语句,一类是赋值语句,一类是
中间表达式。
B 赋值语句:
Ctrl+End 移至文件最尾部
Ctrl+鼠标左键 选中当前鼠标下的一个单词
Ctrl+鼠标右键 在钩槽中将全部文本选中
Shift+↑
向上选中一行
Shift+↓ 向下选中一行
Shift+← 向左选中一个字母
Shift+→ 向右选中一个字母
Shift+鼠标左键 在钩槽中将当前一行文本选中
在技术指标“B:AZ”和“c:B*0.618”就是分别两条指标线,语句间
用分号隔开。该语句被称为赋值语句,在技术指标当中,赋值语句的计算
结果将会被计算机执行并形成相应的图形。每个语句可以有一个名称,该
名称写在语句的最前面,并用一个冒号将它与语句分隔开。例如:ST:
MA(CLOSE,5);表示该语句求收盘价的五日均线,语句的名称为 ST。在该
语句后的语句中可以直接用 ST 来替代 MA(CLOSE,5),例如:MA(ST, 5)
表示对收盘价的五日均线再求五日平均。
C 中间语句;
一个语句如果不需要显示,可以将它定义为中间语句,例如在上例当
中的第一句“A:=X+Y;”,这样该语句就不会披系统辨认为是指标线了。
中间语句用“:=”替代冒号,其它与一般语句完全一样。使用中间语句可
以有效降低公式的书写难度,还可以将需要重复使用的语句定义成中间语
句以减少计算量。每个公式最多可以分 6 个语句,中间公式数量没有限制,
所有语句之间需要使用分号隔开。
D 公式计算符
公式计算符将函数连接成为公式。计算分为算术计算符和逻辑计算符。
a)算术计算符
包括十、一、*、/,它们分别对计算符两边的数据进行加减乘除计算,
这同一般意义上的算术计算没有差异。
b)逻辑计算符
包括>、=、3 就等于 1。“逻辑
与”表示两个条件都成立时结果才成立:“逻辑或”表示两个条件中只要
有一个成立结果成立。例如:4>>=4 的结果等于 1,4>3 0R 3>12 的
结果等于 1。
E 线形描述符
对于技术指标公式可以在语句加上线形描述符.用来表示如何画该语
句描述的指标线。线形描述符包括以下 7 种。描述符写在语句后分号前,
用逗号将它与语句分隔开通达信指标公式编写教程,例如在上例当中加入一句线形描述符,c:
B*0.618,;该语句在被执行时,会在图中添加彩色柱线,该功
能在编制 MACD 等指标的时候会显出它的用处。
柱状线
Ctrl+End 移至文件最尾部
Ctrl+鼠标左键 选中当前鼠标下的一个单词
Ctrl+鼠标右键 在钩槽中将全部文本选中
Shift+↑
向上选中一行
Shift+↓ 向下选中一行
Shift+← 向左选中一个字母
Shift+→ 向右选中一个字母
Shift+鼠标左键 在钩槽中将当前一行文本选中
Ctrl + Shift +
←/→
以单词为单位的选中
Ctrl + Shift +
Space
显示当前函数或指标的 提示(只在函数内部有效)
TAB 键
存在选中文本时,若是多行,将选中文本全部右移一个 TAB
能的距离),若是单行,将选中文本删除后右移一个 TAB
存在选中文本时,简单右移一个 TAB 单位
Shift+TAB 键 将选中文本左移一个 TAB 单位(只在右多行选中文本时有效)
鼠标右键单击 右键菜单
鼠标左键双击 选中当前光标下的一个单词
名称 含义
STICK 彩色柱状线,当值为正时显示虹色,否则显示绿色。
为线形赋色,
为线形赋红色
为线形赋蓝色
表示黄色线
成交量柱状线,股价上涨显示红色空心柱,则显示绿色
同时画出柱状线和指标线
对线体的粗细作出描述
小叉线
小圆圈线
小圆点线
黑色
蓝色
绿色
青色
红色
洋红色
棕色
淡灰色
深灰色
淡蓝色
淡绿色
淡青色
淡红色
淡洋红色
A 黄色
a) 等三个线形描述符还可以自定义颜色,格式为 COLOR+
“”:BB、GG、RR 表示蓝色、绿色和红色的分量,每种颜色的取值
范围是 00-FF,采用了 16 进制。例如:MA5:MA(CLOSE,5),
表示纯红色与纯绿色的混合色: 表示淡蓝色和淡绿色的混合
色。
b) 可以允许对线型的粗细进行白定义的描述,格式
+(1-9)”;参数的取值范围在 1—9 之间,“”表示
最细的线,而“”表示最粗的线;
2.4
关于无效数的问题
所谓无效数即指没有数据。在某些情况下,一些数据项可能取不到数
据,这时返回值为无效数。例如,MA(CLOSE,500),其含义是该股票最近
500 天收盘价的均价,如果有些公司上市时间较短没有 500 天,则其值为
无效数。反应在分析图上则该指标线不显示。在 TDX 分析系统中函数
代表无效数,可作为常数使用。
无效数与任何数作计算,其结果仍为无效数。例如:7* 得到的
结果仍为 。
第3节
公式编写示例
公式示例
指标公式:均线通道
选股公式:均线通道
五彩 K 线公式:均线通道
交易系统公式:均线通道
颜色参数应用:MACDK
新增函数应用:(X)
新增函数应用:(板块名称)
3.1
简单公式
这里举一些最简单的公式例子,有些只有一条语句且函数简单,较复
杂的公式中函数复杂且语句较多。
收盘价线
这是最简单的公式:
CLOSE;
均线
计算 N 日内收盘价的算术平均值,它是最常用的指标之一,公式为:
MA(CLOSE,5);
其中的 MA(X,N)表示 X 的 N 日平均。
涨幅
涨幅指今日收盘价相对于昨日收盘价的变动幅度,即(今日收盘价-
昨日收盘价)/昨日收盘价*100%, 昨日收盘价的公式为:REF(CLOSE,1),
因此涨幅的公式:
(CLOSE-REF(CLOSE,1))/REF(CLOSE,1);
换手率
换手率指当期的成交量占流通股本的比例。
公式:
VOL/;
VOL 为当期成交量, 为流通股本。
创新高
创新高指当日最高价是最近一段时间的最高价:
HIGH=HHV(HIGH,N);
其中的 HIGH 为当期最高价,HHV(X,N)是求 N 周期内 X 最高值。因此
该公式的含义是当日最高价创N日新高时返回值为1,否则为0。
横盘整理
横盘整理指最近一段时期价格在一定幅度之内摆动:
(HHV(CLOSE,10)-LLV(CLOSE,10))/CLOSE
其中的 LLV(X,N)是求 N 周期内 X 最低值。因此该公式表示 10 日收盘
价振幅振幅在 5%以内。
区间统计
例如,要取得 2002 年 2 月 1 日到 2002 年 12 月 30 日间的最低价。思
考一下,一段时间的最低价必然是该段时间内每个分析周期的最低价中最小
的那个。所以我们要引用的数据是该段时间各分析周期的最低价,而不需要
用到开盘价、收盘价或最高价;还要将不需要的数据,即区间外的数据设为
0.语句为:
LL:=IF(YEAR=2002 AND MONTH>=2 AND MONTH