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

[Советник] Incognito Scalper


Rigal

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

3 часа назад, FERRARI2009 сказал:
7 часов назад, Rigal сказал:

Перепроверялось

 

в планах на через один релиз сделать начало и длительность сессии в минутах, пооптить вокруг

но в часах идеально 22-24 гмт

Здравствуйте! Я думаю что лучше не просто минуты добавить, а перенести уже готовый планировщик из 12 версии Дженерика - тогда можно будет и до ролловера торги настраивать по дням недели. Вообще есть подозрение, что торги после ролловера лучше, чем до, из-за торговли, в том числе по средам до ролловера (когда выходят решения по процентным ставкам ФРС, выступает глава ФРС и выходят минутки от ФОМК и, соответственно, наблюдаются аномальные движения для данного временного промежутка, особенно для пар с долларом), а также из-за сделок остающихся с вечера пятницы на выходные - торгуя после полуночи эти сделки просто отсекаем. А имея планировщик можем настроить и торги на открытии рынка в понедельник, и на закрытии торгов в пятницу, и по средам до полуночи и посмотреть на истории в какой комбинации для разных пар будет оптимально работать, т.к. торговля в эти периоды имеет свою специфику.

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

Прошу Rigal реализовать эти возможности. Тогда, возможно, сможем изготовить хорошие сеты с началом торгов до ролловера.

1:1 хотел это же предложить...  И именно из 12 Генерика.

http://tlap.com/forum/laboratoriya-profitfx/24/open-source-sovetnik-generic-a-tlp/13593/

Тот бот результат большого коллективного труда и нереального количества тестов и торгов - массив данных огромный.

И если не учесть тот опыт...

 

Как бы это не разочаровывающе сформулировать...

Если у вас множество сделок в полночь, то сделки онлайн и их результаты может совпадут лишь на 25%, причем при наличии  фильтров множества сделок не будет вообще.

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

 

Подобные боты известны уже много лет и они уже бы давно захватили мир, если бы всё было как в тестере...

И их много приносящих тестерные миллиарды...

Но от половины происходит не так...

Примеров немало, результаты весьма неоднозначны https://alpari.com/ru/invest/pamm/374990/#pamm-return

 

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

Но скорей всего понадобятся все планировщики и фильтры генерика 12.

Между идеей входа и ММ и реальными торгами дистанция очень велика и надо выписать весьма совершенный механизм планирования и управления торгами.

А так да, ММ/РМ в данном боте оригинальный и обязательно надо попробовать дожать его до реальностей реала!

 

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

  • Ответов 1,2k
  • Создано
  • Последний ответ

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

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

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

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

Перейти

Сет оптился на 2015г. С последующей проверкой с 2012.   Incognito Scalper v1.92 Ostap.Bender GBPCAD m5 2012-2019.zip

Перейти

Версия 1.9.2 - latest and greatest - Поправлена работа функции защиты эквити: теперь советник не начнет судорожно открывать и тут же закрывать ордера, как только кто-то другой доведет эквити снов

Перейти

Также при анализе результатов тестирования, проводившихся Fed77в частности на сете EURCAD, заметил, что советник после срабатывания стоп лосса тут же открывает сделку в этом же направлении, что может привести к повторному стоп лоссу при сильном безоткатном движении на каком-либо новостном форс мажоре. Предлагаю в новой версии советника также ввести 2 новых параметра из 12 генерика, для предотвращения подобных рисков: 

  • pause - пауза после убыточной сделки (минут)
  • sizeloss - размер убытка, при котором включается пауза (в пунктах)

 

Снимок.JPG

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

[Советник] Incognito Scalper Опубликовано (изменено)

По поводу планировщика из генерика - его несложно впаять, но...

Его же невозможно оптить.

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

И напрашивается "стартовая минута дня" и "длительность, минут"

Раздельные дни - да, имеет смысл, наверное.. но тоже не на этап оптимизации. И мне ж хочется понять все эти причины, почему надо так, а не иначе.

Давайте так: в следующей версии я сделаю так, как будет удобно оптить.

А дальше мы обсудим, нужно ли переходить к более удобочитаемому формату и я с удовольствием допилю.

Все эти планировщики - это нетрудоемко, особенно когда есть прекрасный пример генерика перед глазами.

 

А пока свежая версия 1.3.5 с тремя дополнительными опциями, воплощение предложения @ostapbender пару страниц назад.

NextOrderFactor - множитель лота для последующих сделок в ту же сторону.

