Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
if(AccountFreeMargin()<(1000*Lots)) - т.е. на один лот 1000, а к примеру для евро надо уже больше, сейчас почти 1300... Это первая проблема, вторая, шаг лота.
А это не всегда так. Есть ДЦ, у кот. маржинальные требования 1000 енотов на 1 лот любой валюты.
Разработчикам: подумать бы над созданием функции, отвечающей по маржинальным требовниям. В особенности это важно для кросс-курсов.
Во-вторых, сразу после этого надо добавить:
Должно работать ;)
ps: настоятельно рекомендую все выражения и переменные нормализовывать перед сравнением. Речь идёт о размере лота - ошибка может быть достаточно обидной...
Есть такая функция:
double MathRound(double value)
Функция возвращает значение, округленное до ближайшего целого числа указанного числового значения.
Можно ли её использовать для округления не до ближайщего целого числа, а с точностью до шага лота?
Мне кажеться это не то что нужно, ведь шаг лота может быть и не 1, а 10 или больше.
Нельзя быть таким ленивым ;)
Ё! Работает! Спасибо!
Вот конечный результат:
И как быть например с йеной? Ask будет больше 100, значит размер лота будет в сто раз меньше :-(
komposter, а может стоит истользовать не Ask, а MarketInfo(Symbol(),MODE_ASK)?
Если я ничего не перепутал =)
Для евры - 10 в степени (4-1) = 10*10*10 = 1000
Для йены - 10 в степени (2-1) = 10 = 10
Правильно?