Написание экспертов и индикаторов - бесплатно!
#17491
Отправлено 06 October 2015 - 00:17
 
#17492
Отправлено 06 October 2015 - 00:42
#17493
Отправлено 06 October 2015 - 08:23
Strong-Tezis! Простите, не совсем всё понял..При открытии вами позиции вручную бот выставляет стоплос и тейкпрофит.Далее, если вы меняете у позиции стоплос, то тейк должен переставляется автоматически, на величину (два расстояния соплоса).Я правильно вас понял?
Совершенно верно. Я сам менял в коде тейк на сл*2, но при смене стопа на графике, тейк не меняется!
#17494
Отправлено 06 October 2015 - 15:01
nikpilot! Доброго времени суток! Спасибо за картинку, сразу видны все недочёты. Посмотрел. Исправляю подлежат все.Часть прикрепляю, проверяйте.п.с.Благодарю за описание фитьтра. Разъяснили. Позже включу в работу.
Спасибо за доработку индикаторов, проверил в тестере, работают корректно.
Ждем-с советник.
#17495
Отправлено 06 October 2015 - 17:25
Shipr, посмотрите плиз пост 17463. Спасибо!
#17496
Отправлено 06 October 2015 - 19:19
Посмотрите пожалуйста индикатор из поста 17483. Ставлю между 59 и 60 строкой: return(0); и всё равно не работает..За ранее огромное спасибо.
#17497
Отправлено 06 October 2015 - 19:29
max2000! Доброго времени суток! В коде советника, вызывается только один индикатор " Quantum"в других индикаторах необходимости не было. По поводу "файл не скачивается", это не ко мне вопрос.
огромное спасибо! файл скачал. буду пробовать.
#17498
Отправлено 06 October 2015 - 19:32
Посмотрите пожалуйста индикатор из поста 17483. Ставлю между 59 и 60 строкой: return(0); и всё равно не работает..За ранее огромное спасибо.
#17499
Отправлено 07 October 2015 - 00:19
#17500
Отправлено 07 October 2015 - 16:25
Всем доброго времени суток.
Уважаемы программисты. Подскажите как в советнике прописать код, что бы он проверял как был закрыт предыдущий ордер в плюс или минус. СПАСИБО
#17501
Отправлено 08 October 2015 - 03:15
Всем доброго времени суток.
Уважаемы программисты. Подскажите как в советнике прописать код, что бы он проверял как был закрыт предыдущий ордер в плюс или минус. СПАСИБО
Функция isCloseLastPosByStop().
Эта функция возвращает флаг закрытия последней позиции по стопу. Флаг поднят - True - сработал StopLoss. Флаг опущен - False - позиция была закрыта по другой причине. Более точный отбор учитываемых позиций задаётся внешними параметрами:
- sy - Наименование рыночного инструмента. Если задать этот параметр, то функция учтёт позиции только заданного инструмента. Значение по умолчанию - "" означает любой рыночный инструмент. NULL означает текущий инструмент.
- op - Торговая операция, тип позиции. Допустимые значения: OP_BUY, OP_SELL или -1. Значение по умолчанию -1 означает любую позицию.
- mn - Идентификатор позиции, MagicNumber. Значение по умолчанию -1 означает любой идентификатор.
//+----------------------------------------------------------------------------+ //| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru | //+----------------------------------------------------------------------------+ //| Версия : 19.05.2008 | //| Описание : Возвращает флаг закрытия последней позиции по стопу. | //+----------------------------------------------------------------------------+ //| Параметры: | //| sy - наименование инструмента ("" - любой символ, | //| NULL - текущий символ) | //| op - операция (-1 - любая позиция) | //| mn - MagicNumber (-1 - любой магик) | //+----------------------------------------------------------------------------+ bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) { datetime t; double ocp, osl; int dg, i, j=-1, k=OrdersHistoryTotal(); if (sy=="0") sy=Symbol(); for (i=0; i<k; i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) { if (OrderSymbol()==sy || sy=="") { if (OrderType()==OP_BUY || OrderType()==OP_SELL) { if (op<0 || OrderType()==op) { if (mn<0 || OrderMagicNumber()==mn) { if (t<OrderCloseTime()) { t=OrderCloseTime(); j=i; } } } } } } } if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) { dg=MarketInfo(sy, MODE_DIGITS); if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2; ocp=NormalizeDouble(OrderClosePrice(), dg); osl=NormalizeDouble(OrderStopLoss(), dg); if (ocp==osl) return(True); } return(False); }
Сообщение отредактировал заглянувший: 08 October 2015 - 03:19
Мониторинг нового советника. Торгует на 24 валютных парах. Рекомендуемый депозит - 500$ (50000 cent)
#17502
Отправлено 08 October 2015 - 03:33
#17503
Отправлено 08 October 2015 - 03:35
Прикрепленные файлы
#17504
Отправлено 08 October 2015 - 03:38
Прикрепленные файлы
#17505
Отправлено 08 October 2015 - 06:03
Большое спасибо. Но к сожалению мне это не подойдет так как ордера в моем советнике закрывается не по ТП и СЛ, а при достижении определенных значений.Посмотрю что из этого можно использовать. Еще раз спасибо.
Сообщение отредактировал Allt: 08 October 2015 - 06:04