По умолчанию советник не открывает больше одной сделки. Если эту опцию поставить >0, то он будет открывать. При этом, если сделка такого направления уже есть, новая сделка откроется лотом домноженным на это число.

Можно поставить 1.0, тогда просто будет открываться еще.

Можно поставить ноль - тогда поведение как обычно, пока открытая сделка есть, новых не открываем.

RecoveryLotFactor - множитель после потерь. Домножать будет, пока не выйдет на уровень до потерь (ищет по истории на 20 сделок назад).

RecoveryAllSymbols - включать рекавери всем символам, кто бы из них ни промазал.

 

Прогоны в тестере МТ4 (знаю, знаю, но нет у меня пока ТДС) говорят, что все эти рекавери от лукавого: шансы промазать дважды, хоть и невелики, а ненулевые. Именно такие серийные промахи формируют максимальную просадку. И разумеется, при включенном Рекавери, второй промах теряет заметно больше, что отражается на просадке.

Прибыль растет, график красивее, но и просадка растет тоже.

 

Но тут как: я вам выдал остро отточенный инструмент - а вы решайте, резать, или в шкаф положить. Обе опции выключаемы: рекавери фактор можно поставить в 1.0... тогда он будет писать в логах, что он в просадке, но торговую логику это никак не поменяет.

 

NY Close Scalper_v1.3.5.ex4

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

[Советник] Incognito Scalper Опубликовано
6 минут назад, FERRARI2009 сказал:

Также при анализе результатов тестирования, проводившихся Fed77в частности на сете EURCAD, заметил, что советник после срабатывания стоп лосса тут же открывает сделку в этом же направлении, что может привести к повторному стоп лоссу при сильном безоткатном движении на каком-либо новостном форс мажоре. Предлагаю в новой версии советника также ввести 2 новых параметра из 12 генерика, для предотвращения подобных рисков: 

  • pause - пауза после убыточной сделки (минут)
  • sizeloss - размер убытка, при котором включается пауза (в пунктах)

 

Снимок.JPG

Интересно...

Вообще-то логика эта в советнике есть:

         Print("Last trade was a loss. Increasing WaitMinutesBetweenEntries by 15 minutes."); 
Правда, она работает как пауза между открытиями, а не от закрытия до открытия.

Я покручу в уме.

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

[Советник] Incognito Scalper Опубликовано (изменено)
Цитата

По поводу планировщика из генерика - его несложно впаять, но...

Его же невозможно оптить.

Как раз планировщик из 12 версии Дженерика (в отличии от 11) прекрасно оптится в тестере (см. рисунок). И если его не сложно впаять, то очень надеюсь что вы это сделаете - реально очень функциональная и удобная вещь. Поэтому не имеет смысла делать 2 версии советника - для оптимизации и для торгов. С данным планировщиком получится 1 универсальная версия.

Цитата

Интересно...

Вообще-то логика эта в советнике есть:

         Print("Last trade was a loss. Increasing WaitMinutesBetweenEntries by 15 minutes."); 
Правда, она работает как пауза между открытиями, а не от закрытия до открытия.

Только это уже совершенно другая функция. И, на мой взгляд, паузу между открытиями далеко не всегда имеет смысл держать. По опыту торговли Дженериком могу сказать что иногда бывают подряд несколько быстрых прибыльных сделок - по 2-3 сделки открываются и закрываются в профит в течении 5-10 минут и держать в таком случае паузу аж 15 минут между открытиями ордеров в данных случаях это значит просто упускать профит (для примера привожу скриншот сделок Дженерика с реального счета, где за несколько минут открыты и закрыты 3 сделки по одному инструменту и в одном направлении и все в хорошей прибыли). Предлагаю вывести данную функцию в настройки с возможностью изменения времени между открытиями ордеров (и полным отключением данной функции при 0). И по тестам опять же увидим какой подход эффективнее. Но лично мне кажется, данное время искусственно ограничивать не стоит.

 

 

Снимок.JPG

Снимок 2.JPG

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

[Советник] Incognito Scalper Опубликовано (изменено)
4 часа назад, Rigal сказал:

А пока свежая версия 1.3.5 с тремя дополнительными опциями, воплощение предложения @ostapbender пару страниц назад.

NextOrderFactor - множитель лота для последующих сделок в ту же сторону.

По умолчанию советник не открывает больше одной сделки. Если эту опцию поставить >0, то он будет открывать. При этом, если сделка такого направления уже есть, новая сделка откроется лотом домноженным на это число.

Можно поставить 1.0, тогда просто будет открываться еще.

Можно поставить ноль - тогда поведение как обычно, пока открытая сделка есть, новых не открываем.

