советник глючит

 
пожалуйста посоветуйте что нибудь дельное. советник глючить. перестает каждый раз при закрытие ордеров что то делать. и мне приходиться его заново загружать. если способ чтоб меня его заново не загружать . чтоб сброс параметров был автоматический. если такая функция в тетатрейдер 4 
 
nazim25:
пожалуйста посоветуйте что нибудь дельное. советник глючить. перестает каждый раз при закрытие ордеров что то делать. и мне приходиться его заново загружать. если способ чтоб меня его заново не загружать . чтоб сброс параметров был автоматический. если такая функция в тетатрейдер 4 

Советник не может глючить. Он работает согласно заданному алгоритму.  Обратитесь к программисту написавшему советник.

 
Vitalii Ananev:

Советник не может глючить. Он работает согласно заданному алгоритму.  Обратитесь к программисту написавшему советник.

спосибо конечно. сожалению этот программист я. и обрашаться не кому. и я бы хотел знать если такая функция. котоорая перезапускает советник

 
nazim25:

спосибо конечно. сожалению этот программист я. и обрашаться не кому. и я бы хотел знать если такая функция. котоорая перезапускает советник

Нет такой функции, пишите советник правильно и все будет ок...

А если хотите помощи то выкладывайте код тут, не бойтесь ни для кого вы новой тайны не рассекретите... 

 
Vladimir Pastushak:

Нет такой функции, пишите советник правильно и все будет ок...

А если хотите помощи то выкладывайте код тут, не бойтесь ни для кого вы новой тайны не рассекретите... 

ну вот кусок программы

if (M20_M15<M5_M15) мувинг

{

RefreshRates();

int ut=OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, 0, NormalizeDouble(Ask+Point*TakeProfit,Digits));

by=false;

se=true;   флаги

}

if(se==true)

{

int sel=OrderSend(Symbol(), OP_SELL, lo, Bid, 3, 0,0);

}


if(by==true)

{

int boy=OrderSend(Symbol(), OP_BOY, lo, Bid, 3, 0,0);

}


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

 
nazim25:

ну вот кусок программы

if (M20_M15<M5_M15) мувинг

{

RefreshRates();

int ut=OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, 0, NormalizeDouble(Ask+Point*TakeProfit,Digits));

by=false;

se=true;   флаги

}

if(se==true)

{

int sel=OrderSend(Symbol(), OP_SELL, lo, Bid, 3, 0,0);

}


if(by==true)

{

int boy=OrderSend(Symbol(), OP_BOY, lo, Bid, 3, 0,0);

}


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

Это очень сложный случай :) Объясните хотя бы, вашу логику, что вы хотите получить. Когда открывать селл, а когда бай.

 
Vitalii Ananev:

Это очень сложный случай :) Объясните хотя бы, вашу логику, что вы хотите получить. Когда открывать селл, а когда бай.

да вы правы случи действительно сложный . пото му что програму пишет чайник. 

если ли какая нибудь функция . которая увеличивает следюший ордер на оприделеную величину в зависемости от переведюшей. только пожалуйста подробнее ато тут такой дяденка за компютером сядит . 

 
переведюшию проблему решил
 
nazim25:

да вы правы случи действительно сложный . пото му что програму пишет чайник. 

если ли какая нибудь функция . которая увеличивает следюший ордер на оприделеную величину в зависемости от переведюшей. только пожалуйста подробнее ато тут такой дяденка за компютером сядит . 

Что вы имеете в виду под этой фразой "которая увеличивает следюший ордер на оприделеную величину в зависемости от переведюшей". Вы хотите открыть новую позицию с объемом больше чем объем предыдущей закрытой (или еще не закрытой) позиции?

 
Vitalii Ananev:

Что вы имеете в виду под этой фразой "которая увеличивает следюший ордер на оприделеную величину в зависемости от переведюшей". Вы хотите открыть новую позицию с объемом больше чем объем предыдущей закрытой (или еще не закрытой) позиции?

да с объемом большим ешо с не закрытым ордером 

 
nazim25:

да с объемом большим ешо с не закрытым ордером 

Такой одной универсальной функции нет. Надо использовать несколько функций. С начало в списке открытых позиций с помощью функции OrderSelect() выбрать нужную вам позицию. Затем с помощью функции OrderLots() получить объем этой позиции. Увеличить этот объем на требуемую величину. И далее с помощью функции OrderSend() открыть новую позицию с новым объемом.

Причина обращения: