Новая версия платформы MetaTrader 5 build 1930: Плавающие окна графиков и .Net библиотеки в MQL5 - страница 70

 

У меня просто странный опыт.

Я управлял MT5 на прошлой неделе, произвел несколько сделок на демо-счете MT5 (и недавно обновлен до 1959 года)

Этим вечером я клонировал свой Hd на новый SSD и запустил компьютер. Пока все хорошо, но терминал потерял все сделки и показывает баланс (начальный) 10.000 $.

Есть ли локальный файл, где должны быть отдельные сделки? Я попробовал во вкладке истории (щелчок правой кнопкой мыши :) полная история без изменений.

История и фактические открытые позиции кажутся потерянными?

Ну, это демо-счет, но тем не менее ...

С другой стороны, отображаются все объекты, которые были размещены моим советником:

I just have strange experience.

I was running MT5  the last week, produced some trades on the MT5-Demo account (and recently updated to 1959)

This evening I cloned my Hd on a new SSD and started the pc. Everything is fine so far but the terminal has lost all the trades and shows a balance of (the initial) 10.000$.

Is there a local file where the single trades should be? I tried in the history tab (right mouse click:) full history no change.

The history and the actual open positions seem to be lost?

Well it's a demo account but nevertheless ...

On the other hand all the objects that were placed by my EA are shown:


 
Slava :
Bid and Bid/Ask. Ask without Bid not applied to the bar
Когда появится Last, меняется ли создание бара? Не следует использовать тики для изменения цены?
 
Arthur Albano :
When there's Last, does the bar creation change? Shouldn't use price changing ticks?

Для русских, пожалуйста!

Тут русскоязычный форум, а вот англоязычный форум!

MQL5 forum
MQL5 forum
  • www.mql5.com
MQL5: Forum on automated trading systems and strategy testing
 
fxsaber:

Этот пример теперь работает в 15 раз быстрее

Грубо говоря, полный цикл записи/чтения тиков через ресурс идет со скорость 4 миллиона тиков в секунду.

Да, теперь похоже на правду. :))

 
Georgiy Merts:

Для русских, пожалуйста!

Тут русскоязычный форум, а вот англоязычный форум!

Я прошу прощения. Я не говорю по-русски, но начинаю понимать кириллицу. :)
 

Поскольку у нас всегда есть люди, которые жалуются на то, что MT5 использует слишком много ресурсов по сравнению с MT4, я решил начать сравнительный тест. Я не ожидал этих результатов относительно скорости выполнения, так как думал: «Да, MT5 потребляет больше памяти, но быстрее».

Форум по торговле, автоматизированным торговым системам и тестированию торговых стратегий

Сравнение управления памятью в MetaTrader 4 и MetaTrader 5 - MetaTrader 5 очень плохой

Ален Верлейен , 2018.12.09 17:14

Последний тест, который я сделал, должен был проверить скорость выполнения. Я ожидал, что MT5 будет быстрее или равен MT4 для таких данных захвата задачи. К моему большому удивлению, MT4 был примерно на 25% быстрее, чем MT5.

MT4 (сборка 1090)
MT5 (Beta Build 1959)
После нового запуска платформы
Итерация 100: заняло 599 мкс, все итерации 262457 мкс
Итерация 100: заняло 1077 мкс, все итерации 267031 мкс
Последующие звонки
Итерация 100: заняло 582 мкс, все итерации 64122 мкс
Итерация 100: заняло 690 мкс, все итерации 81501 мкс
Итерация 100: заняло 717 мкс, все итерации 68353 мкс
Итерация 100: заняло 1087 мкс, все итерации 84886 мкс
Итерация 100: заняло 610 мкс, все итерации 62642 мкс
Итерация 100: заняло 709 мкс, все итерации 80307 мкс

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

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

@Renat Fatkhullin, @Slava это нормально?


 
Alain Verleyen:

Поскольку у нас всегда есть люди, которые жалуются на то, что MT5 использует слишком много ресурсов по сравнению с MT4, я решил начать сравнительный тест. Я не ожидал этих результатов относительно скорости выполнения, так как думал: «Да, MT5 потребляет больше памяти, но быстрее».

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

@Renat Fatkhullin, @Slava это нормально?

У вас несколько погрешностей:

  1. Нельзя тестировать CopyXXX функции из индикаторов, так как в индикаторах отдается только то, что есть без контроля полноты данных
  2. Не проверяются результаты операций
  3. Месячные данные на многих инструментах в МТ4 в урезанном виде, так что не всегда можно получить запрошенные 500 MN баров

Я переписал пример в виде скрипта, уменьшил MN до 250 баров, добавил проверки и вывод информации об окружении.

Вот результаты на последних бетах MT4 1150 (доступно на MetaQuotes-Demo) и MT5 1959: данные в микросекундах

 MT4
MT5
Холодный запуск
5 symbols, 100000 max bars:
    EURUSD
    USDCHF
    USDCAD
    GBPUSD
    USDJPY
Iteration 1: took 36085 msc for 5 symbols
Iteration 2: took 155 msc for 5 symbols
...
Iteration 100: took 138 msc for 5 symbols
Total: 51442 msc

5 symbols, 100000 max bars:
    EURUSD
    USDCHF
    USDCAD
    GBPUSD
    USDJPY
Iteration 1: took 1400323 msc for 5 symbols
Iteration 2: took 12430 msc for 5 symbols
Iteration 3: took 212 msc for 5 symbols
...
Iteration 100: took 205 msc for 5 symbols
Total: 1434053 msc

