Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Код ошибки: 4756. Видно на скрине.
1. Еще раз повтарю свой вопрос - Список символов по которым предполагается торговля селективно выбран (т.е. по всем символам которые собирается торговать мульт была выполнена команда SymbolSelect со вторым параметром true)?
Советую в блоке инициализации произвести выбор всех символов которые требуется при помощи SymbolSelect и проверить наличие данной ошибки после такой модификации.
2. Разработчикам:
а) Спрашивается с какого перепоя в список символов терминала в явном виде (можно посмотреть на скрине выше) попадают символы которые не были выбраны при помощи SymbolSelect (при условии что по ним вообще никаких действия кроме сбора определенной информации не проводилось)?
б) не кажется ли Вам сстранным что вот такие казалось бы безобидные вещи как SymbolsTotal(false) и SymbolName(index,false) приводят к явному отображению символов в окне визуализации.
Насколько я понимаю должно быть так - Нет SymbolSelect нет символа среди отображаемых в MarketWatch.
в) Насколько я понимаю в тестере правильно будет окружение грузить по всем опрашиваемым символам, а отображать только те которые выбраны при SymbolSelect либо по которым пользователь пытается получить цены или любую другую существенную информацию.
К примеру если я пытаюсь определить синхронизирован какой либо символ или насколько глубока его история на сервере зачем его тут же помещать в MarketWatch с признаком выбора?
А как поймать код ошибки в обозначенный Вами момент? Я регистрирую ошибку в последней строке приведенного кода.
Данная ошибка не появляется, если прямо перед этим кодом добавить следующую сроку:
Например так:
2. Разработчикам - Спрашивается с какого перепоя в список символов терминала в явном виде (можно посмотреть на скрине выше) попадают символы которые не были выбраны при помощи SymbolSelect (при условии что по ним вообще никаких действия кроме сбора определенной информации не проводилось)?
Тестер МТ5 использует очень точное моделирование торговых условий, включая максимально точную конвертацию профитов в валюту баланса.
Это означает, что при работе с кроссами приходится моделировать и базовую валютную пару для пересчета профита. То есть, при работе на некоторых инструментах (кроссах) идет двойной объем моделирования, чтобы в любую секунду расчет был абсолютно точный и повторяемый.
Interesting
Разумеется. Данный код стоит перед всеми последующими действиями:
Если условие не выполняется, дальнейших действий с данным инструментом не происходит.
На счет "SymbolSelect" при инициализации... Т.е. Вы считаете, что первый вызов ( SymbolSelect(Instrumet, true) ) не подгружает инструмент? Требуют, как минимум, два?
Просто я сначала перебираю символы на наличие (инициализирую). А потом уже в OnTick|OnTimer произвожу явный выбор, если инструмент не был ранее выбран.
uncleVic
Спасибо. Именно так сейчас и обхожу данную ошибку.
Если можно, поясните, пожалуйста, по каким причинам возникает нулевая цена? И может ли такое быть в жизни (читай, в режиме "реал-тайм", а не только при тестировании)?
Interesting
Разумеется. Данный код стоит перед всеми последующими действиями:
Если условие не выполняется, дальнейших действий с данным инструментом не происходит.
На счет "SymbolSelect" при инициализации... Т.е. Вы считаете, что первый вызов ( SymbolSelect(Instrumet, true) ) не подгружает инструмент? Требуют, как минимум, два?
Просто я сначала перебираю символы на наличие (инициализирую). А потом уже в OnTick|OnTimer произвожу явный выбор, если инструмент не был ранее выбран.
Странно, или я чего-то не понимаю или где-то есть код который работает не так как я предполагаю.
Насколько я знаю SymbolSelect достаточно использовать один раз, в блоке инициализации (желательно при этом проверить результат).
Я в тестере просто формирую MarketWatch из заранее подготовленного массива, примерно вот таким вот образом
Этого обычно бывает достаточно чтобы все символы в тестере стали доступны для торговли.
Но при таком подходе в случае если символ отсутствует в журнале появится примерно такая ошибка
Если все отработало как положено окно тестера должно принять примерно такой вид
Спасибо. Именно так сейчас и обхожу данную ошибку.
Если можно, поясните, пожалуйста, по каким причинам возникает нулевая цена? И может ли такое быть в жизни (читай, в режиме "реал-тайм", а не только при тестировании)?
Разработчикам
Хотел писать в СД, да передумал, буду тут - Добавьте плиз функцию bool SymbolExists(name) / bool SymbolIsExists(name)
Назначение - определяет наличие указанного символа на сервере. В случае успеха возвращает true.
Только так чтобы при ее использовании символ не отображался в MarketWatch у тестера (принцип такой же как у SymbolIsSynchronized).
Все это позволит избавится вот от таких вот неприятностей
Какой код ошибки?
Насколько видно из тестера стратегий, одновременно генериться две ошибки. Удается перехватить только последнюю.
Как мне его узнать? Код привел выше. Куда мне в него поместить вывод информации о коде ошибке?
Странно, или я чего-то не понимаю или где-то есть код который работает не так как я предполагаю.
...
Если все отработало как положено окно тестера должно принять примерно такой вид
Запустите, пожалуйста, тестер со своим мультивалютником с 2011.01.03 00:00:00.
У меня до 2011.01.03 00:59:59 доступны только 3 валютные пары (которые и отображаются в маркетвотч, на скрине видно). Начиная с 2011.01.03 01:00:00 - все нормально.
П.С.
Речь идет о демо-счетах MQ (для подготовки к чемпу).
Запустите, пожалуйста, тестер со своим мультивалютником с 2011.01.03 00:00:00.
У меня до 2011.01.03 00:59:59 доступны только 3 валютные пары (которые и отображаются в маркетвотч, на скрине видно). Начиная с 2011.01.03 01:00:00 - все нормально.
П.С.
Речь идет о демо-счетах MQ (для подготовки к чемпу).