ParabolicSar System

Юрий FT

Модератор
Я приложил примерно рисунок ,как должен работать соетник на основе индикатора Parabolic SAR.Вообщем идея простая,если цена пересекает индикатор снизу вверх то BUY,если сверху вниз то SELL.Советник по ходу формирования ,модифицирует ордера,перенося заявки в соответствии с уровнями индикатора.StopLoss выставляется при срабатывании ордера на новом уровне индикатора и новой позиции BUY.Ордера закрываются при срабатывании противоположного ордера.Вот впринцыпе и всё.[_izobr_]|11024|20|3
 

Вложения

  • ParabolicSarSystem.mq4
    4,5 КБ · Просмотры: 321
  • 1.gif
    1.gif
    21,5 КБ · Просмотры: 558

Atlant

Почетный гражданин
Здравствуйте.загрузил советник ,но он не открывает ордера,хотя всё включено .а на тестере пишет Error 131
 

ZooBeeN

Почетный гражданин
To: Юрий.

Не знаю не знаю, я этого параболика крутил и так и эдак, но ничего толкового не вышло! Надеюсь хоть у вас получится.
 

Юрий FT

Модератор
To: Юрий.

Не знаю не знаю, я этого параболика крутил и так и эдак, но ничего толкового не вышло! Надеюсь хоть у вас получится.

Закрытие у этого эксперта вроде ничего, а вот сигнал на вход нужно бы организивать пораньше и тогда что то уже получится. А иначе получается что мы бегаем за уходящим поездом
 

ZooBeeN

Почетный гражданин
Закрытие у этого эксперта вроде ничего, а вот сигнал на вход нужно бы организивать пораньше и тогда что то уже получится. А иначе получается что мы бегаем за уходящим поездом

Точно! У меня именно такая ассоциация и возникла! Он больше подходит в качестве закрывающего сигнала, но из опыта видно, что это не совсем корректно, так как и сам ты говорил, про трейлинг стоп. (Очень похоже по принципу)
 

scriptong

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

nemo-x

Активный участник
(...поднимает перископ...)...
День Добрый Всем...
Я давно слежу за параболиком в ручном режиме и есть определённые положительные мысли...Если Юрий поможет реализовать их в советнике,то было бы здорово...

Юрий,можете те ли Вы продолжить тему и прописать следующую версию советника - а я оттестю по полной программе на живой деме без тестера и буду докладывать...
1) В настройках необходимо прописать возможность изменения параметров непосредственно того параболика,по сигналам которого работает советник.
2) Советник сам выставляет визуальные точки на графике (сигналы параболика) по которым он работает,то есть на графике мы должны видеть не внешний присоединённый индикатор, а индикатор непосредственно от советника.
3) При присоединении советника к графику советник сразу выставляет отложенный пробойный ордер на последнюю точку индикатора.Пробой вверх - бай,пробой вниз-селл.После появления нового сигнала советник сначала открывает новый отложенный ордер по новым параметрам в новой точке параболика,даже если этот ордер будет в противоположном направлении, и только после этого снимает прежде установленный ордер с предыдущей точки параболика.Этим мы сразу решаем вопрос скорости выставления и срабатывания ордеров без привязки к скорости реакции терминала и скорости изменения обстановки на рынке .
4) Прописать стопы двумя режимами.Первый -по умолчанию- автоматическое выставление и движение стопов по сигналу параболика.Второй-ручная установка стопа и возможность трейлинга.
5) Профит прописать также двумя режимами как и в пункте 4).Первый - закрытие по сигналу параболика. Второй - установка профита вручную и возможность трейлинга.
...Вот...
Эти установки в советнике позволят сделать его работу быстрой и без сбоев,потому что все ордера уже будут установленны в терминале.
А вот оптимизировать по параметрам - это уже вопрос тестирования и подбора,это уже за мной...
Хотя это ещё не всё, тут надо будет ещё побороться с флэтом,но это отдельная песня...
...Если я тут что-то не очень понятно изложил - уточните,я тогда на картинкам разложу...
...Если пункты 4) и 5) реализовать проблематично,тогда оставить только ручную фиксированую установку и стопа и профита
...Конечно,желательна возможность одновременной работы советника на разных парах...

...С уважением...
 

nemo-x

Активный участник
Торпеда прошла мимо...
Попробуем совсем упростить...

