Выпущен новый клиентский терминал MetaTrader 4 build 199
Использование огромных многомиллионных баров исторических данных требует серьезных ресурсов компьютера. Рекомендации: оперативной памяти побольше (не менее 1Gb, лучше 2Gb или 4Gb) и процессор помощнее (лучше многоядерный).
- Максимум баров в истории 10 000 000
- Максимум баров на чарте 100 000
| string WindowExpertName( | ) |
string name=WindowExpertName();
GlobalVariablesDeleteAll(name);
К тому же добавили еще работу с глобальными переменными как с объектами - этого тоже не ожидал.
Ну и TerminalPath - чем не кнопка About.
fxt-файл размером 725 Мб - это круто =)))
| Символ | EURUSD (Euro vs US Dollar) | ||||
| Период | 1 Минута (M1) 1999.01.04 11:35 - 2006.11.07 17:14 | ||||
| Модель | Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика) | ||||
| Баров в истории | 2785668 | Смоделировано тиков | 14629311 | Качество моделирования | 25.00% |
Ура, товарищи! =)
Появилась штатная функция, позволяющая легко проверить возможность открытия любой позиции:
Параметры:
Пример: if(AccountFreeMarginCheck(Symbol(),OP_BUY,Lots)<=0 || GetLastError()==134) return; |
Больше не надо вычислять маржевые требования, сравнивать их с AccountFreeMargin() и решать - можно открыть позицию или нет. Достаточно явным образом узнать сколько останется маржи после открытия указанной позиции. Эта функция умеет считать абсолютно любые ситуации для любых символов и их совокупности. Учитываются все серверные настройки.
Пример кода по открытию позиции:
if(.....) // логика для открытия длинной позиции { //--- а у нас денег хватит? if(AccountFreeMarginCheck(Symbol(),OP_BUY,Lots)<5) // если останется меньше 5 долларов, то не пытаемся { Print("Не могу открыть позицию из-за недостатка средств!"); return(-1); } //--- все ок, открываемся ticket=OrderSend(.....); }Функция возвращает остаток маржевых средств в валюте депозита после открытия указанной сделки. Неразумно проверять на границу нуля, так как на такой грани допустимого сервер может дать отказ. Лучше всего проверять с небольшим запасом в несколько долларов.
Также трейдеру станет легче реализовывать детальную логику управления средствами с использованием расширенных возможностей функции MarketInfo:
- MODE_SWAPTYPE - тип свопов
- MODE_PROFITCALCMODE - способ расчета прибыли
- MODE_MARGINCALCMODE - способ расчета маржи
- MODE_MARGININIT - начальная/initial маржа (обычно для фьючерсов)
- MODE_MARGINMAINTENANCE - поддерживающая/maintenance маржа (обычно для фьючерсов)
- MODE_MARGINHEDGED - маржа перекрытой позиций в 1 лот
- MODE_MARGINREQUIRED - маржевые требования на 1 лот
- Tester: исправлен расчёт свободной маржи, которая в некоторых случаях считалась неправильно;
Какой workaround больше не нужен?
PS
С таким маркапом цитирование отдельного пункта меняет его номер. А в сорс лезть неохота...
Ура, товарищи! =)
- Tester: исправлен расчёт свободной маржи, которая в некоторых случаях считалась неправильно;
Какой workaround больше не нужен?
В процессе дальнейшей разработки языка MQL4 в целях систематизации некоторые функции были переименованы и перемещены из одной группы в другую. Старые названия функций не подсвечиваются и не связаны со справкой MetaEditor. Старые названия функций можно использовать, так как компилятор правильно их воспримет. Однако мы настоятельно рекомендуем использовать новые названия.
| Старое название | Новое название |
|---|---|
| BarsPerWindow | WindowBarsPerChart |
| ClientTerminalName | TerminalName |
| CurTime | TimeCurrent |
| CompanyName | TerminalCompany |
| FirstVisibleBar | WindowFirstVisibleBar |
| Highest | iHighest |
| HistoryTotal | OrdersHistoryTotal |
| LocalTime | TimeLocal |
| Lowest | iLowest |
| PriceOnDropped | WindowPriceOnDropped |
| ScreenShot | WindowScreenShot |
| ServerAddress | AccountServer |
| TimeOnDropped | WindowTimeOnDropped |
- Убран Multilanguage Pack, уменьшен размер дистрибутива до 3 Мб;
- Tester: уменьшено ограничение в количестве проходов для генетической
оптимизации (не менее 200 проходов);
- Tester: улучшено фрактальное моделирование бара. Теперь используются
более сглаженные паттерны для моделирования движения цены;
- Tester: исправлен расчёт свободной маржи, которая в некоторых случаях
считалась неправильно;
- Tester: исправлен расчёт состояния стопаута в случае абсолютного,
а не процентного уровня;
- Tester: в структуру заголовка FXT-файла добавлен параметр margin_stopout_mode,
при этом размер заголовка не изменился. Номер версии стал 403;
- Tester: правильная отрисовка линии аск при визуальном тестировании
в состоянии паузы;
- MQL4: улучшена работа с временными переменными типа string;
- MQL4: добавлены функции:
- AccountFreeMarginMode
- AccountStopoutMode
- AccountStopoutLevel
- AccountFreeMarginCheck
- MQL4: добавлены функции:
- IsVisualMode
- TerminalPath
- WindowExpertName
- WindowPriceMin
- WindowPriceMax
- GlobalVariablesTotal
- GlobalVariableName
- MQL4: изменена логика работы функции GlobalVariablesDeleteAll - теперь можно
указывать префикс имени для массового удаления глобальных
переменных;
- MQL4: в функцию MarketInfo добавлены идентификаторы:
- MODE_SWAPTYPE
- MODE_PROFITCALCMODE
- MODE_MARGINCALCMODE
- MODE_MARGININIT
- MODE_MARGINMAINTENANCE
- MODE_MARGINHEDGED
- MODE_MARGINREQUIRED
- MQL4: в связи с реструктуризацией функций переименованы следующие
функции (но эти имена будут поддерживаться и дальше ради совместимости):
- PriceOnDropped
- TimeOnDropped
- FirstVisibleBar
- BarsPerWindow
- ScreenShot
- HistoryTotal
- CompanyName
- ClientTerminalName
- ServerAddress
- Lowest
- Highest
- CurTime
- LocalTime
- MetaEditor: в связи с переименованием функций в словарь добавлен
раздел "Устаревшие функции";
- Объекту Fibo Expansion добавлено свойство луча;
- Исправлено и улучшено сканирование серверов при обрыве связи;
- Добавлена закачка и импорт данных в архиве котировок;
- Исправлено сохранение умолчательного флага background у объектов;
- Поправлена запись в конфигурационные файлы многострочных комментов
на чартах - теперь записывается только одна строка;
- Добавлен звуковой сигнал после окончания тестирования;
- Улучшен показ пустых баз данных в History Center - после первого обращения
данные подкачиваются и показываются;
- Серьезно ускорена работа с базами данных на огромных массивах
исторических данных;
- Серьезно ускорена операция удаления больших объемов исторических
данных из History Center, исправлена ошибка перезачитывания только
что стертой истории;
- Исправлены мелкие погрешности в выводе торговых логов.
Терминал можно скачать по ссылке http://www.metatrader4.com/files/mt4setup.exeЧерез несколько дней будет официально объявлен новый билд и обновление клиентского терминала также будет доступно через службу LiveUpdate.