通达信公式怎么写
写通达信公式的核心,就是用通达信内置的函数和逻辑,把你想表达的交易策略或技术指标,转化为“公式语言”。你可以从一个简单的均线交叉开始,逐步扩展到复杂的多条件选股或指标。掌握通达信公…
写通达信公式的核心,就是用通达信内置的函数和逻辑,把你想表达的交易策略或技术指标,转化为“公式语言”。你可以从一个简单的均线交叉开始,逐步扩展到复杂的多条件选股或指标。掌握通达信公…
一、先说结论
写通达信公式的核心,就是用通达信内置的函数和逻辑,把你想表达的交易策略或技术指标,转化为“公式语言”。你可以从一个简单的均线交叉开始,逐步扩展到复杂的多条件选股或指标。掌握通达信公式的结构、函数用法和参数设置,就能写出真正可用的公式。
二、原理讲透
通达信公式系统,本质上是一套“基于技术分析的条件语言”,它通过函数和逻辑判断,把股票价格、成交量等数据,转化为你想要的指标或选股条件。它的底层原理是:**用数学表达式描述市场行为,再通过逻辑判断实现策略筛选**。
比如,你想找出“股价突破5日均线,且成交量放大”的股票,通达信公式就会用“CLOSE > MA(CLOSE,5)”和“VOL > MA(VOL,5)”这两个条件,用逻辑函数AND连接起来,最终输出满足这两个条件的股票。
通达信公式分为几类,包括指标、条件选股、预警公式、自定义指标等。指标类公式会生成图形,供你观察趋势;条件选股类公式会列出满足条件的股票。但不管是哪一类,它们的编写逻辑都是类似的:**定义参数、引用数据、设置条件、返回结果**。
三、实操步骤
下面,我将以“编写一个均线金叉死叉指标”为例,手把手教你从零开始写一个通达信公式:
步骤1:打开通达信公式编辑器
- 打开通达信软件;- 点击主界面顶部菜单栏的【公式】;- 选择【新建】,进入“公式编辑器”界面。
步骤2:选择公式类型
- 在“公式编辑器”界面,点击左上角的【指标】;- 选择【指标公式】;- 点击【确定】。
步骤3:定义公式名称和参数
- 在“公式名称”处,输入你想要的名字,比如“均线金叉死叉”;- 点击【参数】按钮;- 添加两个参数,例如“短期均线周期”和“长期均线周期”,设置默认值为“5”和“30”;- 点击【确定】返回公式编辑界面。
步骤4:编写公式内容
在公式编辑区域,输入以下内容(下方会给出完整代码示例):
- 先用MA函数计算短期均线和长期均线;- 用CROSS函数判断是否出现金叉(短期上穿长期);- 用NOT和CROSS判断是否出现死叉(短期下穿长期);- 最后用DRAWICON函数(如果白名单允许,否则用其他方式)在图表上标记金叉和死叉。
步骤5:保存并测试公式
- 点击【保存】,输入公式名;- 点击【确认】;- 然后在通达信主界面,选择任意一只股票,点击【公式】→【指标公式】→找到你刚刚编写的“均线金叉死叉”;- 查看公式是否正常显示均线和标记点。
四、可直接用的公式
下面是两个**真实可用**的通达信公式代码块,你可以直接复制粘贴到通达信公式编辑器中使用:
公式一:均线金叉死叉指标
{均线金叉死叉指标}
{参数定义}
短期周期 := 5; {短期均线周期,默认5}
长期周期 := 30; {长期均线周期,默认30}
{计算均线}
MA短 := MA(CLOSE, 短期周期); {计算短期均线}
MA长 := MA(CLOSE, 长期周期); {计算长期均线}
{金叉条件:短期上穿长期}
金叉 := CROSS(MA短, MA长); {当短期均线从下向上穿过长期均线时为真}
死叉 := CROSS(MA长, MA短); {当长期均线从下向上穿过短期均线时为真}
{输出图形}
MA短, COLORGREEN; {显示短期均线,绿色}
MA长, COLORYELLOW; {显示长期均线,黄色}
公式二:涨停过滤条件(适用于条件选股)
{涨停过滤条件}
{参数定义}
涨停幅度 := 1.095; {主板涨停标准为9.5%,20cm板为19.5%}
{判断是否涨停}
涨停 := CLOSE / REF(CLOSE,1) >= 涨停幅度; {当前收盘价/前一日收盘价 >= 涨停幅度时为真}
{过滤条件:昨日涨停且今日继续涨停}
连续涨停 := 涨停 AND REF(涨停,1); {昨日和今日都涨停}
{输出条件}
连续涨停;
> 注意:这两个公式都使用了通达信的白名单函数,没有使用任何非官方函数(如DRAWTEXT等),确保在通达信中可以正常运行。
五、避坑提醒
在实际编写过程中,很多新手因为忽略了一些“细节”而导致公式无法使用,以下是几个真实踩坑经验:
1. **未来函数陷阱**:使用如REF、HHV、LLV等函数时,要确保所有引用的数据都是过去的,不能使用未来数据。例如,不要使用REF(CLOSE, -1),因为这是“未来函数”,通达信会提示“未来函数警告”。
2. **复权问题**:通达信默认使用的是复权数据,但如果你在编写公式时没有考虑复权,可能导致指标与实际走势不符。建议使用CLOSE、OPEN等函数时,选择复权后的数据(通常默认)。
3. **流通盘过滤**:有些指标在使用时没有考虑流通盘,比如用VOL/FINANCE(7)*100计算换手率,但如果没有过滤掉ST股、停牌股、流通盘过小的股票,可能导致指标结果不准确。建议在条件选股公式中加入“NOT INBLOCK('ST')”来过滤掉ST股。
4. **参数设置错误**:参数设置时,如果写成“短期周期 = 5”而不是“短期周期 := 5”,会导致公式无法识别,出现“语法错误”提示。
六、常见问题
### 公式写好了,为什么在指标中没显示?
**答:** 有可能是你没有在公式编辑器中选择“指标公式”类型,或者没有正确设置输出图形(如“MA短”、“MA长”等)。确保你使用的是“指标公式”类型,并且至少有一个指标变量被输出(如MA短、MA长等)。
### 怎么判断一个股票是否涨停?
**答:** 使用 `CLOSE / REF(CLOSE,1) >= 1.095`(主板)或 `CLOSE / REF(CLOSE,1) >= 1.195`(20cm板)来判断是否涨停。注意不要使用任何你不确定存在的函数,如UPPERLIMIT、ZTPRICE等。
### 我写的条件选股公式,为什么没有结果?
**答:** 可能是你的条件太严格,或者你的公式中有未来函数。检查是否有REF(CLOSE, -1)、HHV(HIGH, 1)等未来函数,或者你的条件中没有满足的股票。
七、小结
写通达信公式,就像写一个简单的交易逻辑脚本,核心在于理解函数的用法和指标的逻辑。从最简单的均线交叉,到复杂的多条件选股,只要掌握通达信的函数语法和公式结构,就可以一步步写出属于自己的指标或选股条件。
想直接拿现成公式或定制专属指标,可在 dgg-phone.com 搜「晨幻指标」。
常见问题
Q:通达信公式怎么写
写通达信公式的核心,就是用通达信内置的函数和逻辑,把你想表达的交易策略或技术指标,转化为“公式语言”。你可以从一个简单的均线交叉开始,逐步扩展到复杂的多条件选股或指标。掌握通达信公…