Помогите пожалуйста. Какие-то ошибки в советнике

 

Уже все пересмотрел, все переобдумывал, не знаю в чем может быть ошибка, вроде все правильно..

double best = 0; // самая высокая цена при нашем тренде в данной операции
bool trend = true; // true - играем на рост, false - на понижение
bool stint = 0.0003; // ограничение при превышение которого от значения best происходит закрытие сделки
int ticket = 0;

int init()
{
ticket = OrderSend(Symbol(), OP_BUY, AccountBalance()/100000, Ask, 1000, Bid-1000*Point,Bid+1000*Point);
best = Bid;
}


int deinit()
{
if (trend == true) OrderClose(ticket, OrderLots(), Bid, 1000);
else OrderClose(ticket, OrderLots(), Ask, 1000);

}

int start()
{
if (trend == true) {
if (best < Bid) best = Bid;
else if ((best - Bid) >= stint) {
trend = false;
OrderSelect(ticket, SELECT_BY_TICKET);
OrderClose(ticket, OrderLots(), Bid, 1000);

ticket = OrderSend(Symbol(), OP_SELL, AccountBalance()/100000, Bid, 1000, Ask-1000*Point,Ask+1000*Point);
best = Bid;

}
} else {
if (best > Ask) best = Ask;
else if ((Ask - best) >= stint) {
trend = true;
OrderSelect(ticket, SELECT_BY_TICKET);
OrderClose(ticket, OrderLots(), Ask, 1000);

ticket = OrderSend(Symbol(), OP_BUY, AccountBalance()/100000, Ask, 1000, Bid-1000*Point,Bid+1000*Point);
best = Bid;

}
}
}


Открывает первую сделку, закрывает её в глубоком минусе почему-то, а дальше выдает ошибки:

2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:59 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:58 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:58 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:58 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:57 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:57 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:57 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:56 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:56 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:56 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:55 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:54 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:54 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:54 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:53 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:53 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:53 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:52 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:52 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:52 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:51 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:50 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:50 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:50 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:49 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:49 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:49 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:48 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:48 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:48 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:47 Ooe EURUSD,M1: OrderSend error 131
2013.10.11 18:16:17 2010.01.05 23:47 Ooe EURUSD,M1: OrderClose error 4051
2013.10.11 18:16:17 2010.01.05 23:47 Ooe EURUSD,M1: invalid ticket for OrderClose function
2013.10.11 18:16:17 2010.01.05 23:47 Ooe EURUSD,M1: OrderSend error 131

Подскажет пожалуйста, в чем может быть проблема?

Зарание спасибо

 
qaliti:

Уже все пересмотрел, все переобдумывал, не знаю в чем может быть ошибка, вроде все правильно..



Подскажет пожалуйста, в чем может быть проблема?

Зарание спасибо


А анализом ошибок не пробовали заниматься? Хотя совет вряд ли поможет
 
Пробовал, не разобрался...
 
qaliti:
Пробовал, не разобрался...

ERR_INVALID_TRADE_VOLUME131Неправильный объем

ERR_INVALID_FUNCTION_PARAMVALUE4051Недопустимое значение параметра функции
 
Или коды ошибок ни о чем не говорят?
 

А баланс небось баксов 100, с плечом 1:1000 )))

А посчитать какой лот получится с формулы лот= AccountBalance()/100000 и спросить своего дилера, можно ли у них с таким лотом торговать наверное не судьба...

Не говоря уж о том что свободных средств может и не оказаться, а советник этого не проверяет.

Ну и выбор ордера совсем не так делать полагается.

 

Коды ошибок мне не о чем не говорят.. потому что я не очень понимаю в программирование.. неправильный объем чего, и параметры вроде верные..

Я все делаю на тесте истории. С балансом 10 000 000 . И лоты получаются высокие.. Проверял ограничения - 1 лот. Ниже него оно не может падать в принципе...

 
evillive:

А баланс небось баксов 100, с плечом 1:1000 )))

А посчитать какой лот получится с формулы лот= AccountBalance()/100000 и спросить своего дилера, можно ли у них с таким лотом торговать наверное не судьба...

Не говоря уж о том что свободных средств может и не оказаться, а советник этого не проверяет.

Ну и выбор ордера совсем не так делать полагается.



Не надо злобствовать. Вариант рабочий, правда только для оптимизации или тестера.Но с некоторыми поправками можно использовать
 
 
Sepulca:


Прикольно ) А что неправильного в выделенной строке? )
 
qaliti:

Прикольно ) А что неправильного в выделенной строке? )

Как вариант - не хватает обязательных параметров например. А размер позиции все-таки считайте по другому и правильно
Причина обращения: