можно написать...
если нужно, то можно :)
ALex2008, мой тебе совет по поводу последней твоей фразы: я тоже раньше думал, что все эти прибамбасы типа советников-помошников, кот. сами ставят стоп и тейк, переносят стоп в безубыток и т.д. помогут избежать сливания - нет, не помогут. Научись сам отсекать убытки по своей же стратегии, и ты перестанешь сливать.
Alex5757000 >>:
ALex2008, мой тебе совет по поводу последней твоей фразы: я тоже раньше думал, что все эти прибамбасы типа советников-помошников, кот. сами ставят стоп и тейк, переносят стоп в безубыток и т.д. помогут избежать сливания - нет, не помогут. Научись сам отсекать убытки по своей же стратегии, и ты перестанешь сливать.
ALex2008, мой тебе совет по поводу последней твоей фразы: я тоже раньше думал, что все эти прибамбасы типа советников-помошников, кот. сами ставят стоп и тейк, переносят стоп в безубыток и т.д. помогут избежать сливания - нет, не помогут. Научись сам отсекать убытки по своей же стратегии, и ты перестанешь сливать.
Спасиб на добром слове))
https://www.mql5.com/ru/code/8807
Посмотри, это не в точности то, что ты ищешь, но похоже
Пока такой вариант - советник поддерживает только один открытый ордер!
Проверить пока не на чем)
//+------------------------------------------------------------------+ //| 20090614_Orders.mq4 | //| Ш. Александр В. | //| | //+------------------------------------------------------------------+ #property copyright "Ш. Александр В." #property link "" extern int profit = 100; //установка профита extern int sloss = 10; //установка стопа extern int PowerBU = 1; //Использование БУ: 1-Power, 0-Off extern double BU_Enter = 12; //отклонение цены после открытия для перехода в БУ extern double BU_Stop = 1; //0-чистый БУ, 1,2,3... - БУ в плюсе) int LEV,SPR; double p,sl,SLBU,BUPrise; bool Modify,ModifyBU; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- BU_Enter *= Point; //сколько ждать пп до перехода в БУ BU_Stop *= Point; //на сколько пп закрывать БУ в плюс LEV =MarketInfo(Symbol(),MODE_STOPLEVEL); //вычисление стоплевел SPR =MarketInfo(Symbol(),MODE_SPREAD); //вычисление спреда LEV(); //проверяем стоп и профит на стоплевел... Modify=false; ModifyBU=false; //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- if (OrderSelect(0,SELECT_BY_POS)==true) // Если есть открытый ордер { if (Modify==false) ModifySL(); if (PowerBU==1) //Если использование БУ включено { if (BU_Stop < (BU_Enter-(SPR*Point)-(LEV*Point))) //проверка параметров БУ { if (ModifyBU==false) ModifySLinBU(); } } } else { Modify=false; ModifyBU=false; LEV =MarketInfo(Symbol(),MODE_STOPLEVEL); SPR =MarketInfo(Symbol(),MODE_SPREAD); Comment( "STOPLEVEL: "+ LEV,"\n", "СПРЕД: "+ SPR,"\n", "МИНИМАЛЬНЫЙ СТОП: "+ (LEV+SPR)); LEV(); //проверяем стоп и профит на стоплевел... } //---- return(0); } //+------------------------------------------------------------------+ //| Проверка стоплевела и TP,SL //+------------------------------------------------------------------+ void LEV() { LEV=MarketInfo(Symbol(),MODE_STOPLEVEL); if ((sloss-SPR)<= LEV) sl=LEV*Point; else sl=((sloss-SPR)*Point); if (profit<= LEV) p=LEV*Point; else p=profit*Point; } //+------------------------------------------------------------------+ //| Модификация ордера на установку SL и TP | //+------------------------------------------------------------------+ void ModifySL() { RefreshRates(); if (OrderType()==OP_BUY) { Modify = OrderModify(OrderTicket(),OrderOpenPrice(),Bid-sl, Ask+p,0,Red); if (Modify == false) Print("Ошибка изменения ордера #",OrderTicket(), " при попытке установить СТОП ",Bid - sl,". Текущая цена- ",Bid,", код ошибки ="+GetLastError()); else { BUPrise = OrderOpenPrice()+BU_Enter; //цена для перехода в БУ SLBU = OrderOpenPrice()+BU_Stop; //БУ или БУ+ } } else { Modify = OrderModify(OrderTicket(),OrderOpenPrice(),Ask+sl, Ask-p,0,Red); if (Modify == false) Print("Ошибка изменения ордера #",OrderTicket(), " при попытке установить СТОП ",Ask - sl,". Текущая цена- ",Ask,", код ошибки ="+GetLastError()); else { BUPrise = OrderOpenPrice()-BU_Enter; //цена для перехода в БУ SLBU = OrderOpenPrice()-BU_Stop; //БУ или БУ+ } } } //+------------------------------------------------------------------+ //| Модификация ордера на установку БУ | //+------------------------------------------------------------------+ void ModifySLinBU() //перевод позы в БУ при профите равном или большем BU { RefreshRates(); if ((OrderType()==OP_BUY)&& (Bid >= BUPrise)) { ModifyBU = OrderModify(OrderTicket(),OrderOpenPrice(),SLBU,OrderTakeProfit(),0,Red); if (ModifyBU == false) Print("Ошибка изменения ордера #",OrderTicket(), " при попытке установить БУ ",SLBU," Текущая цена- ",Bid," код ошибки ="+GetLastError()); } if ((OrderType()==OP_SELL)&& (Ask <= BUPrise)) { ModifyBU = OrderModify(OrderTicket(),OrderOpenPrice(),SLBU,OrderTakeProfit(),0,Red); if (ModifyBU == false) Print("Ошибка изменения ордера #",OrderTicket(), "при попытке установить БУ ",SLBU," Текущая цена- ",Ask," код ошибки ="+GetLastError()); } } //+------------------------------------------------------------------+ //---- return(0);
Всё это есть в AutoGraf 4.
Alex5757000 >>:
ALex2008, мой тебе совет по поводу последней твоей фразы: я тоже раньше думал, что все эти прибамбасы типа советников-помошников, кот. сами ставят стоп и тейк, переносят стоп в безубыток и т.д. помогут избежать сливания - нет, не помогут. Научись сам отсекать убытки по своей же стратегии, и ты перестанешь сливать.
ALex2008, мой тебе совет по поводу последней твоей фразы: я тоже раньше думал, что все эти прибамбасы типа советников-помошников, кот. сами ставят стоп и тейк, переносят стоп в безубыток и т.д. помогут избежать сливания - нет, не помогут. Научись сам отсекать убытки по своей же стратегии, и ты перестанешь сливать.
Может быть человек хочет получить полностью автоматический помощник сливатора?
Чтобы поставил его на большой реал жирного инвестора и спокойно ушел курить бамбук. Приходишь, а там уже готовый маржинколл. Все на автомате, никаких телодвижений и шевелений извилинами. Очень удобно и главное модно.
Зачем зрение портить, нервы и мозоли о клаву натирать, когда тот же самый результат советник может сбацать не хуже любого трейдера?
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
На форуме не нашел такого эксперта, чтобы он только сопровождал сделки, а не торговал. (если плохо искал - ткните, удалю тему)
Пока такие цели:
//---то что уже знакомо и реализуемо для меня
- обязательная модификация новых (ручных) ордеров (тейк и стоп)
- по желанию вход в безубыток (вкл. выкл в настройках)
//---то что можно тут откапать и прикрутить
- скрипт на закрытие рыночных ордеров
- скрипт закрытия всех
- по желанию тралить (вкл. выкл в настройках)
- "мультивалютность" следим за разными парами
Минусы будут такими:
- расчет лота для входа самомтоятельный
- отдельный скрипт на закрытия ордеров
PS Это видимо моя очередная, так сказать, моральная подготовка к сливу очередного дэпо)) Эксперт должен хоть как-то этому помешать!))