【Python,無料】Twelve Dataを使って為替情報を取得する【FX】

※編集中

最近、久しぶりにFX関連のことをやってみたいと思っていました。しかし、OANDAを最近使っておらず、無料でも使えなくなっていたので、他の業者を調べていたところ、twelevedataなるものを見つけましたので、試してみました。

Twelve Dataとは

金融系のデータを提供してくれるサイトです。公式でPythonもライブラリも提供してくれています。

https://twelvedata.com/

Pythonのライブラリ

https://github.com/twelvedata/twelvedata-python

為替情報を取得してみる

公式が公開しているPythonモジュールを使ってドル円の情報を取得します。

https://github.com/twelvedata/twelvedata-python

アカウントを作って、APIキーを取得する

まずはhttps://twelvedata.com/ でアカウントを作成します。無料でやるためにはBasicプランで登録してください。

データを取得してみる

公式通りに動かしてヒストリカルデータを取得してみます。
まずはモジュールをインストールします。

pip install twelvedata[pandas,matplotlib,plotly,websocket-client]

すべて公式通りですが、以下のようなpythonスクリプトを用意します。
APIキーは先ほど取得したAPIキーを入力してください。

from twelvedata import TDClient

# Initialize client - apikey parameter is requiered
td = TDClient(apikey="YOUR_API_KEY_HERE")

# Construct the necessary time series
ts = td.time_series(
    symbol="USD/JPY",
    interval="1min",
    outputsize=10,
    timezone="America/New_York",
)

# Returns pandas.DataFrame
print(ts.as_pandas())

上を実行すると以下のように出力されます。

                          open       high        low      close
datetime
2022-12-30 14:59:00  130.96500  130.97501  130.94501  130.97501
2022-12-30 14:58:00  130.95500  130.97501  130.94501  130.94501
2022-12-30 14:57:00  130.97501  130.97501  130.95500  130.96500
2022-12-30 14:56:00  130.97501  130.98500  130.96500  130.98500
2022-12-30 14:55:00  130.99001  131.00500  130.98000  130.98000
2022-12-30 14:54:00  130.98500  130.99500  130.98500  130.99500
2022-12-30 14:53:00  130.97501  130.99500  130.97501  130.98500
2022-12-30 14:52:00  130.99500  130.99500  130.97501  130.97501
2022-12-30 14:51:00  130.97501  130.99500  130.97501  130.99500
2022-12-30 14:50:00  130.98500  130.99500  130.97501  130.97501

ts.as_pandas()とすることでpandasの形式になっているので、上のように出力されます。

上のコードの各引数は以下のようになります。

  • symbol:シンボル。ここで、USD/JPYなどを指定できる
  • interval: インターバル
  • outputsize: 取得するデータ数
  • timezone: タイムゾーン

参考

コメント

タイトルとURLをコピーしました