Сегодня один из советников, запущенных на демо-счете одного известного ДЦ (исправлено Artyom Trishkin),
у этого брокера давно уже некие динамические лоты и маржа по ним сложно считается, да кстати и этот брокер со настройкой SYMBOL_TRADE_STOPS_LEVEL был первый кого я заметил
тут в общем проблема больше в брокере чем повсеместно, хотя может быть и остальные переймут этот плохой опыт - сбивать самонастраивающиеся эксперты
хотя может быть и остальные переймут этот плохой опыт - сбивать самонастраивающиеся эксперты
Я к тому же и веду. Раз один нашел лазейку, то и другой вполне может найти. А пока разберешься, можно много средств потерять.
Напрашивается неприятный вывод: появилась очередная константа, значению которой верить нельзя (до этого такой константой была SYMBOL_TRADE_STOPS_LEVEL).
Таких констант много. Я например часто получал MODE_MARGINREQUIRED = 0, и MODE_TICKVALUE = 0.
Приходится обкладывать это костылями.
Таких констант много. Я например часто получал MODE_MARGINREQUIRED = 0, и MODE_TICKVALUE = 0.
Это наверное на старте работы советника, пока терминал не подключен к серверу. Я не запускаю советник до тех пор, пока имеются нули в параметрах, которые являются критичными. Для меня это: TickSize, Point и TickValue.
Это наверное на старте работы советника, пока терминал не подключен к серверу. Я не запускаю советник до тех пор, пока имеются нули в параметрах, которые являются критичными. Для меня это: TickSize, Point и TickValue.
По MODE_MARGINREQUIRED и MODE_TICKVALUE - это ДЦ не транслирует. Причем как от ДЦ зависит так и внутри одного ДЦ, по разным инструментам тоже может где быть, где нет.
Кухни могут отдавать в конфиге символа полную ерунду. Такие штуки лучше в настройки эксперта выводить.
Это уже не автоторговля, а какая-то полуручная торговля))
Смысл ветки не в том, что кухни вытворяют, а в том, почему вообще возможно сделать так, что в параметрах, отдаваемым эксперту (индикатору, скрипту), указано одно, а на сервере совсем другое? То есть вопрос как раз к самому терминалу.
Представьте себе ситуацию, когда в настроечных параметрах эксперта пользователь указал торговать лотом 0.5, а он торгует лотом 1.5. Кухонный эксперт что ли получается?
Второй момент, на который я, возможно не слишком акцентировал внимание, это тот факт, что в запрашиваемом параметре указано ненулевое значение. С другими параметрами хотя бы можно догадываться о том, что они неправильные, раз 0 получаешь. А тут - вполне нормальное значение.
Это уже не автоторговля, а какая-то полуручная торговля))
Смысл ветки не в том, что кухни вытворяют, а в том, почему вообще возможно сделать так, что в параметрах, отдаваемым эксперту (индикатору, скрипту), указано одно, а на сервере совсем другое? То есть вопрос как раз к самому терминалу.
Представьте себе ситуацию, когда в настроечных параметрах эксперта пользователь указал торговать лотом 0.5, а он торгует лотом 1.5. Кухонный эксперт что ли получается?
Второй момент, на который я, возможно не слишком акцентировал внимание, это тот факт, что в запрашиваемом параметре указано ненулевое значение. С другими параметрами хотя бы можно догадываться о том, что они неправильные, раз 0 получаешь. А тут - вполне нормальное значение.
А чего удивляться? В Инсте например лоты отличаются в 10 раз.
Размер залоговой маржи может отличаться. У одних брокеров 1 лот - 100000 долларов, у других - в зависимости от базовой валюты.
Это уже не автоторговля, а какая-то полуручная торговля))
Смысл ветки не в том, что кухни вытворяют, а в том, почему вообще возможно сделать так, что в параметрах, отдаваемым эксперту (индикатору, скрипту), указано одно, а на сервере совсем другое? То есть вопрос как раз к самому терминалу.
Представьте себе ситуацию, когда в настроечных параметрах эксперта пользователь указал торговать лотом 0.5, а он торгует лотом 1.5. Кухонный эксперт что ли получается?
Второй момент, на который я, возможно не слишком акцентировал внимание, это тот факт, что в запрашиваемом параметре указано ненулевое значение. С другими параметрами хотя бы можно догадываться о том, что они неправильные, раз 0 получаешь. А тут - вполне нормальное значение.
Так терминал же эти значения получает с сервера кухни, не с потолка берёт.
Так терминал же эти значения получает с сервера кухни, не с потолка берёт.
В этом и заключается вопрос: почему в терминал поступает значение максимального объема, отличающееся от того значения, которое используется сервером фактически?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Сегодня один из советников, запущенных на демо-счете одного известного ДЦ (исправлено Artyom Trishkin), стал приводить к ошибке 131 (неправильный объем). В ходе выяснения причины (сначала я грешил на ошибку округления к шагу, хотя функция проверки объема безупречно работала много лет), оказалось, что советник пытается выставить достаточно большой объем - 672.08. Тогда проверил, что возвращает
Итог - 1000.0. То есть максимум не превышен. Попытался вручную открыть рыночный ордер с объемом 672.08 и получил ошибку "Неправильный объем". Эмпирическим путем выяснил, что максимальный объем, который позволяет открыт сервер, 50.0.
Напрашивается неприятный вывод: появилась очередная константа, значению которой верить нельзя (до этого такой константой была SYMBOL_TRADE_STOPS_LEVEL). То есть и для максимального объема придется вводить настроечный параметр, при помощи которого пользователь должен (подчеркиваю: не может, а должен) регулировать правильность максимального объема.
Да, это демо-счет, и вроде бы на это и можно все списать. Но гарантии того, что подобное не случится на реальном счете, нет. Оказывается в клиентском терминале и сервере вполне допускаются расхождения в настроечных параметрах. Все это очень грустно...