RecoveryLotFactor - множитель после потерь. Домножать будет, пока не выйдет на уровень до потерь (ищет по истории на 20 сделок назад).

RecoveryAllSymbols - включать рекавери всем символам, кто бы из них ни промазал.

Но тут как: я вам выдал остро отточенный инструмент - а вы решайте, резать, или в шкаф положить. Обе опции выключаемы: рекавери фактор можно поставить в 1.0... тогда он будет писать в логах, что он в просадке, но торговую логику это никак не поменяет.

 

NY Close Scalper_v1.3.5.ex4 72 \u043a\u0411 · 1 загрузка

Прогнал с RecoveryFactor = 2   в 2-х вариантах для сравнения NextOrderFactor = 0 и 1

 

Первый параметр: множитель лота после лося, пока не выкарабкаемся.

Второй - множитель лота для открытия второй и следующих сделок. 0 - не открывать (поведение предыдущих версий)

1.jpg.1cb2b5ff3318e67647ac4579112bd20b.jpg

1.jpg.d58569640af3dfd0330eb4b08c06f849.jpg

тест NY Close Scalper_v1.3.5 Recovery.rar NY Close Scalper_v1.3.5 Recovery+NextOrderFactor.rar

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

[Советник] Incognito Scalper Опубликовано (изменено)

У кого-нибудь еще есть такие ошибки?

image.png.18f968bcfa5a88f4c490bb799b49255b.png

image.png.d6ff7e1f50cff1fe0b939a9f6f17ff57.png

url к серверу времени прописан

image.png.0729ff8b224ad8428f49be95797fab86.png

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

[Советник] Incognito Scalper Опубликовано
9 часов назад, FERRARI2009 сказал:

Как раз планировщик из 12 версии Дженерика (в отличии от 11) прекрасно оптится в тестере (см. рисунок).

Я, видимо, не донес мысль о том, что значит "удобно оптить".

Давайте, я попробую подробнее.

Скажем, нам хочется посмотреть, как влияет сдвиг начали и конца торгов на 15 минут в обе стороны от сегодняшнего диапазона 22-24

В генерике мне нужно будет сделать так:

image.png.eb624157e73632e0561c215cf0217c4c.png

В итоге он переберет все значения минут, от 0 до 59, для старта и финиша. Мы покроем диапазон с 21:00 до 1:00 в максимуме и 22:59 до 23:59 в минимуме, общее количество пермутаций = 2 х 60 х 2 х 60 = 14400.

Но  ведь мы хотели подвигать старт в пределах 30 минут и финиш в пределах других 30 минут, это должно быть всего 900 пермутаций - зачем нам делать в 15 раз больше?

Можно, конечно, проделать 4 отдельных прогона: с оптимизация первых 15 минут старта, вторых 15 минут старта и то же самое с финишем. Но это будет приближение, потому, что каждая из комбинаций старта не тестируется с каждой из комбинаций финиша. И нужно еще подождать каждого прогона, чтобы проанализировать и запустить следующий.

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

Пример: мы хотим, чтобы советник торговал 15 минут и хотим найти лучшие 15 минут в интервале с 23:00 до 01:00.

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

 

Я бы сделал так: 23:00 это 1380-я минута дня.

Продолжительность сессии 15 минут.

Мне нужно пробежаться по первому параметру с 1380 до 1500 (или 1485, если я хочу закончить до 01:00)

 

И для первой задачи тоже несложно:

Оптимизируем старт от 1305 до 1335, продолжительность от 90 до 150.

Это 30 * 60 = 1800, почти в 10 раз меньше, чем требуется для дженерика.

И параметры эти непротиворечиво сочетаются.

 

Убедите меня, что я в чем-то неправ, пожалуйста.

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

[Советник] Incognito Scalper Опубликовано
9 часов назад, FERRARI2009 сказал:

Только это уже совершенно другая функция. И, на мой взгляд, паузу между открытиями далеко не всегда имеет смысл держать. По опыту торговли Дженериком могу сказать что иногда бывают подряд несколько быстрых прибыльных сделок - по 2-3 сделки открываются и закрываются в профит в течении 5-10 минут и держать в таком случае паузу аж 15 минут между открытиями ордеров в данных случаях это значит просто упускать профит (для примера привожу скриншот сделок Дженерика с реального счета, где за несколько минут открыты и закрыты 3 сделки по одному инструменту и в одном направлении и все в хорошей прибыли). Предлагаю вывести данную функцию в настройки с возможностью изменения времени между открытиями ордеров (и полным отключением данной функции при 0). И по тестам опять же увидим какой подход эффективнее. Но лично мне кажется, данное время искусственно ограничивать не стоит.

 

