Что с историей NZDUSD до 2009 года? - страница 4

 
Interesting:

3. В MT5 (в частности в MQL5) насколько мне известно достаточно средств для того чтобы проконтролировать историю и при необходимости подгрузить ее.

Может я что-то пропустил? Когда я этим вопросом занимался, этот вопрос остался для меня нерешенным. Если не затруднит, подскажите как решить такую задачу:

1. Нажимаем "M1"

2. Получаем картинку, ниже скрин (черные червячки - бары) 

3. "Интересующий меня бар" - это последний бар, который можно назвать минутным баром

4. Как найти адрес этого бара?

 

Файлы:
z6fjw8ph8y.png  14 kb
 
Figar0:
Угу, только работает по факту медленее в 70 раз ;) (https://www.mql5.com/ru/forum/3456 начиная с середины первой страницы) Я так понимаю невозможность лока? Это на мой взгляд шаг в правильном направлении, к реальному трейдингу. Сложнее в реализации, но все решабельно. А то развращенный МТ3/МТ4 народ до сих пор лок хеджированием называет. Хуже того, пытается на основе лока, в рамках одной стратегии профит искать, пару дней назад услышал подобный бред от человека с какой-то ученой степенью аж...

Про 70 раз Вы явно загнули. Мы провели очень большой объем работы, чтобы избавиться от простых граалей, что делались на MetaTrader 4.

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

Даже в режиме "По открытию бара" происходит точный контроль рыночных условий (причем еще и с учетом мультивалютности) по всем тикам, хотя вызов OnTick эксперта происходит только один раз на открытии бара. Поэтому ни в коем случае нельзя сравнивать режимы "По открытию бара" у MT4 и MT5. У MetaTrader 5 нет такой разницы между режимами "по всем тикам" и "по открытию бара", как это было в МетаТрейдер 4. Для сравнения тестеров МТ4 и МТ5 нужно использовать режим моделирования по всем тикам.

Еще важно знать, что механизм, объем и точность моделирования тиковых данных в МетаТрейдер 5 был серьезно улучшен. На одном и том же промежутке данных MetaTrader 5 генерирует гораздо больше тиковых данных, что увеличивает точность и замедляет процесс тестирования.

Для компенсации замедления тестирования мы дали:

  • возможность использовать 64 битные версии, что дает минимум 25% ускорения по базовым расчетам и серьезное ускорение при наличии большого объема памяти
  • мультипотоковое тестирование, что ускоряет расчеты практически линейно количеству ядер
  • удаленных агентов, которых можно установить в локальных сетях или через интернет
  • MQL5 Cloud Network с ускорением расчетов в сотни раз

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

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 

К выше написанному Ренатом хочу добавить, точнее привести пример. 

Провёл тест после оптимизации параметров на одной из своих систем в режимах  Только цены открытия и Все тики. В тесте участвовало 3 валютные пары по 4 торговых стратегий в каждой. Итого 12 независимых стратегий.

В режиме Только цены открытия тест проходит очень быстро. За период 1 год, как в этом случае, тест длится около 5 секунд (первый рисунок). На самом деле используя режим Все тики мы получим практически такой же результат (второй рисунок ниже). Он может быть немного лучше или хуже, чем в режиме Только цены открытия, но это не существенно. В данном случае итоговая прибыль в режиме Все тики получилась даже больше, но тест длился при этом около 16 минут

Только цены открытия: 

 

 

 

Все тики: 

 

--- 

К MQL5 просто привыкнуть надо и тогда он становится дружелюбным. ))

 
Renat:

Про 70 раз Вы явно загнули.

Каюсь, загнул. Всего в 68,97958258741417 раз (если ничего не изменилось в тестере МТ5 с той поры). Все цифры на основании которых сделан этот расчет есть по ссылке.

 

Renat:

 Мы провели очень большой объем работы, чтобы избавиться от простых граалей, что делались на MetaTrader 4.

https://www.mql5.com/ru/code/244

Но граали непобедимы?)

 

Renat:

Даже в режиме "По открытию бара" происходит точный контроль рыночных условий (причем еще и с учетом мультивалютности) по всем тикам, хотя вызов OnTick эксперта происходит только один раз на открытии бара. Поэтому ни в коем случае нельзя сравнивать режимы "По открытию бара" у MT4 и MT5. У MetaTrader 5 нет такой разницы между режимами "по всем тикам" и "по открытию бара", как это было в МетаТрейдер 4. Для сравнения тестеров МТ4 и МТ5 нужно использовать режим моделирования по всем тикам.

Да я и не спорю тестер МТ5 точнее, технологичнее, мультивалютный наконец-то,  но:

1) на граалях это не отразилось, кто захочет - нарисует все что угодно.

2) сделки тестера все так же не будут совпадать со сделками при торговли. От вопросов "Почему в тестере так а она реале подругому?" - не убежать.

 Мне тики, тем более "выдуманые" пусть и по улучшеному алгоритму  вообще ненужны. В точности выше цен открытия M1 смысла не вижу. Ну протестирую я стратегию на 100 пипсов за год точнее в МТ5 и что? Сделки с тестера на свой торговый счет перекинуть без машины времени все равно нельзя.  Или отчетом тестера в ДЦ "после боя" махать, в тестере так, а у вас типа не так?, представляю красоты эротического путешевствия куда меня там отправят..... Тестер лишь для проверки и обучения эксперта и тут очень важный  момент - скорость, а про нее я выше написал, в 69 раз при одинаковом в ряде случаев результате. Мои эксперты в силу своих принципов  весьма точно тестируются и в МТ4.

