ADX函数

请问大神能否共享一下TBL的ADX用户函数代码啊?谢谢谢谢先,自己编的总不成功

DMI_ADX
关于 “ADX、PlusDI 和 MinusDI函数没有被声明的问题
怎样新增ADX指标
公式管理器中,Traffic_Jam_L中DMI指标的ADX走势与其他期货软件上DMI指标的ADX走势不一样,乱编的吧。
【量化源码共学】之二十,基于ADX及EMA进行判断
函数可以用onbar吗
函数传参变量series<Numeric> 类型的引用类型是什么?
为什么AverageFC函数计算出来的是无效值?
buy函数,marketposition函数
A函数和回测函数

输入DMI

//------------------------------------------------------------------------

// 简称: ADX

// 名称: 平均动向指数

// 类别: 公式应用

// 类型: 内建应用

// 输出:

//------------------------------------------------------------------------

Params

   Numeric Length(14);              // 计算周期


Vars

   Series<Numeric> TR;              // 真实波幅

   Series<Numeric> HD;              // 最高价变化

   Series<Numeric> LD;              // 最低价变化

   Series<Numeric> DMP;             // 上升动向

   Series<Numeric> DMM;             // 下降动向

   Series<Numeric> PDI;             // 上升方向指标

   Series<Numeric> MDI;             // 下降方向指标

   Series<Numeric> ADX;             // 平均动向指数

   Series<Numeric> ADXR;            // 平均动向指数评估

   Series<Numeric> Deviation;       // 偏离率


Events

   OnBar(ArrayRef<Integer> indexs)

   {

       // 计算真实波幅

       TR = Average(Max(Max(High - Low, Abs(High - Close[1])), Abs(Low - Close[1])), Length);


       // 计算最高价和最低价变化

       HD = High - High[1];

       LD = Low[1] - Low;


       // 计算上升动向和下降动向

       DMP = Average(IIf(HD > 0 And HD > LD, HD, 0), Length);

       DMM = Average(IIf(LD > 0 And LD > HD, LD, 0), Length);


       // 计算上升方向指标和下降方向指标

       PDI = DMP * 100 / TR;

       MDI = DMM * 100 / TR;


       // 计算ADX

       ADX = Average(Abs(MDI - PDI) / (MDI + PDI) * 100, Length);


       // 计算ADXR

       ADXR = (ADX + ADX[6]) / 2;


       // 计算偏离率

       Deviation = ADX - ADXR;


       // 输出结果

       Commentary("TR: " + Text(TR) + "\n" +

                  "HD: " + Text(HD) + "\n" +

                  "LD: " + Text(LD) + "\n" +

                  "DMP: " + Text(DMP) + "\n" +

                  "DMM: " + Text(DMM) + "\n" +

                  "PDI: " + Text(PDI) + "\n" +

                  "MDI: " + Text(MDI) + "\n" +

                  "ADX: " + Text(ADX) + "\n" +

                  "ADXR: " + Text(ADXR) + "\n" +

                  "Deviation: " + Text(Deviation));

   }

//------------------------------------------------------------------------

// 编译版本 GS2014.10.25

// 版权所有 TradeBlazer Software 2003-2025

// 更改声明 TradeBlazer Software保留对TradeBlazer平台每一版本的TradeBlazer公式修改和重写的权利

//------------------------------------------------------------------------

老师请问下我把您这段代码复制到软件里,编译提示最后大括号这行出错,提示OnBar函数缺少返回值,这要怎样修改呢

参考了😀

系统里有一个用adx指标写的策略,把这个策略里关于adx指标的代码复制过去即可