新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 793

 
ponochka:
Onitit和ontick已经被添加了!无变化

你可以因为ontick请求而惹上麻烦;-)也就是说,被禁止和列入黑名单。

在return(false)处打印诊断程序--这将更清楚地说明问题所在。

 
Maxim Kuznetsov:

你可能会因为OnTick请求而惹上麻烦;-)也就是说,进入禁言和黑名单。

打印return(false)的诊断程序--它将使我们更清楚地了解问题所在。

我应该在《打印》 中写些什么,以找出问题所在?0_o

如果你写Print(response); 它给出了:13369448

 
ponochka:

我应该在《打印》中写些什么,以找出问题所在?0_o

如果你写Print(response); 它给出了:13369448

if (response == 0) {

   Print("Что-то пошло не так");

  // потом уже добавите диагностику из WinAPI

   return false;

}

并在正常返回之前,将结果也打印出来

Print(" всё хорошо, результат:" toStr);

return toStr;

并在一个定时器中运行整个代码,例如,每分钟一次。在一个肯定不会被禁止的资源上练习,并给出不同但可预测的时间,这样你就可以检查。

----
心灵感应--如果真的有问题的话。
要么初始化是错误的(我不记得WinSOCK是否应该为InternetOpenW初始化)。
或者某些资源没有被释放。

 
Artyom Trishkin:

检查Include文件夹的内容

那么都在那里了?我打开它,看了看计算结果,这对我来说相当复杂。

 
Seric29:

那么都在那里了?我打开它,看了看计算结果,这对我来说相当复杂。

我希望能做得更好 :)

交易、自动交易系统和策略测试的论坛

新手对MQL4的任何问题,对算法和代码的帮助和讨论

Seric29, 2019.03.26 23:32

我怎样才能看到MQL4附带的函数的源代码/库?我想看看他们的属性,并在这个问题上做出类似或更好的,谁知道呢?

 
如何使用ArrayResize来改变一个多维数组的 大小?仅仅是一维数组上的标准例子
 
Alexandr Sokolov:
如何使用ArrayResize来改变一个多维数组的 大小?只是,标准的例子只使用一维数组。

你只能改变一个多维数组的第一维的大小。这与一维数组的情况完全相同。

在这种情况下,该阵列必须是动态的。

 
Artyom Trishkin:

你只能改变一个多维数组的第一维的大小。这与一维数组的情况完全相同。

在这种情况下,该阵列必须是动态的。

谢谢你!

 

祝大家今天愉快

我浪费了两个小时,但什么也没找到。

请告诉我如何在mq4中,在EA中,智能地

使用内置函数将一个指标建立在另一个指标之上

而它应该在子窗口的测试中显示,因为它应该是这样。

例如,RSI数据的MA?

 
Northwest:

例如:RSI数据的MA?

#property copyright "IgorM"
#property link      "https://www.mql5.com/ru/users/igorm"
#property version   "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_plots   2
//--- plot line1
#property indicator_label1  "RSI"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1

#property indicator_label2  "MA"
#property indicator_type2   DRAW_LINE
#property indicator_color2  clrYellow
#property indicator_style2  STYLE_SOLID
#property indicator_width2  1
//--- input parameters
input int      PeriodRSI   =  10;
input int      PeriodMA    =  12;
//--- indicator buffers
double         rsiBuffer[],maBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   SetIndexBuffer(0,rsiBuffer);
   SetIndexBuffer(1,maBuffer);
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
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[])
  {
//---
   int i,limit;
   if(prev_calculated==0) limit=rates_total-1; else limit=rates_total-prev_calculated+1;
   for(i=limit; i>=0; i--)
     {
      rsiBuffer[i]=iRSI(NULL,0,PeriodRSI,PRICE_CLOSE,i);
     }
   for(i=limit; i>=0; i--)
     {
      maBuffer[i]=iMAOnArray(rsiBuffer,0,PeriodMA,0,MODE_SMA,i);
     }
  
   return(rates_total);
  }
//+------------------------------------------------------------------+