Да вообщем-то я не против и точности тестера, может кому-то надо... Я не понимаю одного - почему  нельзя ввести модель равнозначную "Ценам открытия" из МТ4, с соответствующим количеством тиков на бар? Любителей точности Вы уже осчастливили, ну порадуйте поклонников скорости. Введите эту модель as is, выделите красным "Грубая модель лишь для оценочного тестирования. Может не совпадать с торговыми результами и тестированием по другим моделям. Качество моделирования "Совсем N/A"". Тогда, учитывая все перечисленные Вами преимущества тестера из МТ5, и скоростные в том числе, тестер из МТ4 можно будет отправлять на свалку истории, а я в тот же день начну переводить свои инструменты на mql5 и терзать свой ДЦ когда он наконец введет МТ5 в "боевую" эксплуатацию.. Думаю я буду такой не один.

Renat, очень прошу, просто подумайте на досуге немного над моими словами.

Grr-al
Grr-al
  • голосов: 15
  • 2011.01.05
  • Igor Volodin
  • www.mql5.com
Тестерный грааль для режимов "по ценам открытия" и "OHLC на M1".
 

А почему вот это... :

stringo: 

...В приведённом выше случае используется знание, как моделируется M1 OHLC. Если после открытия бара цена ушла вниз, то гарантированно следующее изменение цены будет вверх, и наоборот.

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

 Может генератор нужно ещё немного доработать? )))

 

Описанные проблемы, а также пропуски в истории есть и по основным парам в базе MQ - ранее я об этом уже писал. Но не это главное. Сообщество интересующихся трейдингом растет, как и растет уровень подготовки участников. Такие участники начинающие и те кто работает серьезно большими суммами и интересен ДЦ понимают, что главное - это статистика. А статистика невозможна без возможности анализировать и тестировать качественную историю. Ренат - вы можете ответить на простой вопрос - зачем все возможности пятерочного тестера, если он не позволяет использовать РЕАЛЬНУЮ историю - пример: назначить спред нельзя, а реальной, где он записан на каждой свече - нет, т.к. для четверки такие базы не велись, а если и есть - импортировать ее нельзя? Ясно, что ДЦ это выгодно - чтобы не было качественной истории, чтобы дырки были или часовые на минутках, чтобы нельзя было протестировать систему с фиксированным спредом или двойным для устойчивости - т.к. как прагматик вы понимаете - это принесет ДЦ деньги со счетов трейдеров, которые провели некачественное тестирование. А вот трейдеру-то тестер MT5 зачем, раз нет возможности проводить тесты? Ответ - не зачем, т.к. нет возможности провести нормальное тестирование на корректной истории, и это ваша стратегическая ошибка, т.к. избавиться от плохой репутации тестера гораздо сложнее, чем ее приобрести. Что будет делать народ - тестировать в 4-ке или иных программах, т.е. на базе тех ДЦ - у кого коректная история есть и тестер.

P.S. Хотя, справедливости ради надо сказать, что возможности MQL5, как и других торговых платформ, позволяют написать собственный тестер в виде индикатора. Но опять же - для качественной истории, и в первую очередь минутной, которую загрузить сейчас невозможно.

 
Figar0:

 

2) сделки тестера все так же не будут совпадать со сделками при торговли. От вопросов "Почему в тестере так а она реале подругому?" - не убежать.

Пример из жизни. В начале давешнего Чемпионата мы дисквалифицировали 2 участников, которые выставили одного и того же эксперта. Вы не поверите, но с какого-то момента их сделки начали различаться, несмотря на одинаковые параметры
 
stringo:
Вы не поверите, но с какого-то момента их сделки начали различаться, несмотря на одинаковые параметры

Возможно мне показалось в ваших словах противоречие, но зачем выкашивать псевдограали, если всех все равно не выкосить?

Понижение скорости самого быстрого способа тестирования в 70 раз это очень много. Самый рабочий режим как по мне.

 
TheXpert:

Возможно мне показалось в ваших словах противоречие, но зачем выкашивать псевдограали, если всех все равно не выкосить?

Понижение скорости самого быстрого способа тестирования в 70 раз это очень много. Самый рабочий режим как по мне.

нет никакого выкашивания никаких псевдограалей

нет никакого понижения скорости тестирования. есть повышение качества моделирвания - в режиме "все тики" мы выдаём теперь 100 процентов тиков против 85 процентов в четвёрке.

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

 
stringo:

пишите простые программы - они будут быстрее тестироваться (и работать будут быстрее).

Я, честно говоря, начинаю теряться :) . Ведь совсем недавно вы хотели взять под опеку опенсорсный проект нейронок. А OpenCL? Он архинужен для простых программ?

Меня (я уверен, не только) вполне устраивают (чаще всего) самые грубые методы моделирования. А вы их тупо убрали.

Ведь сейчас проще (реально) реализовать на 4ке все что нужно и на жалком одном ядре заоптимизировать все что нужно соизмеримо, а возможно быстрее, чем даже с использованием облака на 5ке.

А самое обидное, что уже давно хочется взять и окончательно на 5ку пересесть. Но...

Причина обращения: