Как вы думаете? - страница 2

 
Integer писал (а) >>
У моих экспертов логика работы в таких случаях не нарушается.

Разумеется, каждый ...как он хочет...Прошу прощения за вульгаризм. Но, как говорил Ф.М. Д. "русский человек ради красного словца не пожалеет матери и отца..."

 
Вобщем понял, буду относиться к этому делу не как к багу, а как к крутой фиче.
 
Sart писал (а) >>

Разумеется, каждый ...как он хочет...Прошу прощения за вульгаризм. Но, как говорил Ф.М. Д. "русский человек ради красного словца не пожалеет матери и отца..."

Да, есть вещи в которые трудно поверить.

 
Integer писал (а) >>

Да, есть вещи в которые трудно поверить.

Равно как, есть вещи, в которые трудно не поверить...

 
  1. В советнике есть параметры. Набрасываем на график. init() исполняется.
  2. В советнике есть параметры. Советник уже на графике, изменяем его свойства F7. init() исполняется.
  3. В советнике нет параметров. Набрасываем на график. init() исполняется.
  4. В советнике нет параметров. Советник уже на графике, изменяем его свойства F7. init() НЕ исполняется.

Renat, Stringo,

Поведение советника в ситуации, описанной в п.4, я считаю неадекватным.

 
KimIV писал (а) >>
  1. В советнике есть параметры. Набрасываем на график. init() исполняется.
  2. В советнике есть параметры. Советник уже на графике, изменяем его свойства F7. init() исполняется.
  3. В советнике нет параметров. Набрасываем на график. init() исполняется.
  4. В советнике нет параметров. Советник уже на графике, изменяем его свойства F7. init() НЕ исполняется.

Renat, Stringo,

Поведение советника в ситуации, описанной в п.4, я считаю неадекватным.

С другой стороны, окно свойств эксперта можно рассматривать как способ передачи внешних параметров в эксперт.

Если передавать нечего, то, по этой логике, никаких действий не предпринимается.

А, с другой стороны, возможно, кому-то требуется и в этом случае выполнение init() для настройки значений глобальных переменных.

 
KimIV писал (а) >>
  1. В советнике есть параметры. Набрасываем на график. init() исполняется.
  2. В советнике есть параметры. Советник уже на графике, изменяем его свойства F7. init() исполняется.
  3. В советнике нет параметров. Набрасываем на график. init() исполняется.
  4. В советнике нет параметров. Советник уже на графике, изменяем его свойства F7. init() НЕ исполняется.

Renat, Stringo,

Поведение советника в ситуации, описанной в п.4, я считаю неадекватным.

Только еще перед пунктом 2 выполняется deinit()!

 
Sart писал (а) >>

С другой стороны, окно свойств эксперта можно рассматривать как способ передачи внешних параметров в эксперт.

Если передавать нечего, то, по этой логике, никаких действий не предпринимается.


ну сложно сказать! в Init вполне удобно что то запускать!

на то он и Init что бы сработать когда программу пускают


я не знал такой тонкости

прийдется флаги делать

---

смотрите косяк!


в Iniit при старте я что то делаю с параметрами! или с чем то еще


П 4. !!! не отработает - Init() - хотя логически я на него расчитывал



KimIV писал (а) >>
  1. В советнике нет параметров. Советник уже на графике, изменяем его свойства F7. init() НЕ исполняется.

Renat, Stringo,

Поведение советника в ситуации, описанной в п.4, я считаю неадекватным.


согласен и Игорем!

если это не ошибка, логика работы странная

 
KimIV писал (а) >>
  1. В советнике есть параметры. Набрасываем на график. init() исполняется.
  2. В советнике есть параметры. Советник уже на графике, изменяем его свойства F7. init() исполняется.
  3. В советнике нет параметров. Набрасываем на график. init() исполняется.
  4. В советнике нет параметров. Советник уже на графике, изменяем его свойства F7. init() НЕ исполняется.

Renat, Stringo,

Поведение советника в ситуации, описанной в п.4, я считаю неадекватным.

На самом деле пункт 2 надо разбить на 2 подпункта

2.1. ... изменяем входные параметры советника. init() исполняется.

2.2. ... не изменяем входные параметры советника. init() исполняется.

Поведение советника в пункте 2.2 является неадекватным. А в 4 пункте всё правильно: нет параметров - переменные не изменяются - ничего инициализировать не надо, всё уже инициализировано.

Изменение первой вкладки никак не влияет на переменные в советнике. Хотя, конечно, в программе могла быть заведена переменная в которую при инициализации записали возврат функции IsTradeAllowed(), например. Поэтому я соглашусь с Вами про неадекватность, описанную в 4 пункте.

Сделаем безусловную переинициализацию эксперта в случае нажатия кнопки OK в свойствах эксперта.

 
stringo писал (а) >>

Поэтому я соглашусь с Вами про неадекватность, описанную в 4 пункте.

Сделаем безусловную переинициализацию эксперта в случае нажатия кнопки OK в свойствах эксперта.

Ва-ау... спасибо!