Здравствуйте Игорь! Не могли бы вы написать функцию, которая будет останавливать советника от повторной отработки сигнала? Например поступил сигнал на бай..советник купил.. закрылся по Тейку или траллу/стоплоссу..Но условия сигнала Бай все еще действуют и советник повторно идет на бай (вот этого "повторного открытия позы" или "повторной отработки сигнала" хотелось бы исключить) То есть стейт, после добавления этого блока кода должен выглядеть так.. бай,сел,бай,сел,бай,сел.... ну и т.д..
Здравствуйте Игорь! Не могли бы вы написать функцию, которая будет останавливать советника от повторной отработки сигнала? ... То есть стейт, после добавления этого блока кода должен выглядеть так.. бай,сел,бай,сел,бай,сел.... ну и т.д..
Данная функция возвращает нормализованное значение цены. Нормализация выполняется с применением значений функции MarketInfo(MODE_TICKSIZE || MODE_DIGITS). Функция NormalizePrice() принимает следующие параметры:
np - Нормализуемое значение лота. Обязательный параметр.
sy - Наименование торгового инструмента. NULL или "" - текущий символ. Значение по умолчанию - "".
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 21.08.2008 |//| Описание : Возвращает нормализованное под размер тика значение цены. |//+----------------------------------------------------------------------------+//| Параметры: |//| np - нормализуемое значение цены. |//| sy - наименование инструмента ("" или NULL - текущий символ) |//+----------------------------------------------------------------------------+double NormalizePrice(double np,string sy=""){if(sy==""|| sy=="0") sy=Symbol();double pp, ts=MarketInfo(Symbol(),MODE_TICKSIZE);int di=MarketInfo(Symbol(),MODE_DIGITS);if(ts>0) pp=NormalizeDouble(np/ts,0)*ts;else{if(di>0) pp=NormalizeDouble(np*di,0)/di;else pp=np;}return(pp);}
ЗЫ. Во вложении скрипт для тестирования функции NormalizePrice().
По мере своих способностей пытался понять материал изложенный Вами. Честно говоря я пока не пользовался ни советниками, ни скриптами, и никакого практического опыта работы с ними не имею, но есть потребнось в создании скрипта, который бы помог в расстановке большого количества ордеров. Задача скрипта облегчить расстановку отложенных ордеров (В основном Buy stop и Sell stop) Т.е. например в параметрах скрипта устанавливается: 1. Уровень с которого выставляются ордера ( например EUR\USD Buystop c 1.3000) 2. Размер каждого ордера (например 0,01) 3. Шаг установки ордеров (например 1 pip) 4. TP каждого ордера (например 3 pip) 5. Количество выставляемых ордеров (например 70) или уровень до которого нужно выставить отложенные ордера, (например до 1.3070).
Параметры стоп-лосс и трейлинг стоп в скрипте желателены, но необязателены...
Предполагается, что раз в 3-4 часа включается компьютер, анализируется ситуация и принимается решение установить ордера на пробой диапазона вверх ( или вниз), с периодом открытия ордеров в 1 пип, но с минимальным ТР (3 пипа) . Таким образом в случае движения цены в нужную сторону данные ордера начнут открываться и в случае достижения нужной цены будут закрываться по ТР. Далее возможны вариант когда они все закроются по ТР - если движение цены пройдет все ордера, или часть ордеров ( 6 шт) будет открыто и будет "минусовать". В данном случае предполагается выставить следующую "лесенку" ордеров в обратную сторону с другими параметрами ( размер лота, шаг, ТР, кол-во ордеров), которые будут покажутся трейдеру наиболее оптимальными.
В конце торгового дня "встречные позиции" будут закрываться, тем самым оставляя трейдеру около 6 ордеров направленных или вверх (или вниз) Заранее спасибо за экспертный ответ!
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Игорь, подскажите пожалуйста, есть ли функция котрая определяет минимальное значение в пунктах для установки отложенного ордера?
Спасибо!
Игорь, подскажите пожалуйста, есть ли функция котрая определяет минимальное значение в пунктах для установки отложенного ордера?
Здравствуйте Игорь! Не могли бы вы написать функцию, которая будет останавливать советника от повторной отработки сигнала? Например поступил сигнал на бай..советник купил.. закрылся по Тейку или траллу/стоплоссу..Но условия сигнала Бай все еще действуют и советник повторно идет на бай (вот этого "повторного открытия позы" или "повторной отработки сигнала" хотелось бы исключить) То есть стейт, после добавления этого блока кода должен выглядеть так.. бай,сел,бай,сел,бай,сел.... ну и т.д..
Здравствуйте Игорь! Не могли бы вы написать функцию, которая будет останавливать советника от повторной отработки сигнала? ... То есть стейт, после добавления этого блока кода должен выглядеть так.. бай,сел,бай,сел,бай,сел.... ну и т.д..
свинги...
ExistPositions()
ClosePositions()
Функция NormalizePrice().
Данная функция возвращает нормализованное значение цены. Нормализация выполняется с применением значений функции MarketInfo(MODE_TICKSIZE || MODE_DIGITS). Функция NormalizePrice() принимает следующие параметры:
ЗЫ. Во вложении скрипт для тестирования функции NormalizePrice().
(Вопрос от новичка)
Многоуважаемый KimIV Написал функцию:
GetExtremumZZPrice().
Какого вида должен быть код чтобы обозначал цены последнего минимума и максимума в 2 переменные ? ( у меня уже мозги кипят ;(( )
Какого вида должен быть код чтобы обозначал цены последнего минимума и максимума в 2 переменные ?
KimIV
Спасибо!
Задача скрипта облегчить расстановку отложенных ордеров (В основном Buy stop и Sell stop)
Т.е. например в параметрах скрипта устанавливается:
1. Уровень с которого выставляются ордера ( например EUR\USD Buystop c 1.3000)
2. Размер каждого ордера (например 0,01)
3. Шаг установки ордеров (например 1 pip)
4. TP каждого ордера (например 3 pip)
5. Количество выставляемых ордеров (например 70) или уровень до которого нужно выставить отложенные ордера, (например до 1.3070).
Заранее спасибо за экспертный ответ!