Как начать работу с Metatrader 5 - страница 124

 

Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий

Новая платформа MetaTrader 5 build 2170: MQL5 сфера, глобальный тестер стратегий и встроенный виртуальный хостинг обновлены

MetaQuotes Software Corp., 2019.10.03 15:18

Обновление платформы MetaTrader 5 будет выпущено в пятницу, 4 октября 2019 года В новой версии произошли следующие изменения:

  1. Терминал: Полностью переработаны встроенные опции управления виртуальным хостингом. Вся информация об арендованном терминале, а также функции миграции среды, остановки и запуска теперь доступны на отдельной вкладке окна Инструменты.

    В предыдущих версиях функции виртуального хостинга были доступны в контекстном меню окна Навигатора. Теперь вся необходимая информация и команды управления удобно расположены на вкладке "VPS":




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

    • Данные о соединении: сравнение сетевых задержек между вашим терминалом на хостинг-сервере и терминалом, запущенным на локальном ПК.
    • Торговый счет, для которого арендован хостинг, и план оплаты.
    • Уникальный идентификатор подписки. При нажатии на идентификатор открывается раздел "Хостинг" в профиле пользователя MQL5.community, из которого можно управлять подпиской.
    • Дата регистрации и текущее состояние. Если услуга хостинга остановлена, здесь мгновенно появится соответствующий статус.

    С помощью кнопки Start/Stop виртуальный терминал можно быстро запустить или остановить.

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

    Здесь также доступна информация о последней миграции торговой среды, а также команды миграции. Эти команды обеспечивают быструю миграцию среды после приобретения подписки.

    Виртуальную платформу можно арендовать на вкладке "VPS". Процесс аренды не изменился, он по-прежнему быстрый и простой. Вам нужно только выбрать тарифный план и подходящий способ оплаты. Лучший сервер для подключения к вашему брокеру будет выбран автоматически.




  2. Терминал: Добавлена возможность быстрого перехода к операциям ввода/вывода средств на сайте брокера.

    Теперь нет необходимости искать соответствующие функции в кабинете трейдера на сайте брокера. Команды быстрой навигации доступны непосредственно в терминалах: в меню счетов в Навигаторе и в панели инструментов > вкладка "Торговля":



    • Операции ввода/вывода средств доступны только в том случае, если для торгового счета на стороне брокера включены соответствующие функции.
    • Торговый терминал не выполняет операций по пополнению/выводу средств со счета. Встроенные функции перенаправляют пользователя на соответствующие страницы сайта брокера.
  3. Терминал: Новые поля в спецификации торгового символа:

    Категория
    Свойство используется для дополнительной маркировки финансовых инструментов. Например, это может быть сектор рынка, к которому принадлежит символ: Сельское хозяйство, Нефть и газ и другие. Категория отображается только в том случае, если соответствующая информация предоставлена брокером.

    Биржа
    Название биржи, на которой торгуется ценная бумага. Категория отображается только в том случае, если соответствующая информация предоставлена брокером.

    Комиссии
    Информация о комиссиях, взимаемых брокером за сделки с символом. Здесь отображаются детали расчета:

    • Комиссия может быть одноуровневой и многоуровневой, то есть быть одинаковой вне зависимости от объема/оборота сделки или может зависеть от размера. Соответствующие данные отображаются в терминале.
    • Комиссия может взиматься непосредственно при совершении сделки или в конце торгового дня/месяца.
    • Комиссия может взиматься в зависимости от направления сделки: вход, выход или оба вида операций.
    • Комиссия может взиматься за лот или сделку.
    • Комиссия может рассчитываться в деньгах, процентах или пунктах.

    Например, следующая запись означает, что комиссия взимается сразу при входе и выходе из сделки. Если объем сделки составляет от 0 до 10 лотов, за одну операцию взимается комиссия в размере 1,2 USD. Если объем сделки составляет от 11 до 20 лотов, комиссия в размере 1,1 USD взимается за каждый лот сделки.
    Commission | Instant, volume, entry/exit deals
    0  - 10  | 1.2 USD per deal
    11 - 20  | 1.1 USD per lot



  4. Терминал: В спецификацию символа добавлены дополнительные поля, связанные с опционами:

    • Тип опциона - колл или пут
    • Базовый символ - базовый символ опциона
    • Цена исполнения - цена исполнения опциона

  5. Терминал: Добавлена поддержка поставки опционов"греки": дельта, гамма, вега, тета, ро. Брокеры могут предоставлять дополнительную информацию, связанную с такими инструментами. Эти данные отображаются в разделе "Подробности" окна "Обзор рынка" и могут быть использованы для расширенного анализа торговли:




  6. Терминал: Инструмент "Перекрестие" теперь показывает расстояние между ценовыми уровнями в процентах, в дополнение к ранее доступным пунктам:




  7. Терминал: Добавлено отображение результирующей цены в торговых диалогах во время операций исполнения Market и Exchange, если эта цена доступна в момент получения ответа от брокера:




  8. Терминал: Исправлена ошибка, из-за которой команда "Показать все" в окне Market Watch могла не отображать список всех доступных торговых инструментов.

  9. MQL5: Пересмотрена операция scope, благодаря чему MQL5 стал еще ближе к C++. Это дает MQL5-программистам более широкие возможности в работе со сторонними библиотеками. Обновление устраняет необходимость модификации библиотек и унификации идентификаторов.

    Пример: Код содержит объявление двух структур с одинаковым именем, хотя они принадлежат разным классам. В предыдущих версиях такое объявление приводило к ошибке компиляции: "идентификатор уже использован". Теперь этот код будет успешно скомпилирован и выполнен. Для корректного доступа к нужной переменной/структуре/функции извне ее области видимости необходимо указать класс (в данном случае это CBar::Item).
    class CFoo
      {
    public:
       struct Item { int x; };
      };
    //+------------------------------------------------------------------+
    class CBar
      {
    public:
       struct Item { int x; };
      };
      
    CBar::Item item;  // proper declaration of the Item structure from the Bar class
    Item       item;  // incorrect declaration
    Добавлена поддержка пространств имен, что дает больше возможностей при использовании стороннего кода/библиотек в MQL5-приложениях.

    #define  PrintFunctionName() Print(__FUNCTION__)
    
    namespace NS
    {
    void func()
      {
       PrintFunctionName();
      }
    
    struct C
      {
       int               x;
                         C() { PrintFunctionName(); };
      };
    }
    
    struct C
      {
       int               x;
                         C() { PrintFunctionName(); };
      };
    
    //+------------------------------------------------------------------+
    //|                                                                  |
    //+------------------------------------------------------------------+
    void func()
      {
       PrintFunctionName();
      }
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       func();
       NS::func();
    
       C c;
       NS::C ac;
      }
    После выполнения в качестве вывода отображается следующий результат:
    2019.09.18 13:39:35.947    TestScript (AUDCAD,H1)    func
    2019.09.18 13:39:35.949    TestScript (AUDCAD,H1)    NS::func
    2019.09.18 13:39:35.949    TestScript (AUDCAD,H1)    C::C
    2019.09.18 13:39:35.949    TestScript (AUDCAD,H1)    NS::C::C

  10. MQL5: В новой версии ускорен доступ к данным временных рядов с помощью следующих функций: iTime, iOpen, iHigh, iLow, iClose, iVolume, iTickVolume, iSpread.

  11. MQL5: Добавлена поддержка атрибута "=delete". Он позволяет запретить использование определенных методов класса.
    class A
      {
       void              operator=(const A &)=delete;    // prohibit object copying operator
      };
    
    class B : public A
      {
      };
    
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       A a1,a2;
       B b1,b2; 
      
       a1=a2;
       b1=b2;
      }
    В данном примере компилятор вернет ошибки для "a1=a2" и "b1=b2":
    attempting to reference deleted function 'void A::operator=(const A&)'
       function 'void A::operator=(const A&)' was explicitly deleted here

    attempting to reference deleted function 'void B::operator=(const B&)'
       function 'void B::operator=(const B&)' was implicitly deleted because it invokes deleted function 'void A::operator=(const A&)'

  12. MQL5: В перечисление ENUM_SYMBOL_INFO_STRING были добавлены следующие значения:

    • SYMBOL_CATEGORY - категория символа. Используется для дополнительной маркировки финансовых инструментов. Например, это может быть сектор рынка, к которому принадлежит символ: Сельское хозяйство, Нефть и газ и другие.
    • SYMBOL_EXCHANGE - название биржи, на которой торгуется символ.

  13. MQL5: Добавлена поддержка закрытия позиции по правилу FIFO.

    • Значение ACCOUNT_FIFO_CLOSE было добавлено в ENUM_ACCOUNT_INFO_INTEGER. Оно указывает на то, что позиции могут быть закрыты только по правилу FIFO. Если значение свойства равно true, то позиции по каждому инструменту могут быть закрыты только в том же порядке, в котором они были открыты: сначала должна быть закрыта самая старая позиция, затем следующая и т.д. В случае попытки закрыть позиции в другом порядке будет выдана ошибка. Значение свойства всегда равно 'false' для счетов без управления хеджирующими позициями (ACCOUNT_MARGIN_MODE!=ACCOUNT_MARGIN_MODE_RETAIL_HEDGING).
    • Новый код возврата: MT_RET_REQUEST_CLOSE_ONLY- запрос отклонен, так как для символа установлено правило "Разрешено только закрытие существующих позиций по правилу FIFO".

    Существует три основных метода закрытия позиции:

    • Закрытие с клиентского терминала: трейдер закрывает позицию вручную, с помощью торгового робота, на основе подписки на сервис Signals и т.д. В случае попытки закрыть позицию, которая не соответствует правилу FIFO, трейдер получит соответствующую ошибку.
    • Закрытие при срабатывании Stop Loss или Take Profit: эти ордера обрабатываются на стороне сервера, поэтому закрытие позиции не запрашивается на стороне трейдера (терминала), а инициируется сервером. Если Stop Loss или Take Profit срабатывает для позиции, и эта позиция не соответствует правилу FIFO (существует более старая позиция по тому же символу), позиция не будет закрыта.
    • Закрытие по срабатыванию Stop Out: такие операции также обрабатываются на стороне сервера. В обычном режиме, в котором закрытие на основе FIFO отключено, в случае срабатывания Stop Out позиции закрываются, начиная с той, которая имеет наибольший убыток. Если эта опция включена, время открытия будет дополнительно проверяться на наличие убыточных позиций. Сервер определяет убыточные позиции для каждого символа, находит самую старую позицию для каждого символа, а затем закрывает ту, которая имеет наибольший убыток среди найденных позиций.

  14. Добавлены опции для группировки параметров через "входную группу". Это позволяет визуально разделять параметры на основе их логики.

    В приведенном ниже коде эксперта входные параметры сгруппированы в соответствии с их назначением:
    input int             ExtBBPeriod    =20;         // Bollinger Bands period
    input double          ExtBBDeviation =2.0;        // deviation
    input ENUM_TIMEFRAMES ExtSignalTF    =PERIOD_M15; // BB timeframe
    
    input group           "Trend"
    input int             ExtMAPeriod    =13;         // Moving Average period
    input ENUM_TIMEFRAMES ExtTrendTF     =PERIOD_M15; // MA timeframe
    
    input group           "ExitRules"
    input bool            ExtUseSL       =true;       // use StopLoss
    input int             Ext_SL_Points  =50;         // StopLoss in points
    input bool            ExtUseTP       =false;      // use TakeProfit
    input int             Ext_TP_Points  =100;        // TakeProfit in points
    input bool            ExtUseTS       =true;       // use Trailing Stop
    input int             Ext_TS_Points  =30;         // Trailing Stop in points
    
    input group           "MoneyManagement"
    sinput double         ExtInitialLot  =0.1;        // initial lot value
    input bool            ExtUseAutoLot  =true;       // automatic lot calculation
    
    input group           "Auxiliary"
    sinput int            ExtMagicNumber =123456;     // EA Magic Number
    sinput bool           ExtDebugMessage=true;       // print debug messages
    Когда такой советник запускается в тестере стратегий, блоки входных параметров можно свернуть или развернуть двойным щелчком по названию группы, а также выбрать все параметры в группе для оптимизации с помощью одного флажка.




  15. MQL5: Исправлен импорт функций DLL с именами, совпадающими с именами функций MQL5. Пример:
    #import "lib.dll"
    int func();
    #import
    //+------------------------------------------------------------------+
    //|                                                                  |
    //+------------------------------------------------------------------+
    int func()
      {
       return(0);
      }
    //+------------------------------------------------------------------+
    //| Script program start function                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       Print( func() );
      }
    В предыдущих версиях при компиляции возникала следующая ошибка:
    'func' - ambiguous call to overloaded function with the same parameters
    could be one of 2 function(s)
       int func()
       int func()
    Теперь вместо ошибки по умолчанию будет использоваться встроенная функция MQL5 с более высоким приоритетом. Импортированную функцию можно вызвать, явно указав область видимости:
    void OnStart()
      {
       Print( lib:: func() );
      }
  16. MQL5: Исправлено указание времени в новостях экономического календаря. Теперь при доставке событий учитывается часовой пояс торгового сервера, к которому подключен терминал, а не часовой пояс локального компьютера.
  17. MQL5: Исправлено чрезмерное потребление памяти в функциях Copyticks и CopyTicksRange.
  18. Сигналы: Исправлено отображение графиков сигналов при работе в Wine (Mac OS и Linux).
  19. Тестер: Большое обновление Тестера стратегий. Новая стартовая страница, переработанная страница настроек, улучшенное удобство использования.

    Стартовая страница
    Теперь после запуска тестера вместо множества настроек пользователь видит список стандартных задач, выбрав которые он может быстро начать тестирование. Новый дизайн предназначен в первую очередь для неопытных пользователей.

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




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




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




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

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




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

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




  20. Тестер: График оптимизации теперь может отображаться в основной рабочей области терминала, вместо того чтобы отображаться в отдельном разделе тестера стратегий. Таким образом, для анализа данных становится доступно гораздо больше места. Также была обновлена система 3D-визуализации.




  21. Тестер: Добавлено сохранение кэша оптимизации для режима"Все символы в Market Watch".
  22. Тестер: Добавлено сохранение кэша тестов.

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

    Чтобы загрузить предыдущие результаты тестирования, воспользуйтесь новой стартовой страницей Тестера: нажмите "Предыдущие результаты" и выберите нужный сайт:




  23. Tester: Значительное ускорение тестирования и оптимизации, включая операции, выполняемые с помощью MQL5 Cloud Network.
  24. Тестер: Исправлены и оптимизированы операции с фреймами.
  25. Метаредактор: Добавлена возможность настройки стайлера кода.

    В MetaEditor встроен стилизатор кода, который позволяет автоматически форматировать текст программы в соответствии с принятым стандартом. Теперь, помимо общепринятого стиля, вы можете использовать другие популярные стандарты. Для этого откройте настройки MetaEditor и выберите нужный стиль:




    Для стилиста можно дополнительно задать следующие параметры:

    Пробелы на отступ
    Устанавливает количество пробелов, используемых при выравнивании вложенных конструкций:
    if(condition)
      {
       //---
      }

    Заменять табуляции пробелами
    Если эта опция включена, стилизатор заменит все табуляции в коде пробелами. Количество символов на табуляцию задается в разделе Общие.

    Удалять пустые строки
    Если эта опция включена, стилизатор будет удалять все строки, содержащие только символ переноса строки.

    Вставлять пробелы после запятых и точек с запятой
    Когда эта опция включена, стилизатор будет визуально разделять конструкции с перечислениями элементов. Пример:
    // before styling
     ParameterGetRange("InpX",enable,x_cur,x_start,x_step,x_stop);
    // after styling
    ParameterGetRange("InpX", enable, x_cur, x_start, x_step, x_stop);

    Вставлять пробелы вокруг операторов объявления
    Когда эта опция включена, стилизатор будет вставлять пробелы вокруг операторов присваивания, равенства, сравнения и других. Пример:
    // before styling
    if(x==1&y!=2)
      {
       int a=0;
      }
    // after styling
    if(x == 1 & y != 2)
     {
      int a = 0;
     }

  26. MetaEditor: В контекстное меню закладок файлов добавлена команда "Показать в навигаторе". Таким образом, пользователь может легко найти открытый для редактирования файл в структуре папок редактора.




  27. MetaEditor: Исправлено отображение ключевого слова 'union' во всплывающих подсказках.
  28. Пользовательский интерфейс был дополнительно переведен на 18 новых языков:

    • Европейский регион - шведский, литовский, датский, латышский, эстонский, сербский, словенский, словацкий, финский, грузинский.
    • Азиатский регион - яванский, маратхи, бенгальский, пенджаби, тамильский, телугу
    • Африканский регион - суахили, хауса.

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

    Чтобы установить язык интерфейса, перейдите в меню "Вид / Язык" в верхней части терминала.

  29. Документация была обновлена.
  30. Исправления на основе журналов аварий.

