智能交易网,程序化交易,自动交易,量化交易

 找回密码
 注册

QQ登录

只需一步,快速开始

手机短信登录

参加MT4智能交易编程培训,7课免费在线试听MT4指标,EA代写,或EA指标加密账户远程验证服务 最完善商业MT4跟单系统(0.1秒极速响应不漏单)
为论坛做贡献有奖学金,奖学金可直接换真钱 扫本站微信公 众号部分视频课程指标EA免费得智能交易网MT4操盘神器,扫公众号免费得
查看: 579|回复: 7

请老师指教,我写的公式怎么就不行呢?

[复制链接]
发表于 2018-5-21 13:07:07 | 显示全部楼层 |阅读模式
//+------------------------------------------------------------------+
//|                                                          TXI.mq4 |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 7

double TR1[];
double TR2[];
double TR[];
double A1[];
double A2[];
double A3[];
double B1[];

int OnInit()
{
    SetIndexStyle(0,DRAW_NONE);
    SetIndexBuffer(0,TR1);
    SetIndexStyle(1,DRAW_NONE);
    SetIndexBuffer(1,TR2);
    SetIndexStyle(2,DRAW_NONE);
    SetIndexBuffer(2,TR);
    SetIndexStyle(3,DRAW_LINE,STYLE_SOLID,1,clrRed);
    SetIndexBuffer(3,A1);
    SetIndexStyle(4,DRAW_LINE,STYLE_SOLID,1,clrYellow);
    SetIndexBuffer(4,A2);
    SetIndexStyle(5,DRAW_LINE,STYLE_SOLID,1,clrWhite);
    SetIndexBuffer(5,A3);
    SetIndexStyle(6,DRAW_SECTION,DRAW_HISTOGRAM,1);
    SetIndexBuffer(6,B1);
     return(INIT_SUCCEEDED);
  }
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   if(rates_total<16)
   {
     return(0);
   }
   
      int i,limit;
      limit=rates_total-prev_calculated;
      if(prev_calculated>0)limit++;

//TR1:=EMA(CLOSE,16);
       for (i=0;i<limit;i++)
         {
         TR1=iMA(NULL,0,16,0,MODE_EMA,PRICE_CLOSE,0);
         }

//TR2:=EMA(TR1,16);
       for (i=0;i<limit;i++)
         {
         TR2=iMAOnArray(TR1,0,16,0,MODE_EMA,i);
         }

//TR:=EMA(TR2,16);
       for (i=0;i<limit;i++)
         {
         TR=iMAOnArray(TR2,0,16,0,MODE_EMA,i);
         }  

//A1:=(TR-REF(TR,1))/REF(TR,1)*100;
       for (i=0;i<limit;i++)
         {
         A1=(TR-TR[i+1])/TR[i+1]*100;
         }
         
//A2:=EMA(A1,9);
       for (i=0;i<limit;i++)
         {
         A2=iMAOnArray(A1,0,9,0,MODE_EMA,i);
         }
         
//A3:=(A1-ref(A1,1))*10;
       for (i=0;i<limit;i++)
         {
         A3=(A1-A1[i+1])*10;
         }
         
//B1:=(TR-REF(TR,1))/REF(TR,1)*100,COLORSTICK;
        for (i=0;i<limit;i++)
         {
         B1=(TR-TR[i+1])/TR[i+1]*100;
         }
         
   return(rates_total);
  }

回复

使用道具 举报

 楼主| 发表于 2018-5-21 13:10:43 | 显示全部楼层
请老师们指教,多谢
回复 支持 反对

使用道具 举报

发表于 2018-5-21 17:52:48 | 显示全部楼层
试着改了一下,不知道是不是这个意思
QQ图片20180521175137.png

TXI.ex4

9.48 KB, 下载次数: 163

回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-21 22:16:25 | 显示全部楼层
天地大同 发表于 2018-5-21 17:52
试着改了一下,不知道是不是这个意思

谢谢您!
我自己跟另一个朋友请教了一下,已经改好了。
回复 支持 反对

使用道具 举报

发表于 2018-5-21 22:21:07 | 显示全部楼层
大一中文 发表于 2018-5-21 22:16
谢谢您!
我自己跟另一个朋友请教了一下,已经改好了。

看看图
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-6 11:01:59 | 显示全部楼层
怎么才能把图发上来啊?
回复 支持 反对

使用道具 举报

发表于 2018-9-22 21:22:40 | 显示全部楼层
学习学习,谢谢楼主分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|sitemap|智能交易网,程序化交易,自动交易,量化交易 ( 苏ICP备08108698号,苏州智德金网络科技股份有限公司版权所有 )

GMT+8, 2019-11-13 12:10 , Processed in 0.116624 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表