Можно сделать,чтобы приведённый выше советник не открывал бы позы по сигналу параболика, а выставлял бы отложенные ордера при появлении этого сигнала ???
Появилась точка (сигнал индикатора) сверху - выставили на это место бай-стоп,появилась следом ещё одна точка - поставили новый бай-стоп, а прежний убрали...

Тоже самое для точек снизу,только,ясно,селл-стопы выставляем...

А уровень профита и стопа пишем в настройках и ставим вручную,какой-кому понравиться...

На таком упрощённом варианте нужно будет оптимизировать уровни профита и стопа,но это уже работа при прогоне на терминале...

...Я понимаю.что работы невпроворот,так хоть весточку подайте - ждать - не ждать...
 

Юрий FT

Модератор
Торпеда прошла мимо...
Попробуем совсем упростить...

Можно сделать,чтобы приведённый выше советник не открывал бы позы по сигналу параболика, а выставлял бы отложенные ордера при появлении этого сигнала ???
Появилась точка (сигнал индикатора) сверху - выставили на это место бай-стоп,появилась следом ещё одна точка - поставили новый бай-стоп, а прежний убрали...

Тоже самое для точек снизу,только,ясно,селл-стопы выставляем...

А уровень профита и стопа пишем в настройках и ставим вручную,какой-кому понравиться...

На таком упрощённом варианте нужно будет оптимизировать уровни профита и стопа,но это уже работа при прогоне на терминале...

...Я понимаю.что работы невпроворот,так хоть весточку подайте - ждать - не ждать...

Только увидел ваше сообщение. Буду изучать.
 

chut`

Почетный гражданин
а нельзя ли сделать так, что бы советник открывал позицию в тот же миг когда появился сигнал, а не ждал следующего бара?
 

Юрий FT

Модератор
Торпеда прошла мимо...
Попробуем совсем упростить...

Можно сделать,чтобы приведённый выше советник не открывал бы позы по сигналу параболика, а выставлял бы отложенные ордера при появлении этого сигнала ???
Появилась точка (сигнал индикатора) сверху - выставили на это место бай-стоп,появилась следом ещё одна точка - поставили новый бай-стоп, а прежний убрали...

Тоже самое для точек снизу,только,ясно,селл-стопы выставляем...

А уровень профита и стопа пишем в настройках и ставим вручную,какой-кому понравиться...

На таком упрощённом варианте нужно будет оптимизировать уровни профита и стопа,но это уже работа при прогоне на терминале...

...Я понимаю.что работы невпроворот,так хоть весточку подайте - ждать - не ждать...

Пробуйте.
 

Вложения

  • nemo-x-paraboloc.ex4
    4,8 КБ · Просмотры: 157

chut`