Обновление будет доступно через систему Live Update.


строение 2170

строение 2170

 
Привет всем. я обновил mt5 toaday, после обновления я не могу увидеть место приложения market для индикаторов. как добавить его снова?
 
pawan sharma:
Привет всем. я обновил mt5 toaday, после обновления я не могу увидеть место приложения market для индикаторов. как добавить его снова?

На вкладке Market?

Я думаю - это зависит от версии Windows,
Например, у меня есть вкладка Market на Windows 8.1 (но нет на Windows Server 2008) ...
Возможно, это зависит от версии Windows и версии Internet Explorer.


 
Sergey Golubev:

Вкладка Market?

Я думаю, это зависит от версии Windows,
Например, у меня есть вкладка Market на Windows 8.1 (но у меня нет ее на Windows Server 2008) ...
Возможно, это зависит от версии Windows и версии Internet Explorer.


У меня была эта вкладка market до вчерашнего дня, но сегодня я получил уведомление об обновлении и обновил свой mt5 после этого вкладка market исчезла, я использую win 7


скриншот

 
pawan sharma:

У меня была эта вкладка market до вчерашнего дня, но сегодня я получил уведомление об обновлении и обновил mt5, после чего вкладка market исчезла, я использую win 7.



Возможно, я помню, что было объявлено, что win 7 больше не будет поддерживаться в будущем.

 

Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий

