Всем, кто хотел видеть графики без пропущенных баров - сюда =) - страница 5

 
solandr:
Буду ждать. Заранее благодарю за помощь!
Вот, пробуй ;)
Файлы:
 

Очень похоже на то, о чём я и мечтал!!! :o) Есть только какая-то ошибка с подсчётом количества баров.
У меня устновлено показывать в окне терминала 2000 баров, то есть реально в окне графика 2000 баров. Вот что пишет эксперт при запуске на чарте EURUSD:

01:20:32 WithoutSunday_m EURUSDm,Daily: < - - - Найдено 12 корректных графиков. - - - >
01:20:32 WithoutSunday_m EURUSDm,Daily: < - - - EURUSDm1440: было 1896 баров, добавлено 0 баров, удалено 103 баров - - - >
01:20:32 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_EURUSDm1440" - - - >
01:20:33 WithoutSunday_m EURUSDm,Daily: < - - - USDCHFm1440: было 3792 баров, добавлено 0 баров, удалено 206 баров - - - >
01:20:33 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_USDCHFm1440" - - - >
01:20:33 WithoutSunday_m EURUSDm,Daily: < - - - CHFJPYm1440: было 4710 баров, добавлено 0 баров, удалено 309 баров - - - >
01:20:33 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_CHFJPYm1440" - - - >
01:20:33 WithoutSunday_m EURUSDm,Daily: < - - - GBPUSDm1440: было 6606 баров, добавлено 0 баров, удалено 412 баров - - - >
01:20:33 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_GBPUSDm1440" - - - >
01:20:34 WithoutSunday_m EURUSDm,Daily: < - - - USDCADm1440: было 8502 баров, добавлено 0 баров, удалено 515 баров - - - >
01:20:34 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_USDCADm1440" - - - >
01:20:34 WithoutSunday_m EURUSDm,Daily: < - - - USDJPYm1440: было 10398 баров, добавлено 0 баров, удалено 618 баров - - - >
01:20:34 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_USDJPYm1440" - - - >
01:20:35 WithoutSunday_m EURUSDm,Daily: < - - - EURGBPm1440: было 12294 баров, добавлено 0 баров, удалено 721 баров - - - >
01:20:35 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_EURGBPm1440" - - - >
01:20:35 WithoutSunday_m EURUSDm,Daily: < - - - AUDUSDm1440: было 14190 баров, добавлено 0 баров, удалено 824 баров - - - >
01:20:35 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_AUDUSDm1440" - - - >
01:20:35 WithoutSunday_m EURUSDm,Daily: < - - - EURCHFm1440: было 16086 баров, добавлено 0 баров, удалено 927 баров - - - >
01:20:35 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_EURCHFm1440" - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - EURJPYm1440: было 17982 баров, добавлено 0 баров, удалено 1030 баров - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_EURJPYm1440" - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - NZDUSDm1440: было 18719 баров, добавлено 0 баров, удалено 1134 баров - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_NZDUSDm1440" - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - AUDJPYm1440: было 19485 баров, добавлено 0 баров, удалено 1237 баров - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - Для просмотра результатов, откройте график "WS_AUDJPYm1440" - - - >
01:20:36 WithoutSunday_m EURUSDm,Daily: < - - - График WS_EURUSDm1440 найден! - - - >

В связи с этим есть 2 вопроса:
1. Почему эксперт отыскивает на графике EURUSDm1440 только 1896 баров, хотя в истории котировок (по F2) чётко написана цифра 2000? Видимо нужно писать не БЫЛО 1896, а СТАЛО 1896(~2000-103) на новом графике? Я верно рассуждаю?
2. Наверное где-то не происходит обнуление счётчика в результате чего идёт плюсование суммы баров на графике. (AUDJPYm1440: было 19485 баров - это 60 лет!!!)

Вы мгли бы разобраться с этими вопросами?

Я так понимаю вы просто удаляете воскресные бары без всякого объединения их с барами понедельника? В принципе меня вполне устраивает и это. Просто если не сложно, то хотелось бы иметь в опциях и вариант с объединением воскресных баров с барами понедельника. То есть итоговый бар скорректированного понедельника будет равен:
O_new=O_sunday
H_new=Highest(High_sunday, High_monday)
L_new=Lowest(Low_sunday, Low_monday)
C_new=C_monday

 
solandr писал (а):

Вы мгли бы разобраться с этими вопросами?

Да, действительно не обнулялись счетчики =)
Спасибо, что указали на ошибку.

Пробуйте исправленную версию ;)
Файлы:
 
solandr:

