Форекс является внебиржевым рынком, поэтому нет центральной биржи, которая устанавливает курс в любое время, но соображения арбитража означают, что все основные игроки (банки, хедж-фонды, реальные деньги) устанавливают цены примерно по одним и тем же ставкам в любой момент времени в течение ликвидности. часы работы рынка (приблизительно с 17:00 воскресенья по восточному стандартному времени (Америка/Нью-Йорк) до 17:00 пятницы по восточному поясному времени). Поэтому разные источники могут предлагать немного разные цены даже для одних и тех же временных меток. Имея это в виду, вот некоторые недавние расценки Oanda и Yahoo для EUR/USD
:
library(quantmod)
getFX("EUR/USD",from="2007-01-01", to = Sys.Date())
ya2 <- getSymbols("EUR=X",src="yahoo",from="2002-01-01",auto.assign=F)
# Yahoo reports the unconventional pricing of USDEUR = 1 / EURUSD, so lets get in the conventional form EUR/USD:
ya2[, c(1, 4, 6)] <- 1 / coredata(ya2)[, c(1, 4, 6)]
ya2[, c(2, 3)] <- 1 / coredata(ya2)[, c(3, 2)]
tail(ya2, 5)
# > tail(ya2, 5)
# EUR=X.Open EUR=X.High EUR=X.Low EUR=X.Close EUR=X.Volume EUR=X.Adjusted
# 2016-12-20 1.040474 1.041992 1.035518 1.040583 0 1.040583
# 2016-12-21 1.039393 1.045151 1.038529 1.039047 0 1.039047
# 2016-12-22 1.042753 1.049759 1.042753 1.042862 0 1.042862
# 2016-12-23 1.043950 1.046792 1.042970 1.043765 0 1.043765
# 2016-12-26 1.045588 1.047011 1.044600 1.045478 0 1.045478
colnames(EURUSD) <- "Oanda"
compare <- merge(ya2, EURUSD)
indexFormat(compare) <- "%Y-%m-%d, %a"
tail(round(compare, 4), 15)
# EUR.X.Open EUR.X.High EUR.X.Low EUR.X.Close EUR.X.Volume EUR.X.Adjusted Oanda
# 2016-12-13, Tue 1.0643 1.0653 1.0607 1.0642 0 1.0642 1.0629
# 2016-12-14, Wed 1.0630 1.0667 1.0615 1.0629 0 1.0629 1.0632
# 2016-12-15, Thu 1.0515 1.0525 1.0404 1.0514 0 1.0514 1.0468
# 2016-12-16, Fri 1.0418 1.0472 1.0404 1.0419 0 1.0419 1.0435
# 2016-12-17, Sat NA NA NA NA NA NA 1.0451
# 2016-12-18, Sun NA NA NA NA NA NA 1.0451
# 2016-12-19, Mon 1.0448 1.0482 1.0413 1.0450 0 1.0450 1.0446
# 2016-12-20, Tue 1.0405 1.0420 1.0355 1.0406 0 1.0406 1.0391
# 2016-12-21, Wed 1.0394 1.0452 1.0385 1.0390 0 1.0390 1.0413
# 2016-12-22, Thu 1.0428 1.0498 1.0428 1.0429 0 1.0429 1.0443
# 2016-12-23, Fri 1.0440 1.0468 1.0430 1.0438 0 1.0438 1.0445
# 2016-12-24, Sat NA NA NA NA NA NA 1.0455
# 2016-12-25, Sun NA NA NA NA NA NA 1.0455
# 2016-12-26, Mon 1.0456 1.0470 1.0446 1.0455 0 1.0455 1.0455
# 2016-12-27, Tue NA NA NA NA NA NA 1.0449
Данные Yahoo:
Во-первых, мы видим, что Yahoo возвращает данные OHLC. Я могу сказать вам, что цена закрытия, предлагаемая Yahoo (EUR.X.Close
), соответствует примерно полуночи UTC. Я сравнивал это с другими надежными (проприетарными) источниками ценообразования тиковых данных FX.
Кроме того, вы можете ясно видеть, что цена открытия (EUR.X.Open
) отличается от предыдущей цены закрытия на один бар назад, поэтому мы можем сделать вывод, что цена открытия установлена в произвольном временном окне в течение 24-часового периода, заканчивающегося в полночь UTC в любой заданный торговый день. (максимум и минимум также будут установлены за этот период). Это всего лишь соглашение Yahoo для создания баров, и оно не является «правильным» или «неправильным», просто то, как они решили распространять данные.
- На самом деле FX торгует 24 часа в сутки 5 дней в неделю, поэтому в данных Yahoo есть пробелы.
Данные Оанды:
- Обратите внимание, что Oanda возвращает цены за каждый день, включая выходные и праздничные дни, и только в одном столбце значений. Oanda возвращает средневзвешенную цену за каждый день временного ряда. (Он не возвращает данные закрытия в 17:00 по восточному поясному времени или в полночь по всемирному координированному времени). Почему тогда это может быть полезно? Ну, потому что многие люди хотят использовать ежедневные курсы валют для оценки деловых транзакций в разных валютах и т. д., и Oanda считается надежным именем с надежными данными о ценах (https://www.oanda.com/fx-длябизнеса/)
Ликвидность очень низкая в 17:00 по восточному поясному времени каждый день, так как в это время на валютном рынке выплачиваются проценты за пролонгацию, поэтому это время часто используется как конец торгового дня на валютном рынке. Разумный способ создания ежедневных данных FX состоит в том, чтобы предположить, что первый будний день начинается в 17:00 воскресенья по восточному поясному времени и заканчивается в 17:00 в понедельник по восточному стандартному времени, второй рабочий день начинается в 17:00 в понедельник по восточному стандартному времени и заканчивается во вторник в 17:00 по восточному поясному времени и т. д. Это дает 5 четных 24-часовых торговых баров каждую неделю. .
Что касается связанной темы, очевидно, что ни один из вышеперечисленных источников не может быть использован для тестирования внутридневных стратегий FX. Если вы ищете бесплатные данные FX с ежедневной или более высокой частотой, некоторые варианты включают:
- Бесплатные агрегированные тиковые данные FX с http://www.truefx.com/?page=downloads
- Откройте бумажный торговый счет в Interactive Brokers. Вы можете получить скользящую ежедневную историю OHLC за год и данные в более коротких временных рамках 5, 30 секунд, 1 минутные бары (по крайней мере, в последний раз, когда я проверял, что было некоторое время назад).
- Сделай сам: откройте счет у надежного брокера и начните самостоятельно хранить потоковые тики
person
FXQuantTrader
schedule
28.12.2016
getFX
иgetSymbols
являются Oanda и Yahoo Finance соответственно. Надеюсь, это поможет. - person raymkchow   schedule 22.12.2016