Новая версия MetaTrader 4 Client Terminal 387 и MetaTrader 4 Data Center build 387 - страница 5

 
nen:

Вот в том-то и дело. Посмотрю завтра, после обновления терминала из ДЦ, как будет работать. Если все так, как написал Вадим, то... тут не только оптимизация прощай. Возможно, будет необходимо дописывать код, чтобы буфер заполнялся. И это придется делать во всех индикаторах.... А их немеряное количество разлетелось по форумам.

Сейчас пересчитывается буфер только на последнем участке.

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

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

Этот пункт требует разъяснения со стороны разработчиков.

Чуяло сердце, что здесь заминировано... Поэтом и поинтересовался этим пунктом новшеств...

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


Проблему можно будет обсудить в сервисдеске. Это будет более продуктивно, чем здесь.
 
nen:

По хорошему, переинициализацию буферов необходимо делать только при подкачке пропущенной истории.


Именно так. Если это не так, давайте пример для воспроизведения. Пока не поздно, будем править.
 
nen:
Дискуссия закончена.

Ренат выше указывал адрес, по которому надо обращаться. И этот адрес - мой. Я тоже сказал (не видя ещё его поста), что надо обращаться в сервисдеск - будет более продуктивно.
 

Я удалил часть постов из этой темы. Тема считается исключительно рабочей. Прошу прощения, если кого-то обидел.

 

Незатейливый вопрос.

Как описано в справке:

"Отсоединение программы от графика, смена финансового инструмента и/или периода графика, смена счета, закрытие графика, а также завершение работы клиентского терминала прерывает выполнение программы. Если функция start() выполнялась на момент команды на завершение работы, оставшееся время работы ограничивается 2.5 секундами. Программа может узнать, что её пытаются завершить при помощи встроенной функции IsStopped() и корректно закончить свою работу."

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

т.е. со стороны пользователя не выполнялось ни одно из перечисленных действий, но тотально все индикаторы, советники и скрипты реагировали так, как бы прошла смена счёта...

Можно просить убрать эту фичу?

;)

 
Sorento:

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

т.е. со стороны пользователя не выполнялось ни одно из перечисленных действий, но тотально все индикаторы, советники и скрипты реагировали так, как бы прошла смена счёта...


Протоколы и логи в студию.

Нет такой "фичи" и никогда не было.

 
stringo:


Протоколы и логи в студию.

Нет такой "фичи" и никогда не было.

неправда Ваша дяденька...

02:52:03 HistoryCenter: synchronize 'USDCAD1'
02:52:03 Script Stels_Lock USDCAD,M1: removed
02:52:03 HistoryCenter: 2 bars imported in 'USDCAD1'
04:20:05 '57603': connect failed [No connection]
04:20:40 '57603': login

12:06:09 Script Stels_Dock USDCHF,M1: loaded successfully
12:07:17 Script Stels_Dock USDCHF,M1: removed
12:07:23 Custom indicator iExposure EURGBP,M1: removed
12:07:23 Expert DirectLC CHFJPY,M1: removed
12:07:23 Custom indicator iExposure CHFJPY,M1: removed
12:07:23 Expert DirectLC USDCAD,M1: removed
12:07:23 Custom indicator iExposure USDCAD,M1: removed

это, что в остатках лосталось от лога терминала.

Теперь, что писал (и осталось) терминал в лог эксперты -

02:52:03 Stels_Lock USDCAD,M1: deinitialized
02:52:03 Stels_Lock USDCAD,M1: uninit reason 0
02:52:03 Stels_Lock USDCAD,M1: removed
04:20:42 DirectLC USDCHF,M1: deinitialized
04:20:42 DirectLC USDCHF,M1: uninit reason 6
04:20:42 DirectLC USDCHF,M1: Spred USDCHF =3
04:20:42 DirectLC USDCAD,M1: deinitialized
04:20:42 DirectLC USDCAD,M1: uninit reason 6
04:20:42 DirectLC USDCAD,M1: Spred USDCAD =4
08:16:41 DirectLC USDCHF,M1: Rez=-1 Mashtab=10000
08:16:41 DirectLC USDCHF,M1: initialized
08:16:41 DirectLC USDCAD,M1: Rez=-1 Mashtab=10000
08:16:41 DirectLC USDCAD,M1: initialized
12:06:09 Stels_Dock USDCHF,M1: loaded successfully
12:07:17 Stels_Dock USDCHF,M1: removed
12:07:17 iExposure EURGBP,M1: deinitialized
12:07:17 iExposure EURGBP,M1: uninit reason 1
12:07:17 iExposure EURGBP,M1: removed
12:07:17 iExposure CHFJPY,M1: deinitialized
12:07:17 iExposure CHFJPY,M1: uninit reason 1
12:07:17 DirectLC CHFJPY,M1: deinitialized

