Перейти к содержанию

[open source] [Советник] Zerg BrainMOD - идея реализации нового сеточника.


Xelgo

Рекомендуемые сообщения

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано


Если помнишь где занимались переписыванием TMA, не подкинешь ссылку посмотреть.

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

  • Ответов 226
  • Создано
  • Последний ответ

Популярные авторы

Популярные авторы

Популярные посты

Zerg BrainMOD Предыстория:(Много букв, читать по желанию) [Spoiler]Все написанное далее – является исключительно моим мнением и не претендует на истину в последней инстанции. В общем, я на рынке фор

Перейти

Да. Там все сильно упрощено (для увеличения скорости) нет проверок и обработки ошибок, поэтому на реале будут непредсказуемые результаты. Ждите релиза Зерга. Добавлено: 16-02-2014 15:31:23 Следующая р

Перейти

Тогда предлагаю тебе создать новую тему в лаборатории с тем что есть. А там и тестеры подтянутся.

Перейти
[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано
Старик, спасибо за подборку, но проблемы это не решило. Посмотрел и попробовал весь архив, проблема, как оказалось, носит глобальный характер. Во всех индюках, в которых есть выбор таймфрейма, всё та же проблема, адекватно отрисовывает только текущий таймфрейм, а если поставить старше, то не реагирует на цену и такое дело только в тестере с визуализацией, а на реальных торгах нормально. Что-то там намутили в (646) билде.

Насчёт перерисовки на истории, мне в принципе без разницы, потому как отслеживается именно живое поведение в моменте. Более-менее в тестере вопрос можно решить кратным увеличением периода усреднения под нужный таймфрейм, но при установке большого периода тестер неимоверно тормозит, поэтому это не будет стоить потраченного времени, потому как результат не известен и не однозначен.
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано
0ll, здравствуйте.
В том то и дело, что формула простая.
Step 10.0
Mode4NextLotK 10.0

15.05._нарушение_лотности.png

Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано (изменено)

Sergey-boroda вот полный код вычисления лота (может у меня с глазами не то):

Спойлер


      s_lot = start_lot;                                                         // Расчет лота
if(lot_multiplier && multiplier > 0) s_lot = start_lot * MathPow(multiplier, OrdCnt-1);
if(lot_multiplier && increament != 0) s_lot = start_lot + OrdCnt * increament;
if(Mode4NextLot==1) s_lot *= MathAbs(LastOpenPrc - prcOpen)/(Mode4NextLotK*pt); // Mode4NextLot==1 - с учетом межордерного расстояния кратно шага
s_lot = NormalizeDouble(s_lot, prec);
//Это всё - дальше по коду s_lot не меняется.

Изменено пользователем 0ll
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано (изменено)
0ll, здравствуйте!

Рассмотрим пример:
multiplier = 0.0
increament = 0,1
Mode4NextLotK = Step = 10

Тогда по Вашему коду:


s_lot = start_lot; // Расчет лота
if(lot_multiplier && multiplier 0 > 0) (ложь - условие не выполненно, не работает) s_lot = start_lot * MathPow(multiplier, OrdCnt-1);
if(lot_multiplier && increament ! 0,1 = 0) (ложь - условие не выполненно, не работает) s_lot = start_lot + OrdCnt * increament;
if(Mode4NextLot 10 ==1) (ложь - условие не работает) s_lot *= MathAbs(LastOpenPrc - prcOpen)/(Mode4NextLotK*pt); // Mode4NextLot==1 - с учетом межордерного расстояния кратно шага
s_lot = NormalizeDouble(s_lot, prec);
//Это всё - дальше по коду s_lot не меняется.

Таким образом, на указанном примере не срабатывает расчет переменной s_lot.
На наш взгляд, не хватает условия increament > 0
ИМХО, сорри. Изменено пользователем Sergey-boroda
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

Рассмотрим пример:
multiplier = 0.0
increament = 0,1
Mode4NextLot = Step = 10

if(lot_multiplier && increament ! 0,1 = 0) (ложь - условие не выполненно, не работает) s_lot = start_lot + OrdCnt * increament;
if(Mode4NextLot 10 ==1) (ложь - условие не работает) s_lot *= MathAbs(LastOpenPrc - prcOpen)/(Mode4NextLotK*pt); // Mode4NextLot==1 - с учетом межордерного расстояния кратно шага

На наш взгляд, не хватает условия increament > 0

Обратите внимание:
1. Не Mode4NextLot, а Mode4NextLotК = Step = 10. А Mode4NextLot = 1 (для динамич. лота);
2. В арифметическом расчете не заметили !, а это в корне меняет условие, согласитесь increament = 0 и
increament != 0 разные вещи. (так сделал, что-бы была возможность уменьшения лотности).
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано (изменено)

Как говорил, в программировании не силен. Но по факту что-то не так.... Видимо придется перейти в предыдущую версию, хотя очень хотелось бы попробовать % ТП от длинны сетки (по Старику).
Честно говоря, не пойму в чем дело.
В предыдущем посте в условиях у меня ошибка: надо Mode4NextLotК = Step = 10 (Ошибку исправил)

Изменено пользователем Sergey-boroda
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано


Как говорил, в программировании не силен. Но по факту что-то не так.... Видимо придется перейти в предыдущую версию, хотя очень хотелось бы попробовать % ТП от длинны сетки (по Старику).
Честно говоря, не пойму в чем дело.
В предыдущем посте в условиях у меня ошибка: надо Mode4NextLotК = Step = 10 (Ошибку исправил)

Нашёл косяк - в округлении :o)
Посмотри.
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

