Ошибки, баги, вопросы - страница 3334
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не требовалась сортировка, т.к. просто шла дозапись в конец. За два года разработчикам тонны аргументов были направлены через все виды контактов.
Проверил в последнем билде 3802 в надежде, что это исправили, но увы ...
Наличие кэшированных данных гарантирует их актуальность на каждый момент времени?
По теме.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
MT5 и скорость в боевом исполнении
Renat Fatkhullin, 2020.08.28 00:38
И эти таблицы могут в любой момент измениться. Как и отдельные записи в них.
Никто не может гарантировать их неизменность из-за асинхронных операций, процессов синхронизации и режимов глубины, выставляемых пользователями вручную.
Как я писал выше, мы применим методы интеллектуального кеширования, что снизит до нуля расходых на Select функции. Если, конечно, не будете специально рандомизировать пределы выборок. Последнюю дату можно менять и она не будет инвалидировать кеш, если она всегда будет в будущем/послднем времени. Последние транзакции будут экономно добавляться в кеш.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
MT5 и скорость в боевом исполнении
Renat Fatkhullin, 2020.08.27 22:58
Поэтому и такие расходы на копирование. Тем более, если специально заниматься одновременным принудительным копированием этой истории в кеш из множества потоков.
Мы уже многое оптимизировали в операциях выборок и сейчас думаем над оптимальным обновлением кеша, когда в реальности 99% выборок будут полностью бесполезными и пропускаться по факту.
То есть, если не будете специально рандомизировать пределы выборок, то кеш будет показывать попадания, близкие к 100%.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
MT5 и скорость в боевом исполнении
Renat Fatkhullin, 2020.09.01 14:18
нужно четко понимать, что подход "вызову HistorySelect на всю историю, а потом сразу еще сделаю выборку HistorySelectByPosition" будет убивать ранее созданные кеши истории. Это выстрел себе в ногу.
Как сейчас - не знаю. Разработчики, вроде, ни разу не комментировали.
Решил установить себе один торговый ассистент на мт5 на macOS. Но так как один ассистент уже был установлен, новый мне установить не удавалось и он не появлялся в общем.
И тут я решил удалить все файлы с папки "каталог данных" вместо того что бы сделать это разумно. (файлы что удалил прикрепил как пример с мт4)
Теперь после того как я скачиваю мт5 и устанавливаю его и перемещаю иконку. Сразу же при нажатии на иконку мт5 выскакивает окошко на 1 секунду и сразу тухнет и так все время комп перезагружал, удалял и скачивал повторно. (окошко что выскакивает закрепил).
С корзины тоже все файлы удалил) пробовал восстанавливать на рабочий стол в папку но не помогло)
В общем не знаю что делать остается наверное либо бек спать мак либо пользоваться только мт4))
Буду очень признателен за ответ и за помощь, кто знает выход из ситуации.
... Решил установить себе один торговый ассистент на мт5 на macOS ...
У меня нет компьбтера на MacOS, но я нашел один пост (там была похожая проблема в той ветке) -
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
после обновления не запускается платформа.
MetaQuotes, 2023.06.09 23:10
На Маке надо удалить старую инсталляцию на Wine 6.0 и переустановить новый пакет с Wine 7.7
Ссылка на инсталлятор внизу страницы справа.Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
fxsaber, 2023.06.13 08:03
Ручаться не могу, релогин к торговому серверу может приводить к подобному перетряхиванию.
Странно, что релогин не приводит к отправке события Init в эксперты (MT4). Но при этом в журнале
Automated trading disabled because the account has been changedТо есть, аккаунт в достаточной мере изменился для отключения автоторговли, но этого не достаточно для отправки Init в эксперты.
Пример 1% случаев, когда не в конце окажется и buy/sell.
В этом случае часто будет происходить ситуация, когда Buy-приказ будет не в конце таблицы ордеров.
Давайте разберем, что это обозначает. Пусть в таблице истории ордеров 1000 записей - ордера с индексами (HistoryOrderGetTicket) от 0 до 999.
Вот произошло событие п.3 выше - BuyLimit удалился и попал в таблицу истории ордеров. Он имеет индекс 1000 - его тикет отдается вызовом HistoryOrderGetTicket(1000).
Теперь произошло срабатывание Buy-приказа из п.1 - Buy-приказ попал в таблицу истории ордеров. Вы думаете, что его индекс 1001?
-Нет, его индекс 1000! Т.е. HistoryOrderGetTicket(1000) возвращал одно значение (BuyLimit-ticket), а через некоторое время - другое (Buy-ticket).
Интересна реакция не MQ, а форумчан. Либо это "красноречивое молчание", либо пофигизм.
Можно ли утверждать обратное?
То есть, если HistoryOrderGetTicket(prevTotal - 1) не изменился, значит ли это, что ордера добавлены в конец и можно брать их оттуда? Или не факт?
Я думаю, вы поняли. Детектить таким образом факт перетасовывания истории. И анализировать всю историю заново только если она перетасована
Доброе время суток.
Хотел кое-что актуальное предложить. В настройках MetaEditor не нашел полных шаблонизированных настроек для "шапки" создаваемых файлов исходного кода (я про #property и т.д. , хотя при создании есть Author и Link).
Хотел предложить рассмотреть вопрос расширенной шаблонизации части генерируемых файлов с исходным кодом - в частности автоматического добавления предопределённых #property и т.д.
В чем польза - в каждом новом советнике или индикаторе или скрипте будет автоматически с #property добавляться например предопределенное кастомное уведомление об отказе от ответственности все такое. Вообще, это положено делать всем, но почти никто не утруждает себя той юридически традиционной процедурой. А если в MetaEditor будет возможность настроить генерируемую шапку с #property для интеграции в каждый создаваемый советник и т.д. - будет очень удобно.
Спасибо за внимание.
Можно ли утверждать обратное?
То есть, если HistoryOrderGetTicket(prevTotal - 1) не изменился, значит ли это, что ордера добавлены в конец и можно брать их оттуда? Или не факт?
Факт.
Я думаю, вы поняли. Детектить таким образом факт перетасовывания истории. И анализировать всю историю заново только если она перетасована
Довольно много сил потратил на разные реализации, где пытался максимально заоптимизировать. Например, исходя из списка живых ордеров можно точно сказать, какая часть таблицы 100% не будет перетряхиваться.
В общем, до релиза не дошел, на который мог бы положиться. Удручает, что разработчики молчком, а потому запросто могут что-то поменять. После недавнего бага HistorySelect вынуждены будут менять что-то в логике этой функции, а потому прежние алгоритмы могут снова перестать работать.
К сожалению, все несколько не так с коммуникацией с MQ, как хотелось бы.
Ошибка при выполнении:
Результат: 1
Ожидалось: 2
Результат: 1
Ожидалось: 2