Собрать и протестировать имеет смысл.

Записал в список задач.

А не могли бы Вы пока протестировать влияние WaitMinutesBetweenEntries на продуктивность и просадку - чтобы понять, есть ли смысл сохранить этот механизм? 

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

[Советник] Incognito Scalper Опубликовано
6 часов назад, Fed77 сказал:

Прогнал с RecoveryFactor = 2   в 2-х вариантах для сравнения NextOrderFactor = 0 и 1

 

Первый параметр: множитель лота после лося, пока не выкарабкаемся.

Второй - множитель лота для открытия второй и следующих сделок. 0 - не открывать (поведение предыдущих версий)

1.jpg.1cb2b5ff3318e67647ac4579112bd20b.jpg

1.jpg.d58569640af3dfd0330eb4b08c06f849.jpg

тест NY Close Scalper_v1.3.5 Recovery.rar 1 \u041c\u0411 · 5 загрузок NY Close Scalper_v1.3.5 Recovery+NextOrderFactor.rar 1 \u041c\u0411 · 5 загрузок

Суммируем: просадка удваивается, профит увеличивается на треть.

Откатываемся на логику версии 1.3.4 (удалить рекавери и многоордерность из кода и опций), или оставить? 

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

[Советник] Incognito Scalper Опубликовано (изменено)

Fed77, в сетах у тебя ошибка. Ставишь параметр TesterGMToffset равным "3", а надо ставить "2".

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

[Советник] Incognito Scalper Опубликовано
9 часов назад, Fed77 сказал:

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

С одной стороны, мне пофигу, кто там что наплодит - они у нас корку хлеба не отнимают

С другой - мы работаем. Инвестируем наше время и способности (и деньги, кстати - ТДС, сервера, все вот это вот).

Многие ночами, в свободное от основного занятия время, отрывая у семьи :)

Я с удовольствием поделюсь с людьми, которые вносят активный вклад в этот процесс.

Я не хочу превращать наш с вами труд в источник дохода нечистоплотных ленивых балбесов, которые не ударили палец о палец, чтобы помочь нам добиться результата.

Как-то так.

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

17 минут назад, Rigal сказал:

А не могли бы Вы пока протестировать влияние WaitMinutesBetweenEntries на продуктивность и просадку - чтобы понять, есть ли смысл сохранить этот механизм? 

Механизм работает. Прогнал только, что с нулевым значением.

Сейчас ещё пару прогонов сделаю и выложу.

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

[Советник] Incognito Scalper Опубликовано
3 часа назад, alexavb сказал:

У кого-нибудь еще есть такие ошибки?

image.png.18f968bcfa5a88f4c490bb799b49255b.png

image.png.d6ff7e1f50cff1fe0b939a9f6f17ff57.png

url к серверу времени прописан

image.png.0729ff8b224ad8428f49be95797fab86.png

Это интересно. Я добрался наконец до дома, сейчас гляну.

 

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

34 минуты назад, Rigal сказал:

А не могли бы Вы пока протестировать влияние WaitMinutesBetweenEntries на продуктивность и просадку - чтобы понять, есть ли смысл сохранить этот механизм? 

Провёл тесты со значениями "0", "15" и "60".

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

Определённо, в параметре есть смысл.

WMBE.zip

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

[Советник] Incognito Scalper Опубликовано
2 минуты назад, Bag-76 сказал:

Провёл тесты со значениями "0", "15" и "60".

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

Определённо, в параметре есть смысл.

WMBE.zip 57 \u043a\u0411 · 0 загрузок

60 выглядит наиболее осмысленно на приведенных данных: профит практически не упал, а просадка на 30% меньше.

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

[Советник] Incognito Scalper Опубликовано

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

Мне попадались какие-то уродливые поделки на маркете, но нужно что-то рабочее, желательно, чтобы он в файл писал.

Для такого советника абсолютный маст хэв.

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

2 минуты назад, Rigal сказал:

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

Мне попадались какие-то уродливые поделки на маркете, но нужно что-то рабочее, желательно, чтобы он в файл писал.

Для такого советника абсолютный маст хэв.

 

Spread & Sessions Indicator.ex4

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

[Советник] Incognito Scalper Опубликовано
2 минуты назад, Bag-76 сказал:

Вау, FapTurbo... взрыв в прошлое :)

Первый и единственный советник, за который я заплатил деньги в далеком 2009-м.

Спасибо за индикатор, дружище.

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

