К вопросу о мультивалютности и синхронизации - страница 2

 
TheXpert:

...

Что делать с теми барами, на которых у инструмента просто не было тиков целый бар?

Ставить цену закрытия предыдущего бара. То есть это будет бар, у которого High, Low, Close и Open будут с одинаковой ценой. Этот бар должен синтезироваться терминалом и тогда синхронизация будет полноценная.
 
tol64:
Ставить цену закрытия предыдущего бара. То есть это будет бар, у которого High, Low, Close и Open будут с одинаковой ценой. Этот бар должен синтезироваться терминалом и тогда синхронизация будет полноценная.

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

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

 

А как тогда быть с тиковыми объемами?

А как определить, надо там дополнительный бар или нет?

Грубо говоря вы предлагаете разворотить терминал, потом напихать туда костылей для синхронизации и собрать обратно?

 
TheXpert:

Что делать с теми барами, на которых у инструмента просто не было тиков целый бар?

Ну это же не значит, что всё это время инструмент был "бесценным"? - у него была и есть цена, последняя, цена закрытия предыдущего бара.

PS. Ой, уже сказали за меня тоже самое. Как быть с тиковыми объёмами? - очень просто, тиковый объем на таком пустом баре - 1 (1, потому что цена была, она не может не была).

 
TheXpert:

А как тогда быть с тиковыми объемами?

А как определить, надо там дополнительный бар или нет?

Грубо говоря вы предлагаете разворотить терминал, потом напихать туда костылей для синхронизации и собрать обратно?

1. Тиковый объём будет равен нулю. Если ноль нельзя, то единица. 

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

3. Если нет никаких подводных камней, которые мы не видим, то разработчики сделают это. Интересно услышать их мнение. 

 
Urain:

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

Это решение, вроде как, напрашивается сразу. Но это искажает уже существующую историю на которой уже построены советники. На мой взгляд было бы корректней реализовать синхронизацию на уровне функций CopyXXXX, а не добавлением новых баров в историю. А то получится, что на моночарте одна история, а на мультичарте другая. Прогонка советника на моночарте по одной паре и на мультечарте по одной паре должны давать одинаковые результаты.
Обработчик события "новый бар"
Обработчик события "новый бар"
  • 2010.10.04
  • Konstantin Gruzdev
  • www.mql5.com
Язык программирования MQL5 позволяет решать задачи на совершенно новом уровне. Даже те задачи, которые уже вроде имеют решения, благодаря объектно-ориентированному программированию могут подняться на качественно новый уровень. В данной статье специально взят простой пример проверки появления нового бара на графике, который был преобразован в достаточно мощный и универсальный инструмент. Какой? Читайте в статье.
 
TheXpert:

А как тогда быть с тиковыми объемами?

А как определить, надо там дополнительный бар или нет?

Грубо говоря вы предлагаете разворотить терминал, потом напихать туда костылей для синхронизации и собрать обратно?

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

обычное расширение, ни каких принципиальных переделок.

tol64:

1. Тиковый объём будет равен нулю. Если ноль нельзя, то единица. 

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

3. Если нет никаких подводных камней, которые мы не видим, то разработчики сделают это. Интересно услышать их мнение. 

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

 
Lizar:
Во. Человек зрит в корень.
 
Lizar:
Это решение, вроде как, напрашивается сразу. Но это искажает уже существующую историю на которой уже построены советники. На мой взгляд было бы корректней реализовать синхронизацию на уровне функций CopyXXXX, а не добавлением новых баров в историю. А то получится, что на моночарте одна история, а на мультичарте другая. Прогонка советника на моночарте по одной паре и на мультечарте по одной паре должны давать одинаковые результаты.

А как сильно это искажает историю? Это же всего лишь капля в огромном океане. Хотя в таком хаосе, как на примере ниже... :

 

Видимо это ещё от поставщика зависит. На рисунке выше, возможно, как раз таки такие пустоты заполняет поставщик. Не программа, это точно, проверил. 

 
Lizar:
Это решение, вроде как, напрашивается сразу. Но это искажает уже существующую историю на которой уже построены советники. На мой взгляд было бы корректней реализовать синхронизацию на уровне функций CopyXXXX, а не добавлением новых баров в историю. А то получится, что на моночарте одна история, а на мультичарте другая. Прогонка советника на моночарте по одной паре и на мультечарте по одной паре должны давать одинаковые результаты.

Во первых искажения будут в пределах 500-1000 на 100000 баров, те менее 1%, во вторых кто сказал что одновалютная история в точности должна быть одинакова с многовалютной.

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

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

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

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