通达信COG和DO系统指标公式TDX00449

指标源码

中心重力和去势振荡器指标,用于判断行情走势.
COG:-1 *(REF(C,10)*(REF(C,10)+1))/(REF(C,10))+C;
DO:MA(C- MA(C,16),3);
0,DOTLINE;

1. 代码整体结构与含义

下面把通达信指标 COG(中心重力)DO(去势振荡器) 的公式逐行拆解,帮助你快速把握它的计算逻辑与用途。

中心重力和去势振荡器指标,用于判断行情走势.
COG:-1 *(REF(C,10)*(REF(C,10)+1))/(REF(C,10))+C;
DO:MA(C- MA(C,16),3);
0,DOTLINE;
行号 内容 解释
1 中心重力和去势振荡器指标,用于判断行情走势. 注释(说明指标目的)
2 COG:-1 *(REF(C,10)*(REF(C,10)+1))/(REF(C,10))+C; COG(中心重力)指标的计算式
3 DO:MA(C- MA(C,16),3); DO(去势振荡器)指标的计算式
4 0,DOTLINE; 在零轴上绘制一条点线(辅助判断正负区间)

2. 公式逐行解析

2.1 COG(中心重力)

COG = -1 * ( REF(C,10) * (REF(C,10)+1) ) / REF(C,10) + C
  • REF(C,10):收盘价 10 根K线前 的值
  • 化简:

[ \begin{aligned} \frac{REF(C,10)(REF(C,10)+1)}{REF(C,10)} &= REF(C,10) + 1 \ -1 (REF(C,10) + 1) &= -(REF(C,10) + 1) \ \text{于是 } COG &= C – REF(C,10) – 1 \end{aligned} ]

本质:当前收盘价 减去 10周期前的收盘价,再减去常数 1(仅是为了把零点稍微向下平移,避免出现 0‑值的情形)。
换句话说,它是一个 10 期的价格动量,数值 > 0 表示近期价格相对 10 天前上涨,< 0 表示下跌。

2.2 DO(去势振荡器)

DO = MA( C - MA(C,16) , 3 )
  1. MA(C,16):收盘价的 16 周期简单移动平均(中短期均价)。
  2. C - MA(C,16):价格相对其 16 期均线的 偏离(差值),正值为价格高于均线,负值为低于均线。
  3. MA(...,3):对上述差值再做 3 周期简单移动平均(平滑),得到 DO

本质:对 价格与均线之间的偏离 进行平滑,形成一种 去势(detrended)振荡器
当 DO > 0 时,价格短线高于其中期均价(偏多);DO < 0 则偏空。

2.3 零点线

0,DOTLINE;
  • 在指标窗口的 0 位置画一条 点线,帮助直接判断 COG、DO 是正还是负。

3. 参数化(可选)

如果你想自行调节周期,可把代码改成 输入参数 形式:

// 参数 N1、N2、N3 分别为 COG、DO‑MA、DO‑SMA 的周期
N1:=10; N2:=16; N3:=3;

COG: C - REF(C,N1) - 1;
DO:  MA(C - MA(C,N2), N3);
0, DOTLINE;
  • N1:COG 使用的回看周期(默认 10)
  • N2:DO 中先求的均线周期(默认 16)
  • N3:DO 再次平滑的周期(默认 3)

4. 如何在通达信中加载使用

注意:下面的操作路径基于 通达信官方客户端(2024‑2025 常用版),不同版本细节略有差别,但大体相同。

  1. 打开公式管理器

    • 在主菜单栏点击 “公式” → “公式管理器”(或快捷键 Ctrl+F)。
  2. 新建技术指标

    • 在左侧树形目录中选择 “技术指标”,点击 “新建”
    • 弹出 “新建指标” 对话框,填写 指标名称(如 COG_DO),选择 所属类别(可自行新建如 “自定义指标”),点 确定
  3. 粘贴源码

    • 在代码编辑框里粘贴 完整源码(包括注释行),或者使用上面参数化版本。
    • 若使用参数化版,需要在 “参数” 标签页里把 N1、N2、N3 设为 变量(默认 10、16、3),这样在图表上可以手动调节。
  4. 保存并编译

    • 点击 “保存”(或 Ctrl+S),系统会自动检查语法。
    • 若出现错误,光标会定位到错误行,修正后重新保存。
  5. 在图表中调用

    • 打开任意一只股票(或期货、指数)的 日线/分钟线 图表。
    • 右键点击图表 → “指标” → “选择指标”(或直接在键盘上按 TAB 调出指标选择框)。
    • 在列表中找到刚才创建的 COG_DO(或 COGDO 两条线),选中后 确定
  6. 显示效果

    • 指标窗口会弹出 两条曲线(COG 与 DO),并有一条 点线 在 0 轴。
    • 你可以把 COGDO 分别拖到 主图(与 K 线同窗)或 副图(默认)显示,依据个人喜好。