Новая версия платформы MetaTrader 5 build 2170: Сферы на MQL5, глобальное обновление тестера стратегий и интегрированный хостинг

Ренат Фатхуллин, 2019/10/06 15:53

Вкратце:

  1. Компилятор MQL5 постоянно развивается и совершенствуется.

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

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

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

  3. В релизе 2170 мы открыли полноценные пространства имен.

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

  4. У авторов библиотек есть два пути - правильное полноценное именование функций и/или защита через классы

    Кто использует родовое именование - только вредит себе. И никакие идеи "пусть компиляторы сказочным образом разгребают мусор" не работают. Компиляторы (в первую очередь C++) с каждой версией все больше и больше работают с Цербером, чтобы показать и предотвратить максимум мусора и откровенно ошибочных конструкций.

  5. Этот релиз стал последним для выпуска 32-битной версии.

    В течение следующих 6 месяцев мы будем распространять 32-битную сборку сборки 2170 в инсталляторах, а затем прекратим это.

  6. Начиная со следующей недели, мы начнем удалять поддержку 32-битного кода из компилятора и терминала MetaTrader 5.

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

 
Хочу напомнить эту статью -
ID MetaQuotes в мобильном терминале MetaTrader
 
pawan sharma:
Привет всем. я обновил mt5 toaday, после обновления я не могу увидеть место приложения market для индикаторов. как добавить его снова?

Я только что узнал, как это исправить:

Зайдите в журнал в Metatrader, чтобы увидеть рекомендации:

И я использую эту ссылку для установки последней версии Internet Explorer:
https://www.microsoft.com/en-us/download/internet-explorer-11-for-windows-7-details.aspx
и у меня появилась вкладка Market -

----------------

Итак, если вы не видите вкладку Market в последней сборке Metatrader (или если у вас, например, ошибка с этой вкладкой Market) - установите (или переустановите) Internet Explorer до последней версии (до версии 11, например).

 

пожалуйста, я новичок в MQ5, как мне начать, пожалуйста?????

 
adogbeji collins:

пожалуйста я новичок в MQ5 как мне начать пожалуйста?????

Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий

Что такое 100% Algo Trader? Я хочу стать Algo трейдером, как это возможно?

Сергей Голубев, 2019.10.14 13:17

  1. С чего начать?
    https://www.mql5.com/en/forum/212020
  2. Как сделать поиск на форуме
    https://www.mql5.com/en/forum/193510
  3. Вы занимаетесь автотрейдингом?
    https://www.mql5.com/en/forum/9950/page76#comment_2743406
  4. Помощь MetaTrader 5 → Алгоритмическая торговля, торговые роботы