Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite - страница 53

 

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

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

Это программирование и вы самостоятельно должны следить за своим кодом и его чистотой.

MQL5 - не пирожок для потребления «кусь и сыт», а среда безграничного программирования и исследовательский инструмент.

 
Aleksey Nikolayev:

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

я тоже несколько лет сидел молча в тёмном уголочке, даже психовал, пытаясь перейти на другие платформы (см. пост выше - поверьте, там не лучше, по крайне мере по состоянию 2-4 года назад), но потом понял, что нужно информировать о проблемах - и, о чудо, пару вещей по моей просьбе сделали - я улыбался от уха до уха. ведь я в этом заинтересованная сторона. примут/не примут - дело MQ. мое дело сообщить.

...а, может, вы и правы...

 
Igor Zakharov:

я тоже несколько лет сидел молча в тёмном уголочке, даже психовал, пытаясь перейти на другие платформы (см. пост выше - поверьте, там не лучше, по крайне мере по состоянию 2-4 года назад), но потом понял, что нужно информировать о проблемах - и, о чудо, пару вещей по моей просьбе сделали - я улыбался от уха до уха. ведь я в этом заинтересованная сторона. примут/не примут - дело MQ. мое дело сообщить.

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

Грамотно и полно описанная ошибка или предложение с обоснованием резко повышает шанс на ее исправление или внедрение. Если же информация идет кусочно, без деталей и в режиме пинг-понга «задайте мне вопрос, чтобы я выдал еще кусочек деталей», то все закономерно пропускается.

 
Renat Fatkhullin:

MQL5 - не пирожок для потребления «кусь и сыт», а среда безграничного программирования и исследовательский инструмент.

я бился лбом об эти границы и знаю, что они есть. из последнего - отсутствие многопоточности.

а остальную часть поста принял к исполнению :)

 
Renat Fatkhullin:

MQL5 - не пирожок для потребления «кусь и сыт», а среда безграничного программирования и исследовательский инструмент.

читал новости, там сейчас тож написали про "Россию отдельной цивилизацией"

совпадение? 



если серьезно,  Вы предлагаете решение проблемы "кастомными способами", но вместе с тем Вы же эту проблему и сформировали удачным разделением MQL-программы на простые, понятные и логичные секции OnInit/OnTick/OnDeinit для людей далеких от виртуального исполнения кода и сетевых технологий, а теперь вот обсуждаем, что даже если терминал работает на стороне клиента, да вот еще клиент должен учитывать, что в терминале есть чарт, а чарт это тоже отдельная сущность....

по моему, проще тогда сделать анонс, мол к концу этого года секция OnInit будет удалена, но будет поддерживаться для старых версий MQL-программ, ну мол это требования для увеличения 64-битной конфигурации терминала - все логично, программисты подхватят, а кто не в курсе, ну мол тыж не программист ))))

 
Igor Makanu:

он как раз и не признал проблемы, а поддержал разработчика, который не обеспечил заявленный функционал:

 https://www.mql5.com/ru/docs/event_handlers/oninit

https://www.mql5.com/ru/docs/runtime/event_fire#init

Вы конкретно обозначили область применения - инициализация свойств чарта, что полностью соответствует рекомендуемым примерам из документации от разработчика  - у Вас в секции OnInit() происходит обращение к свойствам чарта

https://www.mql5.com/ru/docs/chart_operations


это так на вскидку )))

ага... историй много, Ваша почему то из разряда: "а еще можно в этой машине порвавшийся ремень генератора дамскими чулками на время заменить! НО МАШИНА ТО ОГО-ГО! - ХОРОШАЯ!"

Что это было? 
Несуразица...
 
Igor Zakharov:

из последнего - отсутствие многопоточности.

ага, а потом окажется, что появится отсутствие синхронизации между потоками и обменом данных..... 

я тут себе задачку "нарисовал" - закрывать встречным лимитным ордером любой рыночный ордер, но так, чтоб ордер был на любом символе, да так, чтоб еще подвигать лимитку если цена ушла, да так, чтоб основная ТС считала, что ордер уже закрыт и продолжала работать дальше, да так, чтоб код мог встраиваться как готовая функция/класс в дальнейшие наработки.... как раз, кстати задачка для многопоточности


а у Вас где применение многопоточности поджимает?


вот можете внутри одного ЕА обернуть в класс все "потоки" и будет многопоточность - скорости МТ5 хватает для таких чудес

https://www.mql5.com/ru/forum/325418/page4#comment_16116740

 
Igor Makanu:

читал новости, там сейчас тож написали про "Россию отдельной цивилизацией"

совпадение? 



если серьезно,  Вы предлагаете решение проблемы "кастомными способами", но вместе с тем Вы же эту проблему и сформировали удачным разделением MQL-программы на простые, понятные и логичные секции OnInit/OnTick/OnDeinit для людей далеких от виртуального исполнения кода и сетевых технологий, а теперь вот обсуждаем, что даже если терминал работает на стороне клиента, да вот еще клиент должен учитывать, что в терминале есть чарт, а чарт это тоже отдельная сущность....

по моему, проще тогда сделать анонс, мол к концу этого года секция OnInit будет удалена, но будет поддерживаться для старых версий MQL-программ, ну мол это требования для увеличения 64-битной конфигурации терминала - все логично, программисты подхватят, а кто не в курсе, ну мол тыж не программист ))))

Вы бредите.

 
Aleksey Nikolayev:

Лично я получил очень ценный совет от руководства - "пишите сами". Каковым теперь и пользуюсь по мере возможностей. Это весьма способствует спокойствию духа.

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


Artyom Trishkin:
Что это было? 
Несуразица...


Renat Fatkhullin:

Вы бредите.

как минимум с одним из трех собеседников согласен

оффтоп закончил, самого уже раздражать начинает, работает ну и отлично!

 
Igor Makanu:

а у Вас где применение многопоточности поджимает?

в основном, в экспертах, которые мониторят сразу несколько символов похожие на вашу проблемы: если пачкой закрывать/открывать группу ордеров, пока весь цикл не выполнится - ничего нельзя сделать, а, возможно, другой символ тоже пора закрывать или просто тралить; это усугубляется тем, что из-за сбоя с PositionsTotal() приходится принудительно останавливать единственный поток и ждать обновления таблицы позиций - опять потери.

когда тяжёлые вычисления; когда OnTimer() считает, и OnTick() проглатывается. иногда хочется два OnTimer :)

или такая нервирующая банальность: когда используешь MessageBox(), закрывая сетку, а ориентируешься по надписи на чарте, где указана текущая прибыль по символу - MessageBox останавливает единственный поток, надпись не обновляется.

за годы примеров много подобралось... помню в четвёрке (там асинхронных запросов вообще нет) кодил "треугольный арбитраж". сделал три советника - основной и два вспомогательных на двух других символах, которые по команде от основного шлют запросы параллельно... в итоге не было выигрыша вообще! если считать от момента отправки до подтверждения от брокера, что все три открыты. я когда-то на пятерку переходил только ради асинхронных запросов и OnTradeTrunsuctions(), но оказалось, что проблем с ними больше, чем выгоды... но я так и остался на ней.

всё... пора закрывать эту беседу, а то нытьё какое-то получается! аааааа!!! я всё смогу!!!! метатрэйдер пять - это пять!!! лучше его нет!!!.... уф, полегчало... завтра снова в бой!