1 час назад, Rigal сказал:

Суммируем: просадка удваивается, профит увеличивается на треть.

Откатываемся на логику версии 1.3.4 (удалить рекавери и многоордерность из кода и опций), или оставить? 

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

а вот рековери случается оправдывается - только не целочисленный, это слишком грубо.  Точно должна быть возможность задать коэффициент 1.3-1.5.

 

Но хрен знает как оно всё в данном боте с его ТП/СЛ/винрейтом работать будет, тут логика покалеченная и все надо изучать с нуля...

Напомню, что пока что мы в тестере - как оно будет работать на разных счетах разных ДЦ, можно только строить тьму догадок.

 

 

Цитата

Вау, FapTurbo... взрыв в прошлое :)

Первый и единственный советник, за который я заплатил деньги в далеком 2009-м.

Абсолютно аналогично! =))

Только еще и деньги в 30 дней назад истребовал и получил.

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

[Советник] Incognito Scalper Опубликовано
27 минут назад, Старик сказал:

Абсолютно аналогично! =))

Только еще и деньги в 30 дней назад истребовал и получил.

А мне этот зверек (уже к тому времени декомпилированный и переписанный) удвоил депозит за полгода.

Но это все дела прошлые.

Проблема, которую зарепортил @alexavb выше воспроизводится. Дурацкая неточность вычислений с плавающей точкой - расхождение между TimeGMT и TimeCurrent  в одну секунду, как видно из скриншота, дает такой эффект.

В свое оправдание скажу, что это кусок оригинальной логики.

Поправил, подбросил версию, в аттаче - протестируйте на демо плиз, не в тестере.

 

 

NY Close Scalper_v1.3.6.ex4

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

В 28.12.2019 в 15:03, Rigal сказал:

В советнике примитивная логика работы с Daylight Saving Time (переходом на летнее время)

Он знает правильные даты перехода с 2010 по 2030 (!) годы.

Попробуй прикрепить такой DST в код, там минимум расчетов

Индикатор спреда такой могу еще предложить.

По поводу разбития времени тестов по дням недели - это как то бесмысленно и попахивает как подгонкой, так и огромной кучей результатов для оптимизации. 
В свое время я писал свою версию генетика, где указывал 3 параметра: Час и минуты начала торгов, а также продолжительность этой торговли в часах. Но по результатам тестирования я бы не сказал, что такой метод дал лучше результаты, чем обычное выставление времени в часах и минутах. Поэтому попробовать можно только для уменьшения количества параметров оптимизации. Время ролловера я бы вообще не оптимизировал, просто забить его с 23-50 до 0-30 (к примеру) и забыть.
Вообще, когда я ковыряю чужой код я стараюсь как можно больше действитеельно лишних параметров убрать из советника, чтобы потом переосмыслить код и если нужно - вернуть. Чем меньше параметров для опта - тем более интересные и не подогнанные под историю результаты могут получиться.

DST.mq4 Spread Detected by ReVeR v1.11 for Forum.ex4

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

[Советник] Incognito Scalper Опубликовано
10 минут назад, Rever27 сказал:

Попробуй прикрепить такой DST в код, там минимум расчетов

они сделали изящнее, я вынужден признать:

   if (IsSummerTime(TimeCurrent() - gmtOffset * SECONDS_IN_HOUR)){
      gmtStartHour = (gmtStartHour + 23) % 24;
      gmtEndHour = (gmtEndHour + 23) % 24;
   }
При этом функция IsSummerTime была построена на 30 if() стейтментах, где в зависимости от года выбирались даты перехода на летнее время и назад.

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

Я свернул в массив с отступом в 2010, две строчки вышло.

 

Я пока отложу более подробное изучение вопроса DST, оно вроде терпит и полностью покрыто тестами.

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

2 минуты назад, Rigal сказал:

Я пока отложу более подробное изучение вопроса DST, оно вроде терпит и полностью покрыто тестами.

Просто у разных брокеров переход в разные дни происходит - по Нью Йорку и по Европе. Альпари торгуют по Европе по EST, а вот тикмилл по нью йорку. Я когда писал очередной советник столкнулся с этой проблемой, что у коллеги брокер переходил в одно время, у меня в другое, поэтому и написали такой вариант. Соответственно, если в TDS человек оптимизирует по времени перехода нью йорка, то пользователь, торгующий по времени европы должен обязательно прогнать готовый сет со своими настройками. Это не так критично, разница в 2 недели, но все равно нужно об этом помнить.

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

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

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

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

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

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

Войти

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

Войти

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


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

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