2016-12-22 6 views
3

我々は、次のようなquantmodパッケージで資金を調達OANDAとヤフーからの毎日のデータを収集することがあります。正確なタイムスタンプが

getFX("USD/JPY",from="2007-01-01", to = Sys.Date()) 
getSymbols("EUR=X",src="yahoo",from="2002-01-01",auto.assign=F) 

慎重にデータをチェックした後、あなたが気づくかもしれないこれらのソースからの値著しく異なっている。私はその後、各ソースの日のタイムスタンプにかかる時間は正確に何だったのだろうか? GMT深夜には見えません。

ヒントがある場合は、私は感謝します。ありがとうございました。

+0

ドキュメントをチェックした後、私は 'getFX'と' getSymbols'の源であることがわかった[OANDA](https://でwww.oanda.com/)、[Yahoo Finance](https://finance.yahoo.com/)となっています。この助けを願っています。 – raymkchow

答えて

2

FXはOTC市場であるため、いつでもレートを設定する中央取引所はありませんが、裁定上の考慮事項は、主要プレーヤー(銀行、ヘッジファンド、リアルマネー)のすべてがほぼ同じレートで液体市場時間(日曜日の午後5時(America/New_York)午後5時から金曜日午後5時まで)の所定の時間。したがって、異なるソースでは、同じタイムスタンプであってもわずかに異なる価格設定が可能です。

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 

ヤフーデータ:

  • まず、我々はヤフーがOHLCデータを返す参照これを念頭において、ここにEUR/USDのためのいくつかの最近のOANDAとYahooレートがあります。私はヤフー(EUR.X.Close)によって提供される終値がUTCの午前0時頃に相当すると伝えます。私はこれを他の信頼できる(独自の)FXチックデータの価格情報源と照合しました。

  • また、オープン価格(EUR.X.Open)が直前の終値1バーとは異なることがわかりますので、オープンプライスは、24時間のUTC任意の取引日に(この期間に上限と下限も設定されます)。これは単にバーの作成に関するYahooのコンベンションであり、データの普及方法を「正しい」または「間違っている」ものではありません。

  • 現実にはFX取引は24/5ですので、ヤフーデータにはギャップがあります。

OANDAデータ:

  • お知らせOANDAは週末と祝日を含め、毎日の価格を返し、値の1つの列だけ。 Oandaは時系列の各日の加重平均価格を返しています。 (午後5時(東部標準時間の午後5時)またはUTCの午前0時にデータを閉じることはありません)。なぜこれは役に立ちそうですか?まあ、多くの人々は、など異なる通貨での取引を重視するために、毎日FXデータ・レートを使用したい、とOANDAは、信頼性の高い価格データ(https://www.oanda.com/fx-for-business/

流動性は、午後5時ESTで、毎日が非常に貧弱であるとの信頼名前と考えられているので、これは為替相場がFXマーケットで支払われるときであるため、この時間はFX取引日の終わりとしてよく使用されます。日常的なFXデータを作成するための合理的な方法は、平日の午後5時に開始し、月曜日の午後5時に終了し、平日の2日は月曜日の午後5時に開始し、火曜日の午後5時の東日本で終了すると仮定します。これにより、毎週5つの24時間取引バー。

関連トピックでは、上記のソースのいずれもバックテスティングFX戦略には使用できません。あなたは、毎日またはより高い周波数で無料のFXデータを探していることが起こる場合は、いくつかのオプションが含まれます:http://www.truefx.com/?page=downloads

  • から

    1. 無料集約FXティックデータがインタラクティブ・ブローカー取引口座を設定します。毎日のOHLCの履歴を1年間、5秒、30秒、1分の棒グラフのデータを短時間で取得することができます(少なくとも前回確認しましたが、もう少し前です)。
    2. DIY:評判の良いブローカーで口座を開き、保存開始ストリーミングティック自分
  • +0

    ありがとうFXQuantTrader! –

    +0

    あなたは、Oandaが時系列の各日の加重平均価格を返すと述べました。重み付けがどのように行われているか知っていますか? –

    +1

    Oandaデータの場合:「OANDAのfxTrade取引プラットフォームや金融機関を含む多くの異なるソースから毎日のスポット平均を表すOANDAレートを取得しています。 NYの午後10時に料金を引き上げる」と述べた。 –

    関連する問題