Почетный гражданин
при использовании эксперта -nemo-x-paraboloc.ex4 выходит сообщение: There has been a critical error и далее...и закрывает программу!:(

Можно добавил параметр bumbarsopen=0; - так будет работать по текущему бару.
- а где вставлять? вы или тыкните пальцем куда в коде вставить или вылажите уже готовое изменение. Спасибо!
 

nemo-x

Активный участник
Ура...
Спасибо ,Юрий,что нашли возможность...Вы заходите сюда периодически,не забывайте...Если мы это дело до ума доведём -великое будет дело...

...chut` - отставить самодеятельность...Изменения вносятся уже во что-то работающее,а так только мозги програмисту забивать будем...
Пока дружно тестим,смотрим,думаем и вытаскиваем ляпы...

...Итак...тряхнём стариной...Советник мало написать - его надо до ума довести...Вперёд...

...Резюме по первому варианту -

Плюсы- крепиться нормально,показывает себя на графике,показания соответствуют штатному параболику,ордера открывает и переставляет великолепно,смена параметров тоже нормально (смену параметров параболика забыл проверить - проверю позже...)...

Минусы - не работает верхняя часть советника, в смысле открывает и оперирует только ордерами селл-стоп...Бай-стоп пытается поставить (показывает, что включился...)- но не ставит...Я сначала подумал,что он при смене режима не хочет их ставить, а оказалось, что и при первом присоединении к графику он (советник) тоже не может начать работу,если надо поставить бай-стоп...Исправляем...
И ещё одна неприятность...При достижении уровня открытия отложенного ордера советник его не открывает, а УДАЛЯЕТ !!!...Тоже надо исправлять...
Уверен,что это очепятки при написании (не разорваться же Юрию всё проверять...Тут бы и батальона не хватило...Проверять - это как раз наша задача...)...
...Пока всё...
...Терпеливо ждём новый вариант...
Юрий,просьба...В названии вариантов ставить циферьку по порядку,чтобы можно было ориентироваться ,ну вот типа так - nemo-x-parabolic1,nemo-x-parabolic2...Очень удобно при общении во время отладки - понятно о каком варианте идёт речь...
...И конечно,спасибо за название - второй раз у меня такое...
...Ну всё...ждемс...
 

nemo-x

Активный участник
Да,вот что оказалось с ордерами...
Он (советник) их вообще как-то виртуально выставляет...То есть до торгового терминала брокера они не доходят и им не фиксируются...

Я сейчас дождался,пока советник поставит ордер (ордер отобразился у меня в клиентском терминале,там где и должно...И на графике тоже...
Потом я удаляю советник и жду срабатывания отложенного ордера...Ну и ...При достижении ценой уровня открытия ордера он просто исчезает,не оставляя следов...В истории сделок фиксируется то что он был,но потом был закрыт по цене,по которой должен был открыться !!!...Во...Чудеса...С этим тоже надо разобраться...
 

Юрий FT

Модератор
Да,вот что оказалось с ордерами...
Он (советник) их вообще как-то виртуально выставляет...То есть до торгового терминала брокера они не доходят и им не фиксируются...

Я сейчас дождался,пока советник поставит ордер (ордер отобразился у меня в клиентском терминале,там где и должно...И на графике тоже...
Потом я удаляю советник и жду срабатывания отложенного ордера...Ну и ...При достижении ценой уровня открытия ордера он просто исчезает,не оставляя следов...В истории сделок фиксируется то что он был,но потом был закрыт по цене,по которой должен был открыться !!!...Во...Чудеса...С этим тоже надо разобраться...

С ордерами непонятка, узнавайте у брокера в чем дело, это не советника дела. Ордера на рисунке не выставлялись в связи с тем что нельзя так близко устанавливать ордера, я добавил переменную которая проверяет на какое расстояние минимум можно поставить тейк профит и стоп лосс и исходя из этого устанавливаются все уровни. Вы это увидите при тестировании на 1М и на 4Ч. На 1М ордера будут выставляться с учетом этой переменной.

v0.1 - добавлена нормализация переменных стоп лосс тейк профит и цена открытия, возможность работы на нескольких валютных парах.
 

Вложения

  • nemo-x-paraboloc_0.1.ex4
    8,5 КБ · Просмотры: 133

Юрий FT

Модератор
Ура...
Спасибо ,Юрий,что нашли возможность...Вы заходите сюда периодически,не забывайте...Если мы это дело до ума доведём -великое будет дело...

...chut` - отставить самодеятельность...Изменения вносятся уже во что-то работающее,а так только мозги програмисту забивать будем...
Пока дружно тестим,смотрим,думаем и вытаскиваем ляпы...

...Итак...тряхнём стариной...Советник мало написать - его надо до ума довести...Вперёд...

...Резюме по первому варианту -

Плюсы- крепиться нормально,показывает себя на графике,показания соответствуют штатному параболику,ордера открывает и переставляет великолепно,смена параметров тоже нормально (смену параметров параболика забыл проверить - проверю позже...)...

Минусы - не работает верхняя часть советника, в смысле открывает и оперирует только ордерами селл-стоп...Бай-стоп пытается поставить (показывает, что включился...)- но не ставит...Я сначала подумал,что он при смене режима не хочет их ставить, а оказалось, что и при первом присоединении к графику он (советник) тоже не может начать работу,если надо поставить бай-стоп...Исправляем...
И ещё одна неприятность...При достижении уровня открытия отложенного ордера советник его не открывает, а УДАЛЯЕТ !!!...Тоже надо исправлять...
Уверен,что это очепятки при написании (не разорваться же Юрию всё проверять...Тут бы и батальона не хватило...Проверять - это как раз наша задача...)...
...Пока всё...
...Терпеливо ждём новый вариант...
Юрий,просьба...В названии вариантов ставить циферьку по порядку,чтобы можно было ориентироваться ,ну вот типа так - nemo-x-parabolic1,nemo-x-parabolic2...Очень удобно при общении во время отладки - понятно о каком варианте идёт речь...
...И конечно,спасибо за название - второй раз у меня такое...
...Ну всё...ждемс...

На будущее смотрите журнал терминала и журнал советника, в нем указываются номера ошибок работы советника или результат ответа торгового сервера.

Вот перечень ошибок: (можно так же посмотреть в терминале в разделе Справочник MQL4 - Стандартные константы - Коды ошибок)

Коды ошибок, возвращаемые торговым сервером:

Константа Значение Описание
ERR_NO_ERROR 0 Нет ошибки
ERR_NO_RESULT 1 Нет ошибки, но результат неизвестен
ERR_COMMON_ERROR 2 Общая ошибка
ERR_INVALID_TRADE_PARAMETERS 3 Неправильные параметры
ERR_SERVER_BUSY 4 Торговый сервер занят
ERR_OLD_VERSION 5 Старая версия клиентского терминала
ERR_NO_CONNECTION 6 Нет связи с торговым сервером
ERR_NOT_ENOUGH_RIGHTS 7 Недостаточно прав
ERR_TOO_FREQUENT_REQUESTS 8 Слишком частые запросы
ERR_MALFUNCTIONAL_TRADE 9 Недопустимая операция нарушающая функционирование сервера
ERR_ACCOUNT_DISABLED 64 Счет заблокирован
ERR_INVALID_ACCOUNT 65 Неправильный номер счета
ERR_TRADE_TIMEOUT 128 Истек срок ожидания совершения сделки
ERR_INVALID_PRICE 129 Неправильная цена
ERR_INVALID_STOPS 130 Неправильные стопы
ERR_INVALID_TRADE_VOLUME 131 Неправильный объем
ERR_MARKET_CLOSED 132 Рынок закрыт
ERR_TRADE_DISABLED 133 Торговля запрещена
ERR_NOT_ENOUGH_MONEY 134 Недостаточно денег для совершения операции
ERR_PRICE_CHANGED 135 Цена изменилась
ERR_OFF_QUOTES 136 Нет цен
ERR_BROKER_BUSY 137 Брокер занят
ERR_REQUOTE 138 Новые цены
ERR_ORDER_LOCKED 139 Ордер заблокирован и уже обрабатывается
ERR_LONG_POSITIONS_ONLY_ALLOWED 140 Разрешена только покупка
ERR_TOO_MANY_REQUESTS 141 Слишком много запросов
ERR_TRADE_MODIFY_DENIED 145 Модификация запрещена, так как ордер слишком близок к рынку
ERR_TRADE_CONTEXT_BUSY 146 Подсистема торговли занята
ERR_TRADE_EXPIRATION_DENIED 147 Использование даты истечения ордера запрещено брокером
ERR_TRADE_TOO_MANY_ORDERS 148 Количество открытых и отложенных ордеров достигло предела, установленного брокером.


Коды ошибок выполнения MQL4-программы:

Константа Значение Описание
ERR_NO_MQLERROR 4000 Нет ошибки
ERR_WRONG_FUNCTION_POINTER 4001 Неправильный указатель функции
ERR_ARRAY_INDEX_OUT_OF_RANGE 4002 Индекс массива - вне диапазона
ERR_NO_MEMORY_FOR_CALL_STACK 4003 Нет памяти для стека функций
ERR_RECURSIVE_STACK_OVERFLOW 4004 Переполнение стека после рекурсивного вызова
ERR_NOT_ENOUGH_STACK_FOR_PARAM 4005 На стеке нет памяти для передачи параметров
ERR_NO_MEMORY_FOR_PARAM_STRING 4006 Нет памяти для строкового параметра
ERR_NO_MEMORY_FOR_TEMP_STRING 4007 Нет памяти для временной строки
ERR_NOT_INITIALIZED_STRING 4008 Неинициализированная строка
ERR_NOT_INITIALIZED_ARRAYSTRING 4009 Неинициализированная строка в массиве
ERR_NO_MEMORY_FOR_ARRAYSTRING 4010 Нет памяти для строкового массива
ERR_TOO_LONG_STRING 4011 Слишком длинная строка
ERR_REMAINDER_FROM_ZERO_DIVIDE 4012 Остаток от деления на ноль
ERR_ZERO_DIVIDE 4013 Деление на ноль
ERR_UNKNOWN_COMMAND 4014 Неизвестная команда
ERR_WRONG_JUMP 4015 Неправильный переход
ERR_NOT_INITIALIZED_ARRAY 4016 Неинициализированный массив
ERR_DLL_CALLS_NOT_ALLOWED 4017 Вызовы DLL не разрешены
ERR_CANNOT_LOAD_LIBRARY 4018 Невозможно загрузить библиотеку
ERR_CANNOT_CALL_FUNCTION 4019 Невозможно вызвать функцию
ERR_EXTERNAL_CALLS_NOT_ALLOWED 4020 Вызовы внешних библиотечных функций не разрешены
ERR_NO_MEMORY_FOR_RETURNED_STR 4021 Недостаточно памяти для строки, возвращаемой из функции
ERR_SYSTEM_BUSY 4022 Система занята
ERR_INVALID_FUNCTION_PARAMSCNT 4050 Неправильное количество параметров функции
ERR_INVALID_FUNCTION_PARAMVALUE 4051 Недопустимое значение параметра функции
ERR_STRING_FUNCTION_INTERNAL 4052 Внутренняя ошибка строковой функции
ERR_SOME_ARRAY_ERROR 4053 Ошибка массива
ERR_INCORRECT_SERIESARRAY_USING 4054 Неправильное использование массива-таймсерии
ERR_CUSTOM_INDICATOR_ERROR 4055 Ошибка пользовательского индикатора
ERR_INCOMPATIBLE_ARRAYS 4056 Массивы несовместимы
ERR_GLOBAL_VARIABLES_PROCESSING 4057 Ошибка обработки глобальныех переменных
ERR_GLOBAL_VARIABLE_NOT_FOUND 4058 Глобальная переменная не обнаружена
ERR_FUNC_NOT_ALLOWED_IN_TESTING 4059 Функция не разрешена в тестовом режиме
ERR_FUNCTION_NOT_CONFIRMED 4060 Функция не разрешена
ERR_SEND_MAIL_ERROR 4061 Ошибка отправки почты
ERR_STRING_PARAMETER_EXPECTED 4062 Ожидается параметр типа string
ERR_INTEGER_PARAMETER_EXPECTED 4063 Ожидается параметр типа integer
ERR_DOUBLE_PARAMETER_EXPECTED 4064 Ожидается параметр типа double
ERR_ARRAY_AS_PARAMETER_EXPECTED 4065 В качестве параметра ожидается массив
ERR_HISTORY_WILL_UPDATED 4066 Запрошенные исторические данные в состоянии обновления
ERR_TRADE_ERROR 4067 Ошибка при выполнении торговой операции
ERR_END_OF_FILE 4099 Конец файла
ERR_SOME_FILE_ERROR 4100 Ошибка при работе с файлом
ERR_WRONG_FILE_NAME 4101 Неправильное имя файла
ERR_TOO_MANY_OPENED_FILES 4102 Слишком много открытых файлов
ERR_CANNOT_OPEN_FILE 4103 Невозможно открыть файл
ERR_INCOMPATIBLE_FILEACCESS 4104 Несовместимый режим доступа к файлу
ERR_NO_ORDER_SELECTED 4105 Ни один ордер не выбран
ERR_UNKNOWN_SYMBOL 4106 Неизвестный символ
ERR_INVALID_PRICE_PARAM 4107 Неправильный параметр цены для торговой функции
ERR_INVALID_TICKET 4108 Неверный номер тикета
ERR_TRADE_NOT_ALLOWED 4109 Торговля не разрешена. Необходимо включить опцию "Разрешить советнику торговать" в свойствах эксперта.
ERR_LONGS_NOT_ALLOWED 4110 Длинные позиции не разрешены. Необходимо проверить свойства эксперта.
ERR_SHORTS_NOT_ALLOWED 4111 Короткие позиции не разрешены. Необходимо проверить свойства эксперта.
ERR_OBJECT_ALREADY_EXISTS 4200 Объект уже существует
ERR_UNKNOWN_OBJECT_PROPERTY 4201 Запрошено неизвестное свойство объекта
ERR_OBJECT_DOES_NOT_EXIST 4202 Объект не существует
ERR_UNKNOWN_OBJECT_TYPE 4203 Неизвестный тип объекта
ERR_NO_OBJECT_NAME 4204 Нет имени объекта
ERR_OBJECT_COORDINATES_ERROR 4205 Ошибка координат объекта
ERR_NO_SPECIFIED_SUBWINDOW 4206 Не найдено указанное подокно
ERR_SOME_OBJECT_ERROR 4207 Ошибка при работе с объектом
 

Юрий FT

Модератор
v0.2 - исправлена ошибка в расчетах tp.
 

Вложения

  • nemo-x-paraboloc_0.2.zip
    8,1 КБ · Просмотры: 217
Верх