Здравствуйте. Вопрос для опытных программеров. У меня советник. Я им работаю направленно. Т.е. если технически есть тренд, я включаю советник по тренду (в настройках метатрейдера). Постоянно при компе не нахожусь. В случае разворота тренда нужно отключать советник. Короче нужен код, который я смогу вставить в советник. Уровень стоп советник (выключатель), при достижении ценой этого уровня, советник, "останавливается ", закрывает все убыточные сделки, убирает все отложенные ордера, ждет дальнейших действий от меня. Таким образом можно минимизировать риски. Помогите кто может.
Спасибо.
Что Вам сказать, "Если включаю советник" (Вручную) то также и выключайте. Чтобы не пролететь не забывайте про стоплосс, ну и тейкпрофит вам достаточный. Задумайтесь над тем что скорей всего вы будете ловитить отрицательные профиты. Уж если собрались торговать вручную, то торгуйте до самого...
попробуйте с таким кодом поэкспериментировать:
extern string name_stop_label = "stop_my_expert"; extern double price_up = 1.3300; extern double price_down = 1.3000; int start(){ if(GlobalVariableCheck(name_stop_label)) return(0); if(Close[0]>price_up) GlobalVariableSet(name_stop_label,price_up); if(Close[0]<price_down) GlobalVariableSet(name_stop_label,price_down); if(GlobalVariableCheck(name_stop_label)) return(0);// можно эту строку удалить return(0); }
попробуйте с таким кодом поэкспериментировать:
можно попробовать
if ...условие...
{
deinit();
}
неполиткорректно, конечно, но задачу свою выполняет :-)))
советник деинициализируется и инициализировать его уже придется ручками...
Попробуйте так:
//+------------------------------------------------------------------+ //| Остановка.mq4 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" double уровень_стопа = 1.33333;//перед началом работы =0, далее когда уходите, выставляете нужный уровень bool Работаем; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- if(уровень_стопа==0)Работаем=true; //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- //в место в коде где начинаются открытия ордеров ставим флаг if(Работаем){ //код открытия ордеров } //если достгли заданого уровня - остановка советника if(Ask==уровень_стопа){//или Bid Работаем=false; fЗакрыть_все_ордера(); } //---- return(0); } //+------------------------------------------------------------------+
Просто разделить что-нибудь на ноль,- советник остановится и будет ожидать повторной инициализации.
Чёрт, оригинально, ща попробую)))
Просто разделить что-нибудь на ноль,- советник остановится и будет ожидать повторной инициализации.
А вот фигушки:
#property copyright "Copyright © 2012 Mikhail Kozhemyako" #property link "ua3xcm@obninsk.com" int tick=0,Realtick=0; int init() { return(0); } int deinit() { return(0); } int start() { if(tick>=10) return(0); if(Realtick>=10) return(0); double x=0.0; Alert("Собираемся поделить на ноль, тик= ",Realtick); Realtick++; x=x/x; Alert("Делили на ноль, А пофигу уже который тик= ",tick); tick++; return(0); }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте. Вопрос для опытных программеров. У меня советник. Я им работаю направленно. Т.е. если технически есть тренд, я включаю советник по тренду (в настройках метатрейдера). Постоянно при компе не нахожусь. В случае разворота тренда нужно отключать советник. Короче нужен код, который я смогу вставить в советник. Уровень стоп советник (выключатель), при достижении ценой этого уровня, советник, "останавливается ", закрывает все убыточные сделки, убирает все отложенные ордера, ждет дальнейших действий от меня. Таким образом можно минимизировать риски. Помогите кто может.
Спасибо.