Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот несколько полезных функций для работы со временем (можно определять, действует летнее или зимнее время на любую дату).
P.S. В Америке до 2007 переход на DST и обратно совпадал по времени с Европой. Используйте EUR при вызове.
Если кто переделает это в библиотеку, готов помочь (азия, австралия).
Я тоже делал функции DST для Европы и США, возвращают true для летнего и false для зимнего времени. Они рассчитаны на работу со временем сервера, для США только начиная с 2007 г.
P.S. В Америке до 2007 переход на DST и обратно совпадал по времени с Европой. Используйте EUR при вызове.
Это верно лишь наполовину, совпадало только окончание.
10:00 - Начало работы в Европе
комбат, вы ошиблись. Европа открывается в 09:00 MSK (по летнему)
Ну вот, как обещал, "переварил" все что смог относительно торговых сессий и переходов на летнее зимнее время. Сделан excel-евский файл с календарем переходов на летнее/зимнее время и расчет времен начала и окончания сессий по временам работы бирж.
На первом листе просто календарь переходов, никаких формул. Этот календарь используется для расчетов сессий на втором листе. На втором листе можно задавать только три параметра: текущую дату, на которую нужно все рассчитать, да две таймзоны: одна для таймзоны сервера ДЦ, а вторая - для вашего локального времени (которое у вас на наручных часах). По ним рассчитывается таблички с локальными временами времен работы бирж, а по ним - времена начала и конца (минимум и максимум) торговых сессий.
Вроде все получилось, но както мне (по привычке) не верится, что удалось все сделать без ошибок. Почему? Ну вот например австралия и сессия океании. Они же в другом полушарии и у них переход на летнее время выполняется зимой и если у нас месяцы идут так ЗЗЗЛЛЛЗЗЗ то у океании ЛЛЛЗЗЗЛЛЛ. Соответственно получаются разные формулы для расчетов: у нас ищем попадание в летнее время а у них нужно искать - в зимнее. Вобщем заморочки есть :(
По этой причине файл я выложил к себе на сайт, а не запостил в форум - по мере устранения ошибок я буду обновлять файл и по ссылке с форума будет всегда закачиваться свежая и правильная версия (об обновлениях я буду сообщать в этой теме). Файл можно загрузить здесь: http://forextools.com.ua/uploads/files/DST.zip
Выглядит все примерно так:
Если у кого будут конструктивные предложения - пишите письма. Быструю реализацию не обещаю (ввиду полной занятости на основной работе), но когда у меня будет время - все здравое и полезное обязательно будет поделано ;)
ForexTools, добротная работа!
Только вот блин не могу разобраться с вашими обозначениями. Объясните поконкретнее что есть "добавка" (чтобы развеять предположения) .
А насчёт TMZ сервера и TMZ локальная это всмысле??? Всмысле разница между локальным временем и временем ДЦ? там у вас цифры ещё 2 и 3 под каждым соответвенно? Что сие обозначает?
Там просто два абсолютно одинаковых расчета времени, просто для удобства - если время терминала не совпадает локальным временем компьютера.
Добавка - это сколько часов (с учетом летнего или зимнего времени) будет добавлено к времени в UTC чтобы перевести UTC-шное время соответствующей биржи к локальному времени выбранной таймзоны. Это поле нужно только для облегчения вычислений в экселе.
А правила расчета простейшие: определяем (в зависимости от поля Правило) и заданной даты какое сейчас время. Оно проставляется в поле Летн напротив расчетной даты. Потом ко времени работы биржи по UTC прибавляется число часов TMZ (из верхней таблички) и к нему еще добавляется поправка Летн (если летнее время - то +1) ну и +TMZ сервера ДЦ или TMZ локальная. В результате получается перевод UTC-шного времени во локальное время соотвтетсвующей TMZ.
На форексе есть опеределенный стандарт времени. Это среднеевропейское время, CET.
Это GMT (или UTC) +1 ( +2 летом).
По идее, дневные свечи должны начинаться в полночь CET в любом ДЦ.
Это видимо не так, но большинство ДЦ используют все же время CET.
Чуть позже выложу скрипт, определяющий GMT, летнее/зимнее, даты перевода в европе и америке в любой год (в америке начиная с 2007, т.е. по новым правилам).
Поясните: если я смотрю только на часы сервера (GMT+1), время начала / окончания сессий будет постоянным?
В прграмме я использую ограничения по часам работы командой Hour(), т. е. проверяю текущий час сервера, и вхожу или не вхожу.
Если есть переход в два часа ночи, скажем, назад, то свеча часа ночи не содержит в себе двойной объём?
Если есть переход в два часа ночи, скажем, назад, то свеча часа ночи не содержит в себе двойной объём?
Переход всегда осуществляется в воскресенье, когда торговые сервера (МТ-шные во всяком случае) "не торгуют" и значит там нет ни одинарных ни двойных объемов - там просто дыра в истории.
Переход всегда осуществляется в воскресенье, когда торговые сервера (МТ-шные во всяком случае) "не торгуют" и значит там нет ни одинарных ни двойных объемов - там просто дыра в истории.
Понятно, спасибо.
А первый вопрос? Мне не надо знать локальное время. Мои часы - это торговый сервер. Постоянны ли времена открытия сессий по этому времени?
В программе стоит ограничение: если ( Hour()>t1 && Hout()<t2 ), то вперёд, иначе закрыть / спать; примерно так. Без каких-либо поправок.