0.03, Bid, 5, Bid+30*Point, Bid-300*Point
Лот нужно проверять через МаркетИнфо. Если он менее допустимого, то переменную лота ставим равной минимально-допустимому. Цену открытия прогоняем через
PR=NormalizeDouble(Bid,Digits); - как ни странно, но если этого не сделать, то нередко выскакивают всякие ошибки.
То же самое со стоплосом и тейком.
int MinLevel=MarketInfo(Symbol(),MODE_STOPLEVEL); int StopLoss=30;
if ( StopLoss <MinLevel) StopLoss=MinLevel;
double SL=NormalizeDouble(PR+ StopLoss *Point,Digits); - тоже нужно проверять на минимально-допустимое расстояние. Если Ваш ДЦ расширил спреды, то вполне может оказаться, что 30 пунктов стопа это очень мало - это менее допустимого.
Большое спасибо за подсказки :)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Пожалуйста, подскажите - где ошибка неправильного параметра функции в строке:
SellTicket = OrderSend(Symbol(), OP_SELL, 0.03, Bid, 5, Bid+30*Point, Bid-300*Point, "Sell Order", 0, 0, Green);