К содержимому
Форекс
на автомате

Время в журнале эксперта и в истории счёта расходится на 2-3 часа

gonzoс 09.2020
Исследователь
9сообщений
Автор темы#1
Свожу журнал своего советника с выгрузкой сделок в pandas: хочу для каждой сделки видеть, что он «думал» при входе. Журнал пишется на VPS в UTC, история во времени сервера. Сдвинул на +3 летом и +2 зимой по европейскому переходу, сошлось почти всё. Но с середины до конца марта и с конца октября до начала ноября сделки уезжают на час. И ещё оказалось, что в журнале время в одних строках из TimeLocal, а в других из TimeCurrent. Как вы такое сводите?
Malinka_K41с 02.2023
Автор разборов
29сообщений
#2
Окна в марте и в конце октября почти наверняка из-за того, что сервер переводит часы по американскому графику, а не по европейскому. Проверить задним числом можно по котировкам: найди открытие недели и посмотри, на какой час сервера оно приходится в разные недели. Я в каждой строке журнала пишу TimeCurrent, TimeLocal и TimeGMT, места мало, а таких вопросов больше нет. Только помни, что TimeCurrent - время последней котировки, в выходные оно стоит.
gonzoс 09.2020
Исследователь
9сообщений
Автор темы#3
По открытию недели проверил, сервер действительно переводит часы по американскому графику. Сделал так, может кому пригодится:
Код:
import pandas as pd log = pd.read_csv('ea_log.csv', parse_dates=['ts']) # сервер: GMT+2 зимой, GMT+3 летом, переход по США ny = log['ts'].dt.tz_localize('UTC').dt.tz_convert('America/New_York') log['ts_srv'] = ny.dt.tz_localize(None) + pd.Timedelta(hours=7) deals = pd.read_csv('deals.csv', parse_dates=['time']) m = pd.merge_asof(deals.sort_values('time'), log.sort_values('ts_srv'), left_on='time', right_on='ts_srv', direction='backward')
Нью-Йорк плюс 7 часов даёт ровно GMT+2/+3 с американским переходом. Строки, где было TimeCurrent, пока выкинул, их немного, потом поправлю сам журнал.
tolik_96с 05.2021
Наблюдатель
2сообщения
#4
merge_asof без tolerance подтянет и строку пятиминутной давности. Я ставлю 5 секунд и отдельно смотрю, сколько сделок осталось без пары.
Продолжить обсуждение

Для ответа войдите в свой аккаунт.

Войти
← Предыдущая темаСледующая тема →