Скачать MetaTrader 5

Help--SOS!

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Forex Trader
114287
Forex Trader  
Вот сделан такой скрипт на версиях буильдов 193-194 работате.а мы с товарищем мучаемся и лопаемся от злости, и у нас не рабоатет-смысл в том этого скрипта,чтоб не мучатся в ручуную ан удаленые оредров а чтоб он сам удалял
Есть 2 версии--или наш брокер не пропускает(что маловероятно) или мы что то неверное написали,так помогите проясныть ситуацию в чем дело?

===============================
// УДАЛЕНИЕ ОТЛОЖЕНЫХ ОРДЕРОВ
void DeleteAllOrders(){
int i;
for(i=OrdersTotal()-1;i>=0;i--){
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
switch(OrderType()){
case OP_BUY:
break;
case OP_SELL:
break;
default:
OrderDelete(OrderTicket());
break;
}
}
}

======================================

и вот второй скрипт который закрывает все маркет оредра одновременно--то же не запускается и не исполняется на графике


// ЗАКРЫТИЕ ОТКРЫТЫХ ПОЗИЦИЙ
void CloseAllOrders(){
int i;
for(i=OrdersTotal()-1;i>=0;i--){
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
switch(OrderType()){
case OP_BUY:
OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),3,Red);
break;
case OP_SELL:
OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),3,Red);
break;
default: break;
}
}
}



жду вашего ответа!

P.S В Интеграл-банке на имеется в наличии исправленная версия буильд 195,в котором глюков хватало и которую вы исправляли,почему не можем обновыть до сиправленной версии?
Forex Trader
114287
Forex Trader  
При компиляции вот такое сообщение у Вас, случайно, не выскакивает?

Start function not found and cannot be runned.
0 error(s), 1 warning(s)
MetaQuotes Software Corp.
Модератор
186061
MetaQuotes Software Corp.  
А что в логах пишется? Торговля экспертам разрешена?
Forex Trader
114287
Forex Trader  
Значит так!в последжней версии Буиьд 195 он работает нормально
а Вот в первой версии от июнья месяца не работает вообще

Что касается вашему вопросу по части сообщения===== Start function not found and cannot be runned.
0 error(s), 1 warning(s) ========--это выскакивало до тех пор пока через СЕРВИС-НАСТРОЙКИ-СОВЕТНИКИ--разрешить торговать --там галочку не поставыл,как только поставыл,такого сообщения не было,но всеравно пришлось грузить последный юыльд 195-го...
Forex Trader
114287
Forex Trader  
А что в логах пишется? Торговля экспертам разрешена?



В ИнтегралБанк разрешена торговля всем чем угодно,лишь бы уметь зарабатывать!
MetaQuotes Software Corp.
Модератор
186061
MetaQuotes Software Corp.  
Не поставили галочки разрешения торговли - вот и не совершались торговые операции.
Forex Trader
114287
Forex Trader  
Не поставили галочки разрешения торговли - вот и не совершались торговые операции.

В первой версии 195-го эти галочки всеравно не помогли,они сработалысь именнов последней версии,вот о чме идёт речь,а у Укрсоца и у Интеграла как раз первые версии и стоят 195-го,и почему они не обновляются мне этого не понять!
Forex Trader
114287
Forex Trader  
И не поймешь, дорогой! пока не поймймешь, что надо было NormalizeDouble(...) использовать, и функцей GetLastErr() не пренебрегать, понимаешь... А то вы там совсем лопнете от злости, а нам всем обидно будет!...
Forex Trader
114287
Forex Trader  
И не поймешь, дорогой! пока не поймймешь, что надо было NormalizeDouble(...) использовать, и функцей GetLastErr() не пренебрегать, понимаешь... А то вы там совсем лопнете от злости, а нам всем обидно будет!...

alexjou, Вы уверены, что значения MarketInfo(OrderSymbol(),MODE_BID) и MarketInfo(OrderSymbol(),MODE_ASK) требуют дополнительного использования NormalizeDouble(...) ?
Forex Trader
114287
Forex Trader  
Уважаемые разработчики !

1) Если закрываем ордер таким образом:

OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);

и получаем ошибку исполнения 135 или 138, необходимо обновить данные при помощи функции RefreshRates () и повторить попытку.

Если закрываем ордер таким образом:

OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),3,Red);

и получаем ошибку исполнения 135 или 138, повторяем попытку без обновления RefreshRates (). Цены Bid и Ask кэшируются, а MarketInfo(OrderSymbol(),MODE_BID) нет ?

2) Значения MarketInfo(OrderSymbol(),MODE_BID) и MarketInfo(OrderSymbol(),MODE_ASK) требуют дополнительного округления с использованием NormalizeDouble(...) ?

3) Любой скрипт и зацикленный эксперт выполняются не зависимо от приходящих котировок.
Эксперт без зацикливания выполняется потиково. Права я или нет ?

Спасибо за ответ.
Forex Trader
114287
Forex Trader  
alexjou, Вы уверены, что значения MarketInfo(OrderSymbol(),MODE_BID) и MarketInfo(OrderSymbol(),MODE_ASK) требуют дополнительного использования NormalizeDouble(...) ?


ИМХО, все, что повышает помехоустойчивость кода - полезно. Места жалко для одной строчки, что ли? GetLastErr() - обязательная работа над ошибками, если хотите писать нормальный устойчивый код, а не бог знает что.
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий