пишет что валюта с именем "0" не найдена
При выставлении ордеров на покупку - всё нормально. При выставлении ордеров на продажу происходит такая ерунда. В функции OrderSend для определения финансового инструмента используется функция Symbol().
Сейчас переделаю на переменную _Symbol. Посмотрим, что получится
а у меня тоже такая беда была,
только у меня просто в других функциях Symbol равнялся 0
прикрепите код
Сейчас вот так
OrderSend(_Symbol, OP_BUY, lot, Ask, SP, Bid-sl*Point, Bid+tp*Point, NULL, Mag,0, CLR_NONE)
До того использовал функцию Symbol()
Проблема осталась
Внимательно пробежитесь по своему коду (не поленитесь несколько раз, если не найдёте с первого раза): такая ошибка "вылазит" когда в функцию вместо имени инструмента передаётся "0".
P.S. Это не только упомянутая OrderSend(). Это могут быть, например, iTime(), iBarShift(), MarketInfo() и т.д.
Сейчас вот так
OrderSend(_Symbol, OP_BUY, lot, Ask, SP, Bid-sl*Point, Bid+tp*Point, NULL, Mag,0, CLR_NONE)
До того использовал функцию Symbol()
Проблема осталась
NULL ещё можно вместо Symbol(). И искать надо во всём коде а не только в торговых функциях.
Так, теперь обновился до 610-го билда. Теперь вместо сообщения Tester: 0 symbol not found постоянно выскакивают сообщения типа
2014.02.22 13:31:47.594 2013.09.02 09:32 MyIndicator EURUSD,M5: destination array is of incompatible type
В моём пользовательском индикаторе MyIndicator 3 буфера. В третий буфер в соответствии с сигналами индикатора заносятся всего 3 значения: 0, 1 и 2.
Эти значения являются сигналами, которые из 3-го буфера передаются в эксперт:
0 - ожидание
1- продавать
2 - покупать
В индикаторе объявлен массив double POZA[]. Этот массив связан с 3-м буфером индикатора SetIndexBuffer(2, POZA).
В зависимости от расчётов, производимых индикатором в элемент массива POZA[0] и заносятся значения 0, 1 и 2.
Далее в коде индикатора эти значения считываются в переменную FPS типа double таким образом:
FPS = iCustom(NULL, 0, "MyIndicator", 2, 0)
В чём проблема?
Я не программер, последний раз занимался этим 15 лет назад в институте. Прошу помощи.
В 509 билде ничего этого не было.
Так, теперь обновился до 610-го билда. Теперь вместо сообщения Tester: 0 symbol not found постоянно выскакивают сообщения типа
2014.02.22 13:31:47.594 2013.09.02 09:32 MyIndicator EURUSD,M5: destination array is of incompatible type
В моём пользовательском индикаторе MyIndicator 3 буфера. В третий буфер в соответствии с сигналами индикатора заносятся всего 3 значения: 0, 1 и 2.
Эти значения являются сигналами, которые из 3-го буфера передаются в эксперт:
0 - ожидание
1- продавать
2 - покупать
В индикаторе объявлен массив double POZA[]. Этот массив связан с 3-м буфером индикатора SetIndexBuffer(2, POZA).
В зависимости от расчётов, производимых индикатором в элемент массива POZA[0] и заносятся значения 0, 1 и 2.
Далее в коде индикатора эти значения считываются в переменную FPS типа double таким образом:
FPS = iCustom(NULL, 0, "MyIndicator", 2, 0)
В чём проблема?
Я не программер, последний раз занимался этим 15 лет назад в институте. Прошу помощи.
В 509 билде ничего этого не было.
Ругается что не тот тип, подозреваю что double POZA[], должен объявлен так int POZA[]
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте!
Обновился терминал от Альпари.
При тестировании советника в журнале появляются множество записей такого типа: 2014.02.21 16:32:16.055 2013.09.02 11:15 Tester: 0 symbol not found.
Не могу найти причину ошибки. В старой версии терминала такого не припомню.
Поиск по форуму ничего не дал.
Подскажите, пожалуйста, в чём проблема.
Спасибо