5. 指标的解读与交易思路

关键信号 解释 典型用法
COG > 0 10 日均线之上(上涨动量) 可视为 多头 参考
COG < 0 10 日均线之下(下跌动量) 可视为 空头 参考
DO > 0 价格短线高于 16 日均线,且经 3 日平滑,偏多 买入 机会(尤其当 DO 从负转正时)
DO < 0 价格短线低于 16 日均线,偏空 卖出 机会(尤其当 DO 从正转负时)
COG 与 DO 同时为正 两指标同时指向多头 强势买入 信号,可适当加仓
COG 与 DO 同时为负 两指标同时指向空头 强势卖出 信号,可考虑减仓或空仓
DO 交叉 0 轴 快速变化的分水岭 常作为 止损/止盈 触发点
COG 交叉 0 轴 较慢的转折点 可用于 趋势确认(配合更高时间周期)

实战提示

  1. 趋势过滤:仅在 大势向上(如日线 MA20 上行)时使用 COG、DO 的买入信号;在大势向下时只做空或观望。
  2. 仓位管理:COG、DO 同时为正时可以把仓位放大到 1.5~2 倍;两者背离时降至 0.5~0.7 倍。
  3. 止损技巧:DO 由正转负(即下穿 0 轴)时立即止损;COG 下穿 0 轴可作为 趋势止损
  4. 配合其他指标
    • 成交量(VOL)配合,成交量放大时信号更可靠。
    • MACDRSI 等确认趋势方向。
    • 均线交叉(如 5 日上穿 20 日)作二次过滤。

6. 常见的自定义与优化思路

优化方向 具体做法 说明
改变周期 将 COG 的 10 改为 5、15、20 等;把 DO 的 16、3 改为 20、5 等 调整灵敏度,长周期更稳健,短周期更灵敏
加入均线过滤 在 COG、DO 信号前加 IF(MA(C,60)>MA(C,120), …) 只在长期趋势看多时买入,避免逆势操作
加入波动率 ATR(14)STD(C,20) 对 DO 做归一化 防止在波动极大时出现假突破
改用指数平滑 MA() 换成 EMA() 对价格变化的反应更快,适合短线
加入买卖点文字 使用 DRAWTEXT 在图表上标注 “买”“卖” 直观看到信号位置(但注意不要让图表太乱)
多周期共振 同时在 日线周线 上检测 COG、DO 同时为正 提高信号的可靠性

示例:如果你想把 COG 改成 5 日动量、DO 改成 20‑日均线差值并用 5‑日 EMA 平滑,可写成:

N1:=5; N2:=20; N3:=5;
COG:= C - REF(C,N1) - 1;
DO := EMA(C - EMA(C,N2), N3);
0,DOTLINE;

7. 风险提示与局限

  1. 滞后性:COG 与 DO 都基于 历史收盘价,在快速波动的行情里会出现一定的滞后。
  2. 震荡市噪音:在价格呈 区间震荡 时,COG、DO 会在 0 轴附近频繁交叉,产生大量假信号。
  3. 仅做参考:该指标本身 不包含止损/止盈 逻辑,使用时务必结合仓位管理和其他技术手段。
  4. 参数敏感:不同市场(A股、期货、期权)对 N1、N2、N3 的最优值可能差异较大,建议先做 参数回测(通达信自带的 “公式回测” 功能)再上实盘。

8. 小结

  • COG:≈ 10‑期价格动量(C - REF(C,10) - 1),反映 中期趋势
  • DO:价格相对 16‑期均线的偏离并经 3‑期平滑,产生 短线去势振荡
  • 使用方法:在通达信里自行新建技术指标 → 粘贴源码 → 保存 → 在图表中调用 → 通过 COG、DO 与 0 轴的交叉/正负 判断多空 → 结合仓位、止损、其他指标进行交易决策。

一句话概括
COG 帮你看清 大势(10 天趋势),DO 帮你捕捉 短线偏离(相对 16 天均价的波动),二者同向时最强,交叉 0 轴时即可能是进出点。结合成交量或其他趋势过滤,可在震荡与趋势行情中提升信号可靠性。