О чём вы, парни? об исправленном 4.2 или 4.3 или о чём?
И где то, о чём вы? :(

  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано


О чём вы, парни? об исправленном 4.2 или 4.3 или о чём?
И где то, о чём вы? :(

Простите за недосказанности. Ошибка была в версии 4.3, НО только в файле сделанном специально для Sergey-boroda в файлах, выложенных в ветке этой ошибки НЕТ.
Ссылка на сообщение
Поделиться на другие сайты

  • 2 weeks later...
[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано (изменено)

Здравствуйте!
Что-то совсем тихо и пустынно....
Продолжаю работать по версии любезно предоставленной 0ll "Z+TMA_0ll-4Testing-4.3".
В данном случае хочу обратить ваше внимание на отработку настройки, сделанную по предложению Старика - выставление ТР в % отношении от длинны сетки: TP Zerg Otkat. На приведенном скрине показана отработка двух вариантов:
1-ая сетка TP Zerg Otkat = 0.75
2-ая сетка TP Zerg Otkat = 1.00
Большие значения настройки связаны с замеченной более ранней отработкой закрытия сетки, нежели выставлено в указанной настройке. (скрин и сет прилагаю).
В результате длинна первой сетки по выставленным ордерам составила 41 пункт, а сетка при TP Zerg Otkat = 0.75 закрылась при откате всего на 15,6 пункта. Хотя, как мне казалось, сетка должна была закрыться при откате 41*0,75=30,8 пункта
Вторая сетка была длинной чуть больше - 43 пункта, там при настройке TP Zerg Otkat = 1.00 сетка закрылась при 21,4 пунктах отката, хотя по формуле должна была дождаться отката в 43 пункта.
ТР при этом был одинаковый - 35 пунктов.
Хотелось бы у вас уточнить: или я не правильно понимаю ТР в % зависимости от длинны сетки, или где-то ошибка в коде (формуле)?
Поэтому обращаюсь еще раз к 0ll с просьбой о возможности вынесения на график расчетного ТР сетки.
И еще: при длинной сетке и создании чрезвычайной ситуации порой бывает сложно и недопустимо долго закрыть все ордера. В связи с этим появление настройки: "Закрыть все ордера" - была бы не лишней.
Спасибо.


Добавлено: 31-05-2014 00:19:57

Отработка_TP=TP_Zerg_Otkat_=_075_и_100.png
zerg+tma_oll-43.1__bsl_001.set
То_же_с_уровнями_Фибо.png

Изменено пользователем Sergey-boroda
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано (изменено)

Бота не видел, как реализовано мое предложение не знаю.

Но, вообще-то, я вроде ясно предлагал, что ТП как % от полной длины сетки в пипсах, должен применяться тогда и только тогда, когда ТП как % длины сетки в пипсах больше (дальше от максимального ордера сетки) чем ТП, заданный любым иным образом.
Это чисто рыночная идея: после сильного движения и формирования сетки от 200-300 старых пипсов - обычно можно рисковать задавать ТП как % от длины сетки, исходя из все возрастающей вероятности серьезного отката/коррекции.
И цифры при этом не детские: после зимнего безотката фунтобакса на 5 фиг и любви фунта к 61% фибе - можно было ставить ТП на 50%-60% всего движения фунта (т.е. ТП 250-300 старых пипсов) и попробовать "поднять" депо в несколько раз только с одной этой сетки.

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

Хотя согласен, что на экран (по ходу формирования сетки) было бы неплохо постоянно выводить:
- длину сетки в пипсах,
- размер (в пипсах) ТП как % от длины сетки (если опция ТП в % от длины сетки включена) и
- уровень (цены), на котором стоял бы ТП в % от длины сетки в пипсах (если опция ТП в % от длины сетки включена).

Один фиг на открытии каждого колена эти параметры надо вычислять.


Другое дело, что можно добавить параметр с какого колена сетки начинает применяться ТП как % от длины сетки в пипсах.

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

Изменено пользователем Старик
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано
Sergey-boroda сейчас не смогу посмотреть - в поездке.
К концу следующей недели только. Как по мне - сетки хорошо закрылись - вовремя :)
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

Сетки действительно закрылись во-время, не спорю.
Но я совсем о другом: странно срабатывает %-й ТР от длинны сетки, что и демонстрировалось на этом примере.

Ссылка на сообщение
Поделиться на другие сайты

  • 4 weeks later...
[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано
0ll, нет желания прикрутить ещё одну опцию, только к версии 4.2 с TMA+CG? Я как-то о ней упоминал, суть в том, чтобы закрывать все ордера по накопленному проценту от депозита. К примеру депо 1000, ставим закрытие в 1% что составит 10 единиц. Начинает строиться пирамида, при этом используется опция индивидуального профита и после нескольких закрытий крайних ордеров, набираем на депозите 1050 и после того как оставшаяся пирамида выйдет в -40 единиц, закрываем все ордера и конечно с учётом свопа и комиссии. Я по тестам подбирал что-то похожее, но не хватает того, чтобы это всё работало именно в связке, используя накопленный профит и отрезая висяки.
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано


1 закрывать все ордера по накопленному проценту от депозита.
2 после нескольких закрытий крайних ордеров, набираем на депозите 1050
3 и после того как оставшаяся пирамида выйдет в -40 единиц, закрываем все ордера

2 - не понял... Это частичное закрытие? или это вообще другие сделки? или это вообще торговля руками на другой паре?
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

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

Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

"установка индивидуального профита для каждого ордера" - для сетки? так ведь теряется весь смысл у сетки! - мы-ж её строим чтоб профитными ордерами перекрыть убыточные.
Вы предлагаете например: выставить ТР = 20 пп у каждого ордера?

Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

Используется всё в связке, скажем общий профит корзины поставим 10, а индивидуальные по 100 и какой раньше сработает, в зависимости от ситуации. Проблема получается в том, что когда ордера закрываются по индивидуальному профиту, то полученный прирост уже не используется для разруливания ситуации и в то же время расстояние до общего профита корзины увеличивается. Бывает что ценовой коридор по сути переставляется и толком отката нет, вот при такой ситуации этот режим будет набирать профит в новом коридоре и при достаточном накоплении отрежет висящие ордера.

Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

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

Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано

Мне сеточники нравятся, как таковые. Но тупят. Хороший сеточник должен быть сделан по математически-шахматной схеме. По идее он должен кидать сетки чуть не от балды, а когда начинают открываться ордера, вот тут в этой хреновине должна быть предусмотрена туева хуча вероятностей. Как в шахматах,- если он так, то я эдак, если он эдак, то я так. А все, что я сейчас вижу, напоминают поезд,- едет только по рельсам, ни вправо, ни влево. И зерг такой-же. Сейчас гоняю EUREKA v 7.2 evolution, так у него на бектестах постоянно растет баланс, как грибы после дождя, хоть сразу беги феррарю покупай но постоянно проседает equity. Где-то в них во всех дырка. Профит по корзине, это замечательно, но вот если открылось полкорзины и цена сдриснула в ужасе в противоположное направление? По идее, чтоб от этого защититься, надо открывать следующий ордер, разом выводя предыдущий в безубыток. Тогда терять будет только одна сделка, не более. Но тогда опять же будет выносить по тралам с крошечной прибылью. Может ATR, или ADX вклеить? Выросла волатильность,- бросаем сетки. Шанс большого движения выше вроде как.

Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано
Ник_Лиссон, в реализованном здесь (правда не совсем до конца) боте, можно подобрать настройку примерно по вашему описанию. Нужно включить Прайс Аут и расчёт лота с учётом межордерного расстояния, в результате будет что-то похожее, но при этом нужно будет подбирать остальные настройки. Чтобы было совсем похоже, не хватает пожалуй одной опции, чтобы построение сетки шло с фиксированным шагом, а на заданном колене включался режим Прайс Аут.
Ссылка на сообщение
Поделиться на другие сайты

[open source] [Советник] Zerg BrainMOD - идея реализаци… Опубликовано


Ник_Лиссон, в реализованном здесь (правда не совсем до конца) боте, можно подобрать настройку примерно по вашему описанию. Нужно включить Прайс Аут и расчёт лота с учётом межордерного расстояния, в результате будет что-то похожее, но при этом нужно будет подбирать остальные настройки. Чтобы было совсем похоже, не хватает пожалуй одной опции, чтобы построение сетки шло с фиксированным шагом, а на заданном колене включался режим Прайс Аут.



Тут как бы опять появляется фактор волатильности. Фиксированная дистанция между ордерами будет иметь разные результаты торговли, при разной волатильности. В базе высвечиваются 2 варианта,- дистанция между ордерами в сетке определяется уровнем волатильности в моменте(что есть сложнее, так как нужно подбирать дистанцию между ордерами для каждого уровня волатильности + учить советника во всем этом разбираться), или сетки выставляются роботом только в тот момент, когда рынок достигает определенного уровня волатильности в моменте. Во втором случае как раз и сойдет вариант с фиксированной дистанцией между ордерами в сетке. Нужно только определить минимальный уровень волатильности, при котором сетка, с определенной дистанцией между ордерами сможет закрыться как минимум в ноль, с учетом среднего спреда, за счет переносов тралов. Как-то так.
Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Специальное предложение


  • Рекомендуемые брокеры

  • ×
    ×
    • Создать...