Горячий запуск
Iteration 1: took 235 msc for 5 symbols
Iteration 2: took 138 msc for 5 symbols
...
Iteration 100: took 136 msc for 5 symbols
Total: 15524 msc

Iteration 1: took 317 msc for 5 symbols
Iteration 2: took 204 msc for 5 symbols
...
Iteration 100: took 201 msc for 5 symbols
Total: 21456 msc


Разница в холодном подъеме в том, что МТ5 проводит полную проверку истории и гарантированно сверяется с торговым сервером, чтобы докачать недостающие или отсутствующие данные.

Причем проверяются исходные M1 данные, из которых потом строятся другие периоды. Это гарантирует, что в МТ5 максимально точные данные. В МТ4 проверки самые минимальные и данные берутся прямо из файла.

В горячем режиме синхронизированных данных у МТ4 данные выдаются быстрее на 6 мс в запросе 45 чартов(одна итерация из 5 симвлов на 9 периодов), так как у него очень простая система хранения чартов, не приспособленная для работы с большими объемами. В МТ5 мы серьезно изменили механизмы хранения и доступа к данным, что приносит дополнительные расходы.

Спасибо за тест - мы проведем дополнительную оптимизацию в МТ5 и постараемся ускорить эти места.


По поводу поднятых вопросов по потреблению памяти в МТ4 и МТ5:

  • МТ4 является 32 битной программой с массой ограничений по объему данных, разрабатывалась во времена (2004 год) серьезного дефицита памяти
  • МТ4 не имеет единой базы M1 баров, из которых строятся остальные периоды. Каждый период строится и живет отдельно. Это снижает затраты памяти
  • МТ4 имеет ограниченную мультипотоковость во внутренних операциях
  • МТ4 имеет серьезные ограничения по количеству символов и торговому окружению, включая историю

  • МТ5 64 битный и предназначен для работы с огромными объемами данных и все процессы в нем настроены на работу и удержание максимума данных в памяти
  • МТ5 всегда имеет М1 основу для построения остальных периодов, а также тиковые данные
  • МТ5 не имеет ограничений по объему обрабатываемых данных, много фоновых потоков по докачке и управлению данными
  • МТ5 старается использовать доступную память, а не пытается ужаться в 100-200 мб. Упор на максимизацию кешей
  • МТ5 имеет гораздо более мощную MQL5 инфраструктуру внутри терминала
  • МТ5 нацелен на компьютеры с 2-4-8-16-32-64 гб памяти, 4-8 и больше ядер
  • МТ5 оперирует в десятки раз большими объемами данных, чем МТ4

  • Таковы сегодняшние задачи по анализу данных


Не подумайте, что мы плохо разрабатываем системы или что-то ухудшаем.

Мы максимально нацелены на оптимизацию и ускорение обработки данных. Посмотрите в каталоги данных Метатрейдера 5 - там гигабайты и десятки гигабайт данных. И дальше будет еще больше - объем данных и качество анализа растут.

Для сравнения качества нашей оптимизации и мощности посмотрите на другие платформы на C#/Java. Вот там реально тормозные приложения, оперирующие смешными объемами данных.

Файлы:
 
Renat Fatkhullin :
...

Ренат, во-первых, спасибо за подробный ответ. Я забыл сказать, что перед запуском этого последнего теста я был уверен, что все данные были доступны и загружены (за исключением менее 500 баров на графиках месяца). Вот почему я прокомментировал или удалил проверку или печать кода.

Разница в холодном подъеме в том, что МТ5 проводит полную проверку истории и гарантированно сверяется с торговым сервером, чтобы докачать недостающие или отсутствующие данные.

Я знаю, это хорошо.

Спасибо за тест - мы проведем дополнительную оптимизацию в МТ5 и постараемся ускорить эти места.

Большое спасибо.

Не подумайте, что мы плохо разрабатываем системы или что-то ухудшаем.

Лично я не думаю, что вы развиваете плохую или ухудшающуюся систему, я единственная, кто защищает MT5 от всех глупостей, которые люди могут сказать субъективно. Но вы, вероятно, говорите в целом, а не со мной.

Мой главный критик против МТ5 - это отсутствие стабильности. Я бы предложил вам изучить возможность полностью разделить официальный релиз и бета-версию. Большинство людей (на форуме, я знаю, что это только небольшая часть пользователей) не в состоянии изменить ситуацию. Они подключаются к Metaquotes-Demo или даже к бета-версии, даже не зная, что делают. По крайней мере, на английской стороне.

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

 

@ Ренат Фатхуллин

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

Форум по торговле, автоматизированным торговым системам и тестированию торговых стратегий

MT5: Проблемы и ошибки при работе с реальными тиками / пользовательскими тиками.

Ален Верлейен , 2018.12.07 05:07

Бета-версия 1958 года (а предыдущая из?).

При использовании CustomTicksReplace () для импорта буфера в 10 миллионов тиков на пользовательский символ (для запуска пустой истории тиков) требуется 90 секунд! В памяти 10 миллионов тиков - это около 600 МБ, но затем они каким-то образом сжимаются для записи в файл тиков (базу данных). Тик базы данных составляет от 6 до 7 байт, скажем, 7 байт, 10 миллионов тиков - это в худшем случае 70 МБ.

Проверяя диск моего компьютера, я вижу, что скорость передачи очень низкая, в среднем даже не 1 МБ / с. На жестком диске, способном достигать 80 МБ / с в режиме записи (проверено вчера с помощью эталонного программного обеспечения).

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

PS: автоматический перевод, вероятно, не должен переводить собственное существительное (?).
 
Build 1959. Подпапки расположены в обратном алфавитном порядке. Пожалуйста, проверьте.