资讯动态

通达信SAR指标源码详解:从原理到实战用法与常见坑

发布时间:2026/9/6 17:20:16 来源:尧图企业网站定制
简介这份资源是一份面向通达信软件用户与技术分析初学者的SAR指标源码解析文档重点围绕抛物线指标从参数定义到图形绘制的完整逻辑流程展开。文档对VAR1:SAR(10,2,20)中的周期、加速因子和最大步长逐项说明详细解释了S、X条件语句如何在收盘价上方或下方绘制红色与绿色圆点并通过SS、SM、MC等变量判断价格拐点、回溯前几期收盘价关系、计算移动平均走势进而理解多组STICKLINE函数在SS取1、-1、2、-2等不同状态时绘制红色或橙色K线辅助色带的含义。资源以单个doc文档形式打包压缩包大小仅371KB内容精炼但覆盖公式核心既适合刚接触通达信公式编辑的投资者入门学习SAR指标也可供有一定基础的用户对照源码逐行调试、修改参数或集成到自己的交易系统中。目前已有2026人浏览学习适合需要厘清SAR指标内在运行机制、追求指标可视化表达或开展技术分析研究的用户参考。 做交易的人基本都听说过SAR指标全称Stop and Reverse也叫抛物线指标在通达信里保存为一套成熟的指标公式源码。网上搜“SAR指标源码”翻出来经常是一个doc文档里面一段一段公式代码很多人复制进去却用不起来要么语法报错要么显示乱码要么参数不对画出来的点完全不是那么回事。这篇文章我直接把SAR指标从原理到通达信源码再到实战用法讲透包括网传doc源码里的常见坑以及我实际调参和复盘过程中踩过的雷。这套内容适合三类人刚接触通达信公式编辑的新手想把SAR改写成自己风格的副图指标的老手以及在任何行情软件里都想搞清楚抛物线指标计算逻辑的人。放心不涉及复杂编程你只需要会复制粘贴再加上一点耐心看完下面的讲解。1. 先认清这个指标到底是什么1.1 抛物线指标的核心逻辑与真实作用SAR是Stop and Reverse的缩写翻译过来就是“停止并反转”。它最直观的形态就是在K线图上画出一串小圆点价格在圆点上方行情被认为是多头趋势价格跌破圆点圆点翻到上方行情转为空头。这些圆点会随着价格变动逐渐靠近K线形成一条类似抛物线的轨迹所以也叫抛物线指标。这个指标设计的初衷非常朴素你持有一笔多头仓位总得有一个地方告诉自己“错了该走人了”。SAR就是干这个的它跟随价格上涨不断抬高止损位一旦价格回调跌破这个动态止损位指标给出反向信号。换句话说它把“趋势判断”和“止损位置”合成了一个指标用一条线解决两个问题。这也决定了它的性格在单边趋势里SAR是很好的持股参考在震荡行情里价格来回穿插小圆点会反复翻转信号准确率明显下降。这不是指标有bug而是它的设计逻辑天生倾向趋势环境。理解这一点比到处找所谓“优化版源码”重要得多。1.2 为什么一定要看懂源码通达信里其实自带SAR函数写几行就能调出来A:SAR(4,2,2,20); A;但网上下载的doc文档通常不止这么简单里面包含了画线、变色、信号标记等一整套逻辑。你只有看懂源码才能改颜色、改参数、移植到副图甚至把它改写成选股公式。还有一个现实问题是网上流传的很多doc文档公式是加密的或者复制出来是乱码。你如果只是机械粘贴遇到问题完全不知道怎么排查。反过来理解SAR的计算步骤之后哪怕源码被加密了你也能随手自己写一个功能一样的公式出来。这也是我坚持先讲原理再给源码的原因。2. SAR指标源码与计算逻辑逐行拆解2.1 通达信内置函数的标准写法通达信里SAR相关函数主要有两个函数作用常见写法SAR(N,S,M)返回抛物线指标值SAR(4,2,2,20)SARTURN(N,S,M)返回转向周期数转向时值为1或2SARTURN(4,2,2,20)需要注意不同版本通达信对参数的命名略有差异有的叫“步长、极限值、加速因子”有的直接省略成两个参数本质是一回事。写公式的时候拿不准就按F1打开函数帮助核对当前版本参数个数这个习惯能省掉很多排查时间。网上流传比较广的一个完整副图源码长这样N:4; M:2; STEP:N/10; MAXP:M/10; S:SAR(STEP,MAXP,STEP); T:SARTURN(STEP,MAXP,STEP); STICKLINE(T1,S,S*1.01,3,0),COLORRED; STICKLINE(T2,S,S*1.01,3,0),COLORGREEN; S;这段代码的思路是先用N和M计算出步长与极限参数再调用SAR生成圆点线最后用STICKLINE把转向点画成红绿柱状标记方便视觉识别。这里N取4对应步长0.4M取2对应极限值0.2也就是加速因子最大值0.2。整个公式控制在几行内逻辑清晰适合入门学习和二次修改。2.2 手工复刻SAR计算过程理解迭代的核心如果你只是调用SAR函数当然用不着手工计算。但想改参数、排查异常、或者移植到其他平台时就必须知道SAR内部是怎么迭代的。我把标准的SAR计算步骤拆成四步第一步确定起点。看多状态下SAR的初始值取最近一段时间的明显低点看空状态下初始值取明显高点。这一步决定了圆点最初离K线有多远。第二步确定极值EP。看多时EP是启动以来的最高价看空时EP是启动以来的最低价。价格每创一次新高或新低EP都会更新。第三步计算加速因子AF。AF的初始值一般是0.02每出现一次新的极值就增加0.02但上限0.2。这个值决定圆点追赶价格的速度。AF越大SAR越贴近价格信号反应越快但也越容易被正常回调触发。第四步迭代计算下一根K线的SAR值。看多状态下新SAR等于旧SAR加上AF乘以EP减旧SAR也就是让SAR从初始位置出发沿着价格运行方向逐渐加速追赶。如果某一根K线的最低价跌破当前SAR那这根K线就标志多头转向系统切换为看空状态再反向重复上述过程。用通达信自己写一遍可以这么实现N:4; AF:0.02; EP:HHV(HIGH,10); SAR1:LLV(LOW,10); SAR2:SAR1AF*(EP-SAR1); SAR2;这个版本只是演示核心迭代思路。你拿它和内置SAR对比会发现形态基本吻合但细节上还差得远比如加速因子累加逻辑、转向后的重置处理这些都需要更长的代码。真到这一步比起自己造轮子直接用内置函数更可靠。2.3 参数表的本质含义参数就是SAR高矮胖瘦的调节旋钮参数默认值作用调大效果调小效果N步长4控制初始SAR离K线的距离圆点离K线更远信号更少圆点贴K线更近信号更多M极限/加速因子上限2控制加速因子最大能到多少加速上限更高翻转更快加速平缓信号更稳定但滞后我见过很多人把全部精力放在优化这两个参数上试图找到一个“万能数值”结果在A股里测完换美股又失灵换周期又失灵。参数永远只能适配某一种行情特征不存在完美参数。更合理的做法是保留默认参数结合其他指标过滤震荡行情。3. 实战用法不是拿来看方向而是拿来做防守3.1 趋势行情中把它当移动止损我自己最常用的方式是在一段明显上升趋势里把SAR当作移动止盈止损线只要收盘价在SAR上方就继续持有直到某天收盘跌破SAR再考虑离场。这个方法最大的好处是纪律化不需要每天主观判断“要不要卖”SAR帮你画好了一条线跌破就是跌破触发就执行。但一定要强调“收盘价跌破”而不是“盘中击穿”。SAR的圆点计算基于收盘数据盘中价格瞬间插针穿透SAR非常常见如果你拿分钟线或实时价格去触发逻辑很容易被假突破洗出去。等收盘确认虽然少赚一点但稳定性高很多。3.2 震荡行情必须加过滤否则被反复打脸SAR最遭人恨的就是震荡行情里反复翻转。解决办法不是删掉SAR而是给它加一个状态开关。常见做法是看均线方向或者看ADX值当短期均线方向向上且ADX大于25时才采用SAR多头信号当ADX低于20代表行情没有明显趋势此时SAR圆点哪怕翻转也尽量不操作。我自己的副图里加了一条均线过滤效果就很好。样例逻辑如下MA20:MA(CLOSE,20); T:SARTURN(4,2,2,20); 多头信号:T1 AND CLOSEMA20 AND MA20REF(MA20,1); 空头信号:T2 AND CLOSEMA20 AND MA20REF(MA20,1); DRAWICON(多头信号,LOW*0.98,1); DRAWICON(空头信号,HIGH*1.02,2);这样处理之后哪怕SAR本身在震荡区翻了好几次由于均线过滤条件不满足副图也不会频繁给信号。实际回测下来交易次数减少了百分之四五十但每次交易的胜率和盈亏比都有提升。3.3 和其他指标搭配的实战组合SAR和布林带、成交量配合效果比较好。布林带开口收窄表示行情正在酝酿方向结合SAR刚刚转向可以在启动初期进入。成交量方面SAR转向当天如果能放量信号可信度会比缩量高不少。一个简单的组合选股公式可以这样写T:SARTURN(4,2,2,20); 突破:T1 AND CLOSEOPEN AND VOLREF(VOL,1)*1.5; FILTER(突破,5);这个公式选出的是SAR刚从空翻多、当天收阳且成交量比前一天放大50%以上的股票。FILTER(突破,5)的作用是5天内只提示一次避免重复出现信号。需要注意这只是一个选股雏形。用之前建议先在历史行情里跑一段时间看看选出来的股票在后续3到5个交易日里的表现再做调整。直接拿未验证的选股公式去盘中用容易踩坑。3.4 不同周期的参数处理思路SAR参数是否要随周期改变我的经验是日线用默认值问题不大但30分钟、60分钟这种短线周期建议把N稍微调大一点避免圆点离K线太近导致信号过密。周线级别则可以适当缩小步长因为周线本身K线数量少对灵敏度的要求没那么高。说实话参数调整不要一步调到位先改动一个值观察20到30个信号确认效果之后再继续微调。一次同时改好几个参数你根本分不清是谁起了作用。4. 常见问题与排查技巧实录4.1 复制doc源码后乱码网上流传的SAR指标源码doc文档编码格式五花八门。用Word打开正常复制到通达信公式编辑器就乱码这个我遇到太多次了。原因一般是文档编码与通达信默认编码不一致。解决办法很简单把doc里的内容复制到系统自带的记事本里另存为时选择编码为ANSI或UTF-8然后再从记事本复制到通达信。如果粘贴进去还是乱码检查一下通达信的公式编辑器在“选项”里把字体设置为中文字体同时确保输入法是中文状态下输入括号和分号。很多人公式报错不是逻辑问题而是冒号、分号打成了英文半角字符这种错误在通达信里会被直接判定为语法错误。4.2 指标装上之后不显示图形公式能通过编译但是副图上一片空白最常见的原因是输出变量数量不对。副图公式只能输出一个主变量如果你在最后一行写了多个分号结尾的赋值语句通达信会认为没有可画线的输出。解决方法是确认公式最后有一行单独的输出语句比如直接写“S;”或者“SAR1;”。另一个原因是信号不在当前K线范围内。比如SARTURN函数只在转向那一根K线返回1或2其余K线返回无效值。如果你用这个函数画线图形上就会只有零星几个点看起来像没画全。想持续显示曲线要用SAR函数本身。4.3 带密码的公式无法查看源码网上很多doc源码其实是加密公式界面显示“公式密码保护”你没法查看和修改。我的态度很明确不要花时间研究怎么解密这是浪费生命。正经指标的原理就那么多SAR这种公开几十年的指标任何平台都能找到原生实现。真需要个性化修改直接按前面第2节的逻辑手写一个20分钟搞定比研究密码可靠得多。4.4 信号频繁翻转时的排查清单如果你用的SAR参数和别人一样但信号比别人多很多建议按下面顺序排查排查项说明确认K线周期日线和60分钟线的SAR信号频率完全不同别拿分钟线去对比日线参数确认复权方式除权除息缺口会干扰SAR计算前复权和后复权结果有差异确认是否有过滤条件原版SAR裸信号本来就多必须有趋势过滤不是源码写错了确认参数单位不同版本参数含义不同有的N是0.4有的N是4直接照搬参数会变形尤其是复权方式很多人忽略这一点。通达信里切换前复权、后复权或不复权SAR圆点的位置和翻转时间会有明显差别尤其遇到高送转或者大比例分红缺口一拉圆点整个造型都变了。看长周期趋势建议用前复权做短线日内则可以直接用不复权数据。我个人这几年用SAR最大的体会是它真不是一个能帮你精准抄底逃顶的指标而是一个帮你管住手的指标。你把它当趋势跟踪器和移动止损线它非常好用你把它当预测工具指望它提前告诉你明天涨跌那一定会失望。最后再分享一个实操小技巧每天收盘前花一分钟看一眼SAR圆点在K线上方还是下方再结合当天的成交量和均线状态做一个第二天的操作预案。这个小习惯帮我避开了很多盘中冲动交易比任何花哨的改参数都管用。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价