В настоящее время я работаю с данными панели в Stata и запускаю следующие команды, чтобы определить панель:
encode ticker, generate(ticker_n)
xtset ticker_n time
Где тикер - это строка (тикер котируемой на бирже компании), а время - целое число от 930 (открытие рынка) до 1559 (закрытие рынка). Таким образом, время здесь указывает минуты открытия биржи. На каждую минуту открытия фондового рынка у нас есть все закрытые цены тикеров, перечисленных на фондовой бирже. Образец данных выглядит так:
date time open high low close volume ticker ticker_n
09/15/2008 930 33.31 33.31 33.31 33.31 2135 zeus zeus
09/15/2008 931 32.94 32.94 32.94 32.94 100 zeus zeus
09/15/2008 930 10.21 10.21 10.21 10.21 4270 bx bx
09/15/2008 931 10.46 10.5 10.42 10.44 5700 bx bx
Затем, пытаясь вычислить доходность (используя цену закрытия), я запускаю следующую команду:
gen return = (close - l.close) / l.close
Однако это приводит к странной ошибке, когда каждый целый час (время = 1100, 1200, 1300 и т. Д.) Результаты вообще не рассчитываются, а Stata просто сообщает "-" для результатов.
Теперь я предполагаю, что что-то пошло не так при определении данных панели, так что Stata не распознает, что наблюдение до 1500 должно быть 1459 (оно ищет 1499, я полагаю?).
Следовательно, мой вопрос заключается в том, как правильно определить данные панели, чтобы Stata распознала, что моя временная ось указана в минутах? Я не нашел ничего в официальной документации Stata, которая помогла мне здесь.