Помогите! МТС совершает только одну сделку

 
МТС совершает только одну сделку до ее перезапуска, бывает две, дальше не работает, помагает перезапуск советника(делает опять аналогично)!Что неправильно?
 
Неизвестно, поскольку не представлен сам предмет обсуждения...
 
МТС совершает только одну сделку до ее перезапуска, бывает две, дальше не работает, помагает перезапуск советника(делает опять аналогично)!Что неправильно?

Не правильный код по открытию сделок.
Можешь только его привести.
 
Весь код по открытию сделок правильный ведь сделки открываются!Вопрос почему после завершения сделки советник не работает.Как описать повтор функции открытия сделки?
 
Весь код по открытию сделок правильный ведь сделки открываются!Вопрос почему после завершения сделки советник не работает.Как описать повтор функции открытия сделки?

К сожалению среди программистов крайне редко встречаются Кашпировские, способные без анализа самого кода сказать о проблеме. Хотя если очень долго вопрошать здесь на форуме, не показывая сам код, то перебрав всевозможные варианты причин причина определённо будет диагностирована. Вам просто нужно будет подождать "немножко" пока вам расскажут про все возможные причины вашего неоткрытия сделок, а вы уже сами решите подходят они для вашей ситуации или нет.

У меня в таком случае может быть лишь одна рекомендация. Посмотрите образцы советников вот здесь https://www.mql5.com/en/code/mt4 и сделайте точно также. Те советники точно открывают множество сделок.
 
Весь код по открытию сделок правильный ведь сделки открываются!Вопрос почему после завершения сделки советник не работает.Как описать повтор функции открытия сделки?

Возможно, что у Вас в условии открытия используются какие-то глобальные переменные, которые не обнуляются после совершения сделки. Обнуление происходит при перезапуске советника и он продолжает торговлю.

Например, Вы используете флаг запрета открытия, который поднимается перед или после открытия одной позиции, а потом забываете его снять. В результате флаг остаётся поднятым и советник не может торговать, т.к. ему это запрещено.

Пример кода:

bool gbDisableTrade=False; // флаг опущен, торговать разрешено

...

if (gbDisableTrade) {
// открываем сделку
...
gbDisableTrade=True; // флаг поднят, торговать запрещено
}


В данном примере флаг используется для обеспечения 100%-ной гарантии того, что в каждый конкретный момент времени советник будет открывать только одну позицию. Но в коде ошибка. Нигде нет проверки закрытия позиции и опускания флага. Посмотрите свой код. Возможно, что у Вас сделано нечто подобное.
 
Вот:
bool first=true;
...

if (first) {a=Ask; b=Bid; first=false; return(0);}
...
Вот часть кода. Как его можно исправить?
 
Приведи условие для открытия сделки.
 
Если условия не верны то почему открывается первая сделка?
Проблема такова: с одним запуском мтс следует одна сделка,дальше надо удалить советник з графика и наново запустить тогда он совершыт еще одну сделку! МОЖЕТ ОН ПОСЛЕ СОВЕРШЕНИЯ ОДНОЙ СДЕЛКИ ПРОСТО ОСТАНОВЛЯЕТСЯ А НЕ ПРОДОЛЖАЕТ РАБОТАТЬ,КАК ЕГО ЗАПУСТИТЬ НА ПОСТОЯННУЮ РАБОТУ?
 
Вы можете опубликовать код или нет? Определитесь окончательно.
 
По сценарию код будет опубликован на 5-й странице не ранее :o)
Следите за обновлениями.....
Причина обращения: