А как программно прекратить работу советника? - страница 2

 
Zhunko:

Разве это проблема для программиста? :-)) Условие в цикл, по которому он прекращается.

если сам себя - то да, а если надо внешний, да еще и без исходников ? 

В задании ничего не было про другие эксперты.

Можно ещё предположить, что надо временно остановить, чтобы потом продолжить, не потеряв данные.

================= 

На всякий случай, в той библиотеке есть функции для загрузки эксперта, скрипта и индикатора.

=================

Сколько задач управления экспертом - столько же и решений. Всё хороши для разных задач.

Всяк кулик свое болото хвалит...

Винапи есть везде, и в этом его главное преимущество 

 
Zhunko:

1. В задании ничего не было про другие эксперты.

2. Можно ещё предположить, что надо временно остановить, чтобы потом продолжить, не потеряв данные.

 

1. А свои мозги есть?

2. Нормальные запрограммированные эксперты легко снимаются с графика и снова на него ставятся без какой-либо проблемы потери данных. Вадим, а вы что, так по детсадовски пишите экспертов, что стоит проблема потери данных?

 
Zhunko:

Разве это проблема для программиста? :-)) Условие в цикл, по которому он прекращается.


Вадим, а у ваc там все нормально в черепной коробке? Из за того, что вы решили нажимать кнопочку "эксперты", из за этого теперь надо вечно, всегда и каждого эксперта дорабатывать?

Вадим, а попробуй быть мужиком, ну лажанулся... ну так признай, что чушь сморозил, зачем так стремно выворачиваться? 

 

Дмитрий, внимательно прочитай ответ на первой странице: 

Zhunko:

Разве это проблема для программиста? :-)) Условие в цикл, по которому он прекращается.

В задании ничего не было про другие эксперты.

Можно ещё предположить, что надо временно остановить, чтобы потом продолжить, не потеряв данные.

================= 

На всякий случай, в той библиотеке есть функции для загрузки эксперта, скрипта и индикатора.

=================

Сколько задач управления экспертом - столько же и решений. Всё хороши для разных задач.

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

Так, что не выворачивайся, и как настоящий программист, признай, что ты лажанулся.

 
Мне понравилось в этом то, что я могу не сидеть ночером в пятницу, а нормальным образом завершить работу терминала. Затем заставить комп выключиться и будет очень даже неплохо. А остальные функции также выгодны, если попробовать прикрутить их с наружи, с другого языка.... Правда пока не пробовал...
 

Мои 5 копеек: 

 Существует ряд критических ошибок, связанных с вызовом импортируемых функций, при возникновении которых выполнение эксперта или индикатора немедленно прерывается и функция start не запускается до тех пор, пока не будет произведена переинициализация эксперта или индикатора.

КонстантаЗначениеОписание
ERR_CANNOT_LOAD_LIBRARY4018При вызове импортируемой функции произошла ошибка загрузки dll или ex4-библиотеки
ERR_CANNOT_CALL_FUNCTION4019При вызове импортируемой из функции выяснилось, что dll или ex4-библиотека не содержит эту функцию
ERR_DLL_CALLS_NOT_ALLOWED4017При вызове импортируемой из dll функции выяснилось, что установлен запрет на вызовы из dll
ERR_EXTERNAL_CALLS_NOT_ALLOWED4020При вызове импортируемой из ex4-библиотеки выяснилось, что установлен запрет на вызовы из ex4
ERR_FUNCTION_NOT_CONFIRMED4060Не подтвержден вызов импортируемой из dll функции. Если нажата кнопка "Нет", то выполнение программы не прерывается. Если нажата кнопка "Отмена", то выполнение программы немедленно прерывается


Остальные ошибки не прерывают работу программы.

 
hrustbb:
А как программно прекратить работу советника?

Элементарно, нет необходимости что либо городить заумное.

Достаточно поставить глобальную переменную которую проверять перед началом работы советника. Работает без сбоев. И все...

Кстати этой же переменной можно разрешать работу советника.

 
tara:

Мои 5 копеек: 

 Существует ряд критических ошибок, связанных с вызовом импортируемых функций, при возникновении которых выполнение эксперта или индикатора немедленно прерывается и функция start не запускается до тех пор, пока не будет произведена переинициализация эксперта или индикатора.

КонстантаЗначениеОписание
ERR_CANNOT_LOAD_LIBRARY4018При вызове импортируемой функции произошла ошибка загрузки dll или ex4-библиотеки
ERR_CANNOT_CALL_FUNCTION4019При вызове импортируемой из функции выяснилось, что dll или ex4-библиотека не содержит эту функцию
ERR_DLL_CALLS_NOT_ALLOWED4017При вызове импортируемой из dll функции выяснилось, что установлен запрет на вызовы из dll
ERR_EXTERNAL_CALLS_NOT_ALLOWED4020При вызове импортируемой из ex4-библиотеки выяснилось, что установлен запрет на вызовы из ex4
ERR_FUNCTION_NOT_CONFIRMED4060Не подтвержден вызов импортируемой из dll функции. Если нажата кнопка "Нет", то выполнение программы не прерывается. Если нажата кнопка "Отмена", то выполнение программы немедленно прерывается


Остальные ошибки не прерывают работу программы.


Проще использовать деление на ноль
 
Vinin:

Проще использовать деление на ноль

Проще, но при следующем тике start запустится. 
 
tara:

Проще, но при следующем тике start запустится. 


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