заключительные фрагменты внутренних протоколов скриптов - USDCAD

2011.02.25 02:52:03 312 + 892844 : 57603 : 6 < 2011.02.25 02:52:03 : SELL: 0.98240000 Old= 0.98190000 __-0.00006 spred= ___0.00040 MD= 0.982173 / 0.982006
2011.02.25 02:52:03 312 + 0000 : 57603 : 7 < 2011.02.25 02:52:03 : Vol= 0.10000000 / 0.10000000
2011.02.25 02:52:03 312 + 0000 : 57603 : 8 < 2011.02.25 02:52:03 : ***PricesS= 0.98240000 Bid: 0.98240000 Vol: 0.10000000
2011.02.25 02:52:03 343 + 0031 : 57603 : 9 < 2011.02.25 02:52:03 : # -7 - Price changed. Bid=.9822-> 0.9818 / 0.9822 <- .9818|P:.9824
2011.02.25 02:52:03 546 + 0203 : 57603 : 0 < 2011.02.25 02:52:03 : Error.
2011.02.25 02:52:03 546 + 0000 : 57603 : 1 < 2011.02.25 02:52:03 : Program deinit.

& USDCHF

2011.02.25 01:43:53 781 + 0000 : 57603 : 5 < 2011.02.25 01:43:53 : ***PricesS= 0.92570000 Bid: 0.92570000 Vol: 0.10000000
2011.02.25 01:43:54 140 + 0359 : 57603 : 6 < 2011.02.25 01:43:54 : ***Ошибка(OrderSend - 138 ): 0.92600000 / 0.92570000 Prices: 0.92570000 / 0.92570000 TP: 0.91670000 ST: 0.00000000
2011.02.25 01:43:54 140 + 0000 : 57603 : 7 < 2011.02.25 01:43:54 : Vol= 0.10000000 / 0.10000000
2011.02.25 01:43:54 140 + 0000 : 57603 : 8 < 2011.02.25 01:43:54 : ***PricesS= 0.92570000 Bid: 0.92540000 Vol: 0.10000000
2011.02.25 01:43:54 140 + 0000 : 57603 : 9 < 2011.02.25 01:43:54 : Changes price...
2011.02.25 01:43:54 140 + 0000 : 57603 : 0 < 2011.02.25 01:43:54 : Program deinit.

И на резонное замечание, что причиной деинита могла быть логика программы - замечу, что протоколы терминала тогда зачем - откуда после перелога - перезапуск всего, что осталось в живых. но перелог инициировал не юзер!

При этом терминал не перезагружался до 12 и то для флуша логов., как и компьтер - который и счас пашет.

А почти все СПАЛИ... ;)

Полные тексты прикрепляю.

Файлы:
arx.zip  10 kb
 

Я понял, что Вы имеете в виду. Такое поведение изменено не будет. Извините.

 

Так в справку внесите коррективы.

Для простофиль типа меня...

;)

 

Только что пришло обновление терминала Build 388.

После тестирования экспертов невозможно посмотреть правильно ли они торговали, поскольку на открытом графике кастомные индикаторы не отрисовываются.

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

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

Тестировать в "темную" врагу не пожелаешь. Поверьте я не первый год разрабатываю экспертов и это очень серьезный вопрос. Ренат и Станислав, прошу Вас лично, не игнорируйте пожалуйста этот вопрос и не подходите к нему легкомысленно. Вашим же продуктом пользуются миллионы людей. МТ5 это здорово, но разработку экспертов для реальной торговли приходится пока делать на МТ4. А в МТ4 отсутствуют многие элементарные индикаторы, например PriceChanal, LRMA и др. Вот и приходится их делать кастомными, да и как правило их несколько. И потом еще для рыночных котировок, после теста, нужно все детально проверять, в каком месте относительно индикаторов были включения, точность выставления отложенных ордеров, форму описания рынка индикаторами и многое другое. А как теперь?

(Прошу модератора форума, если Ренат и Станислав или от кого это зависит, не прочитает это, передайте пожалуйста мою просьбу. Я думаю она будет от лица большинства разработчиков экспертов).

Причина обращения: