评论

收藏

双线MACD指标添加新线问题求教

avatar ztrangle | 707 人阅读 | 0 人评论 | 2021-11-24

从本论坛下载的双线MACD指标,我在此基础上添加一条新线,想实现当指标值大于0与小于0的值分别求和。编码如下:
        int IsDivision = 1;//是否分割(不一样的时候分割)1是大于0,-1是小于0
        //开始分割索引
        int sta = 0;
        double sum = 0;
        for (i=0; i<limit; i++)
             {
                     sum += ind_buffer1;    //主线的未分割前求和值
                     //正数,下一位是负数就分割合计
                   if (IsDivision >= 0 && ind_buffer1/ind_buffer1[i+1] <= 0)
                      {
                              IsDivision = -1;
                              for (int j=sta ; j<=i; j++)   //从分割索引开始
                                 {
                                         SumSM[j] = sum;
                                  }
                                      sta = i+1 ;  //下一位是分割后的索引所以+1
                                 sum = 0;
                       }
                     //负数,下一位是正数就分割合计
                   else if (IsDivision <= 0 && ind_buffer1/ind_buffer1[i+1] <= 0)
                        {
                              IsDivision = 1;
                              for ( j=sta ; j<=i; j++)
                                 {
                                          SumSM[j] = sum;
                                  }
                              sta = i+1;
                              sum = 0;
                      }
             }

通过上述代码,能实现新线按照0值分别求和,但成了不可执行程序:只有加载时显示,不能随着数据的变化重绘图形了。是什么原因,求各位老师指教。
1637737023(1).png
您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则