Я так понимаю вы просто удаляете воскресные бары без всякого объединения их с барами понедельника? В принципе меня вполне устраивает и это. Просто если не сложно, то хотелось бы иметь в опциях и вариант с объединением воскресных баров с барами понедельника. То есть итоговый бар скорректированного понедельника будет равен:
O_new=O_sunday
H_new=Highest(High_sunday, High_monday)
L_new=Lowest(Low_sunday, Low_monday)
C_new=C_monday

Добавлять сложнее.
Сейчас попробую ;)
 
komposter:
Добавлять сложнее.
Сейчас попробую ;)
Попробовал =)
Файлы:
 
Вот привожу объяснение насколько важно для меня отсутсвие воскресного бара.
Ниже 3 картинки.
1. Расчёт каналов на Альпари, котрый имеет ровно 5 баров D1 в неделю.
2. Расчёт каналов на InterBankFX в оригинальной подаче котировок - 6 баров в неделю.
3. Расчёт каналов на InterBankFX с использованием нового графика без воскресных баров.

Картинка 3 совпадает с картинкой 1. Этого то как раз я и добивался!!!!!
Большущее спасибо!!!!!!!!!!!!!!!! :o)

PS: время обновления графиков выставил 30 секунд (extern int RefreshLuft = 30000;). Мне вполне хватит ;o). Всё равно пересчёт картинки выполняется раз в полчаса.





 
komposter писал (а):
komposter писал (а):
Добавлять сложнее.
Сейчас попробую ;)
Попробовал =)

Проверил. Бары отлично склеиваются (воскресенье + понедельник). Спасибо!!!

Ещё хотелось бы уточнить одну небольшую техническую деталь.
В архиве котировок написано, что у нас есть 2000 баров EURUSDm.
Советник же выдаёт на 1 бар меньшее значение:
02:11:56 WithoutSunday_2m EURUSDm,Daily: < - - - EURUSDm1440: было 1999 баров, удалено 103 баров - - - >
Вопрос почему?
Наверное в строчку отчёта не включается нулевой бар или ещё что-то в этом роде, так как он ещё не сформирован и его подсчёт не происходит счётчиком количества баров? Или же какой-то другой смысл заложен в этом?

PS: Думаю, что после некоторой обкатке на реале этого скрипта можно быдет выложить его в CodeBase этого сайта. Скрипт будет просто чрезвычайно полезен тем, кто работает по периоду D1 на брокерах, подобных InterBankFX.
 
solandr писал (а):
Картинка 3 совпадает с картинкой 1. Этого то как раз я и добивался!!!!!

Да, разницу видно )
Выкладываю в CodeBase.
 
solandr:
Ещё хотелось бы уточнить одну небольшую техническую деталь.
В архиве котировок написано, что у нас есть 2000 баров EURUSDm.
Советник же выдаёт на 1 бар меньшее значение:
02:11:56 WithoutSunday_2m EURUSDm,Daily: < - - - EURUSDm1440: было 1999 баров, удалено 103 баров - - - >
Вопрос почему?
Наверное в строчку отчёта не включается нулевой бар или ещё что-то в этом роде, так как он ещё не сформирован и его подсчёт не происходит счётчиком количества баров? Или же какой-то другой смысл заложен в этом?
Да, 0-й бар заносится в базу после того, как он сформируется.
 
Ещё хотелось бы узнать о следующих время от времени выскакивающих ошибках, возникающих при включении терминала:

1 ошибка:
02:10:24 WithoutSunday_1m: FileOpen - too many opened files
02:10:24 WithoutSunday_1m EURUSDm,Daily: Alert: FileOpenHistory( "WS_EURCHFm1440. hst", FILE_BIN | FILE_WRITE ) - Error #4102

Ясно написано, что "открыто слишком много файлов". Можно ли как то её ликвидировать при использовании эксперта с 12 парами валют? Может быть делать паузу в несколько секунд между последовательной обработке файлов истории или ещё что-то?

2 ошибка:
02:11:06 HistoryBase: 273 errors in 'WS_USDCHFm1440'
При этой ошибке котировки сплющились по вертикали, то есть как буд-то бы появилась большая шпилька на графике. Правда я её специально не искал и скриншот не сделал.
Это что - не вовремя выключенный терминал (в момент переписи файла истории) или ещё что-то?
Можно ли с этим как-то бороться, поскольку очень хотелось бы при запуске советника для автоматического трейдинга на реале быть застрахованным от подобных неожиданностей. Может быть как-то предупреждать пользователя например в окне алерта когда можно, а когда нельзя выключать терминал?