错误、漏洞、问题 - 页 2768

 
问候。初始化事件是否在终端开机时发生?
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
亲爱的行政部门。关于从mql5.com上删除我的账户(以卖家身份注册),我应该给谁写信?
 

你好!有一个MT5指标 "Grid Builder",它以价格增量画出水平线。你可以选择如100p、200p等。而且它以给定的步幅上下构建了一个水平网格。但它有一个问题,例如,当我在时间框架H4上绘制水平线时(我把水平线从绘图工具中放在终端),并切换到任何其他时间框架,我的所有线条都被删除。只剩下水平指标水平。我怎样才能纠正代码中的这个错误?为了确保我的水平层永远不会被删除。以下是该指标的代码。

//+------------------------------------------------------------------+
//|                                                  GridBuilder.mq5 |
//|                                              Copyright 2015, AM2 |
//|                                     https://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, AM2"
#property link      "https://www.forexsystems.biz"
#property version   "1.00"
#property indicator_chart_window

//---- для расчёта и отрисовки индикатора использовано ноль буферов
#property indicator_buffers 0
//---- использовано всего ноль графических построений
#property indicator_plots   0
//--- входные параметры 
input int count = 50;      //количество линий вверх вниз от цены
input int step  = 333;     //шаг линий 
input double pr = 1.4622;  //цена от которой пляшем
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   ObjectsDeleteAll(0,0,OBJ_HLINE);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
   ObjectsDeleteAll(0,0,OBJ_HLINE);
  }
//+------------------------------------------------------------------+ 
//| Создает горизонтальную линию                                     | 
//+------------------------------------------------------------------+ 
bool HLine(const string name="HLine",double price=0)
  {
//--- создадим горизонтальную линию 
   if(!ObjectCreate(0,name,OBJ_HLINE,0,0,price))
     {
      Print(__FUNCTION__,
            ": не удалось создать горизонтальную линию! Код ошибки = ",GetLastError());
      return(false);
     }
//--- установим цвет линии 
   ObjectSetInteger(0,name,OBJPROP_COLOR,clrGreen);
   ObjectSetInteger(0,name,OBJPROP_WIDTH,1);
   return(true);
  }
//+------------------------------------------------------------------+
//| 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[])
  {
   double price=pr;
//--- создадим горизонтальную линию 
   for(int i=0;i<=count;i++)
     {
      HLine("HLine"+(string)i,price+step*i*_Point);
      HLine("HLine"+(string)(i+count+1),price-step*i*_Point);
     }
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
 
Александр:

你好!有一个MT5指标 "Grid Builder",它以价格增量画出水平线。你可以选择如100p、200p等。而且它以给定的步幅上下构建了一个水平网格。但它有一个问题,例如,当我在时间框架H4上绘制水平线时(我把水平线从绘图工具中放在终端),并切换到任何其他时间框架,我的所有线条都被删除。只剩下水平指标水平。我怎样才能纠正代码中的这个错误?为了确保我的水平层永远不会被删除。以下是指标的代码。

请尝试正确插入代码

MQL5.community - Памятка пользователя
MQL5.community - Памятка пользователя
  • www.mql5.com
Теперь вы можете не только читать статьи и скачивать программы на языке MQL5, но и участвовать в обсуждении интересующих вас тем на Форуме, оставлять комментарии к статьям и опубликованным кодам. Кроме того, вы можете не только выкладывать собственные разработки в Code Base, но и публиковать Статьи, за которые мы предлагаем вознаграждение...
 

蒲巴甲对所有人。

当我改变已经闲置了很长时间的时间框架时,指标就会冻结。请指引我,这只狗被埋在哪里。谢谢你!

 
BROXIV:

蒲巴甲对所有人。

当我改变已经闲置了很长时间的时间框架时,指标就会冻结。请指引我,这只狗被埋在哪里。谢谢你!

这只狗正在加载数据。

 
BROXIV:

蒲巴甲对所有人。

当我改变已经闲置了很长时间的时间框架时,指标就会冻结。请指引我,这只狗被埋在哪里。谢谢你!

狼咬狐狸的同一个地方....

他咬了一口。你怎么看?)))))))

 
怎么能先调用一个函数,然后再声明。节目是不是跑偏了还是什么?
 
Ivan_Invanov:
如何先调用一个函数,然后再声明?是程序没有连续运行还是什么?

MQL-编译器,不是解释器,谷歌 "链接器编译器"。





从一个小的文本字符串(10-50个符号)中获得多少概率的md5-hash(16个字节),等于0xAAAAAAAAAA+0xAAAAAAAAAA+0xAAAAAAAAAA

ulong hash[2]
this.hash[0] = this.hash[1] = 0xAAAAAAAAAAAAAAAA; 

一般来说,我需要一些初始化器HASH_NULL(我需要一些合理的变体),我发现0不可靠,因为某些原因


UPD: 在网上搜索到的md5解密https://md5.web-max.ca/

在md5哈希值上:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa说是错误,0也是错误。

 

下午好!我正在编写一个基于iWPR指标 读数收集极值的类。下面是一段代码:我首先为一个指标创建一个句柄,然后将数据复制到一个缓冲区。我创建了一个循环,用于根据数组大小获取指标数据,并将进度写入文件,以了解正在发生的事情。我想指出的是,我从MQL4复制了这段代码,当然也为MQL5做了调整。我不知道是什么原因,还是什么地方出了问题,但是dwpr变量的数据被写到了一个文件里,而且还很混乱。我做错了什么?我把所谓的日志的文本文件附在后面!

   hWPR=iWPR(NULL,period,240);
   CopyBuffer(hWPR,0,0,ibars,WPRBuffer);
   CopyLow(NULL,0,0,ibars,Low);
   CopyHigh(NULL,0,0,ibars,High);
   CopyTime(NULL,0,0,ibars,Time);
   int y=ArraySize(WPRBuffer);
   //int w=ArraySize(Low);
   //int x=ArraySize(High);
   //int z=ArraySize(Time);
   
   ResetLastError(); 
   if(flag){filehandle=FileOpen(Symbol()+"_VertexUpLoad_3.txt",FILE_WRITE|FILE_TXT);}
   if(flag){FileWrite(filehandle,"Количество элементов в буфере WPRBuffer "+IntegerToString(y)+" Low "+IntegerToString(w)+
            " High "+IntegerToString(x)+" Time "+IntegerToString(z));}
   //for(int i=ibars-1;i>0;i--)
   for(int i=1;i</*ibars*/ y-1;i++)
     {
      if(i==344)
      {
      Print("");}
      datetime d=Time[i];
      //if(x<D'2004.04.02. 12:00:00'){continue;}//участок кода для тестирования
      if(flag){FileWrite(filehandle,"======================================================================================");}
      dwpr=NormalizeDouble(WPRBuffer[i],4);
      if(dwpr>=dup&&dwpr<0.0){chflag=2;}//индикатор в верхней экстремальной зоне
      if(dwpr<=ddn&&dwpr>-100.1){chflag=1;}//индикатор в нижней ЭЗ, а остальное все тоже самое
//Самое начало пока индикатор "балтается"      
      if(dwpr>=0.0000){if(flag){FileWrite(filehandle,"Самое начало пока индикатор балтается. Бар № "+IntegerToString(i)+
                                         " dwpr "+DoubleToString(dwpr,4));}
附加的文件: