Выяснилось, что в тестере TICKVALUE для не текущего символа также не возможно получить.Пришлось в тестируемом советнике TICKVALUE записывать в глобальную переменную терминала и читать её в индикаторе.
Хотя, конечно, можно было сделать проще - задать значение TICKVALUE во внешней переменной.
Выяснилось, что в тестере TICKVALUE для не текущего символа также не возможно получить.Пришлось в тестируемом советнике TICKVALUE записывать в глобальную переменную терминала и читать её в индикаторе.
Хотя, конечно, можно было сделать проще - задать значение TICKVALUE во внешней переменной.
тоже самое и для свопов
Давно отказался от MarketInfo. Перешел на Получение рыночной информации. И проблем стало поменьше, да и с написанием MQL4/5 проблем не возникает, т.к. тот-же SymbolInfoDouble нормально работает в обоих версиях.
Давно отказался от MarketInfo. Перешел на Получение рыночной информации. И проблем стало поменьше, да и с написанием MQL4/5 проблем не возникает, т.к. тот-же SymbolInfoDouble нормально работает в обоих версиях.
SymbolInfoDouble(Symb2,SYMBOL_TRADE_TICK_VALUE) в тестере МТ4 эта функция тоже не работает(не выдаёт информацию), если символ не текущий, т.е. !=Symbol().
SymbolInfoDouble(Symb2,SYMBOL_TRADE_TICK_VALUE) в тестере МТ4 эта функция тоже не работает(не выдаёт информацию), если символ не текущий, т.е. !=Symbol().
Не следует забывать, что символ "Symb2" должен быть выбран в окне "Обзор рынка" и перед обращением к свойствам символа не будет лишним подёргать его за... сами знаете за что, но это не шутка.
Пока нет к символу обращения, его свойства ВСЕ не загружены, не обновлены.
Не следует забывать, что символ "Symb2" должен быть выбран в окне "Обзор рынка" и перед обращением к свойствам символа не будет лишним подёргать его за... сами знаете за что, но это не шутка.
Пока нет к символу обращения, его свойства ВСЕ не загружены, не обновлены.
В окне "Обзор рынка" символ присутствует. На всякий случай ещё перед вызовом SymbolInfoDouble(Symb2,SYMBOL_TRADE_TICK_VALUE) ещё поставил функцию SymbolSelect(Symb2,true); , но это не помогает. А как и за что дёргать не понял.
SymbolInfoDouble(Symb2,SYMBOL_TRADE_TICK_VALUE) в тестере МТ4 эта функция тоже не работает(не выдаёт информацию), если символ не текущий, т.е. !=Symbol().
Тестер МТ4 одновалютный. Получить подобные сведения о другом символе невозможно. Можно лишь ухищрениями разными (недокументированными, а потому - овчинка выделки не стоит), но прямого пути нет.
Кстати, при запросе Bid и Ask другого символа получите текущие реальные цены, а не те, которые соответствуют тестируемому периоду. Цены другого символа можно получить, если обращаться к таймсериям. Close - это Bid.
Тестер МТ4 одновалютный. Получить подобные сведения о другом символе невозможно. Можно лишь ухищрениями разными (недокументированными, а потому - овчинка выделки не стоит), но прямого пути нет.
Кстати, при запросе Bid и Ask другого символа получите текущие реальные цены, а не те, которые соответствуют тестируемому периоду. Цены другого символа можно получить, если обращаться к таймсериям. Close - это Bid.
Ну так из советника то вся инфа нормально получается о символах с других графиков, а вот в индикаторах нет.
Вроде всегда говорилось, что нельзя лишь открывать ордера других символов, а анализировать другие символы с целью получения сигнала для входа по текущей паре можно. Только вот такая возможность в эксперте есть, а в индикаторах почему то нет.
Ну так из советника то вся инфа нормально получается о символах с других графиков,
Я вчера специально попробовал вызвать из советника в тестере. Ожидаемо получил ошибку - 4106 (неизвестный символ). В онлайн все проходит хорошо.
а вот в индикаторах нет.
У индикатора будут такие же возможности, как у советника, если указать тип программы в тестере (вместо "Советник" выбрать "Индикатор"). Если индикатор просто прикреплен к окну визуализации, то это такой же индикатор, как и онлайн. Он знать ничего не знает о тестерном окружении.
Вроде всегда говорилось, что нельзя лишь открывать ордера других символов, а анализировать другие символы с целью получения сигнала для входа по текущей паре можно. Только вот такая возможность в эксперте есть, а в индикаторах почему то нет.
На самом деле даже с анализом информации по другим символам в МТ4 все очень печально. Что-то работает, а что-то нет. Часто приходится писать костыли, которые в реальной жизни не нужны.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Во время прогона теста в тестере эта функция из индикатора Spread не выдаёт, а из советника выдаёт. Хотя TICKVALUE из индикатора выдаёт нормально. В чём дело кто-нибудь знает?
Благо, что Ask и Bid MarketInfo() выдаёт нормально и приходится вычислять Spread как их разность.