Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Добавляй наш канал в друзья и следи за новостями!
concord99
514
concord99 2011.11.17 10:30 

Пожалуйста, подскажите - где ошибка неправильного параметра функции в строке:

SellTicket = OrderSend(Symbol(), OP_SELL, 0.03, Bid, 5, Bid+30*Point, Bid-300*Point, "Sell Order", 0, 0, Green);

Владимир Тезис
4269
Владимир Тезис 2011.11.17 15:03  

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 пунктов стопа это очень мало - это менее допустимого.

concord99
514
concord99 2011.11.17 15:20  
Большое спасибо за подсказки :)
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий