Выпущена бета-версия MetaTrader 4 Build 529 с новым компилятором - страница 136

 

Заметил одну неприятную особенность опции "Поиск-Замена" (Find-Replace) в ME881. Проверил МЕ482, там тоже самое. Может пока заняты обновлением МТ и это тоже исправите?

Итак, по порядку: код у меня длинный, для рутинных изменений использую "Find-Replace" по всему тексту. Попытался изменить все x1+3 на x1, вроде все нормально. Но в коде оказались строки с x1+3+3*abc. В этих строках вместо того чтобы x1+3+3*abc изменилось на x1+3*abc, в результате получилось x1*abc. И как оказалось этих +3 может быть сколь угодно, все равно останется x1*abc. Строки с, например, x1+3+4*abc изменяются правильно.

Вот такой вот очень единичный и казусный случай. Конечно же исправление это не срочно, но я думаю необходимо для того чтобы избежать неприятностей при кодировании.

 

Не работает

ObjectSetString(chart_id,current_name,OBJPROP_NAME,new_name)

Хотя функция возвращает true, объект на графике имеет старое имя.

 

не знаю баг или нет но при вызове Comment () в OnDeinit() информация не выводится на график

код примера

int OnInit()
  {
Comment("OnInit");
  return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("Exit");
   Print(__FUNCTION__,"_Код причины деинициализации = ",reason);
  }
//+------------------------------------------------------------------+

то есть при удалении советника информацию деинициализации и другую мы получить можем только через принт ???

 
OnChartEvent
Не работает в тестере стратегий
 

build 563:


ObjectSet(labelobj,OBJPROP_CORNER,CORNER_LEFT_LOWER)

puts a label in the RIGHT corner...

 
pro_:

Have an Alert with the name of each different MT4 instance written in it... When it pops on screen you should know which one it is.

Alert() blocks the EA/indicator...

Would be nice if MT4 alerts (from the Alerts tab) had a MQL API too.

 
maximillion:

Alert() blocks the EA/indicator...

Would be nice if MT4 alerts (from the Alerts tab) had a MQL API too.


What do you mean "Alert() blocks the EA/indicator..." ? No it doesn't. When do you want the icon to flash? When some action is performed by EA? Well, just place the alert right there in the code and be happy. :) A millisecond delay spent on giving you an Alert won't cause a major disruption, would it ? :)

 
pro_:


What do you mean "Alert() blocks the EA/indicator..." ? No it doesn't. When do you want the icon to flash? When some action is performed by EA? Well, just place the alert right there in the code and be happy. :) A millisecond delay spent on giving you an Alert won't cause a major disruption, would it ? :)


Hm. Indeed it does not (just tried it in an EA). But at the same time I know I stopped using it 'cause it would block.


Anyway thank you for pointing it out.

 

Думаю что баг Советник не может вызвать функцию из библиотеки

код советника вызывающего функцию

#property strict
#import "bib.ex4"
int ins();
#import 

void OnTick()
  {
int z = ins();  
Comment(z);
  }

код библиотеки

#property strict

int ins()
{
int a=1, b=1,c=1,d=0;
d=a+b+c;
return d;
}

Ошибка журнала

  • 2013.12.22 12:54:45.408 2013.08.19 05:16 Access violation write to 0x00000000
  • 2013.12.22 12:54:45.408 2013.08.19 05:16 Cannot find 'ins' in 'bib.ex4'


 

Build 563, не работает

ChartSetInteger(0,CHART_SHOW_DATE_SCALE,false);
ChartSetInteger(0,CHART_SHOW_PRICE_SCALE,false);