📖

pythonでMetatrader5からヒストリカルデータをダウンロードする方法

2022/02/28に公開

Metatrader5のダウンロード、設定

  1. このリンクからMetatrader5をダウンロードし、インストールしてください。
  2. デモアカウントが存在するか確認し、存在しない場合デモアカウントを作成します。
    create-demo-account.gif
  3. ツールからオプションを開き、チャートバーに移動します。
  4. チャートバーにある一番下のチャート最大バー数のパラメーターをUnlimitedに変更します。
    change-max-bars-in-chart.gif

Metatrader5パッケージのインストール

コンソールで以下のコマンドを実行し、Metatrader5パッケージをインストールしてください。

pip install Metatrader5

pythonでFXの履歴データをダウンロードする

import MetaTrader5 as mt5
import pandas as pd

# MetaTrader5に接続する
init = mt5.initialize()
assert init

# EURUSDの1時間足で現在のバーから100のバーを取得する
r = mt5.copy_rates_from_pos("EURUSD", mt5.TIMEFRAME_H1, 0, 100)
# 取得したデータからDataFrameを作成する
df = pd.DataFrame(r)
# 秒での時間をdatetime形式に変換する
df['time']=pd.to_datetime(df['time'], unit='s')

# dfの最後の5行を表示する
print(df.tail())
                  time     open     high  ...  tick_volume  spread  real_volume
95 2022-02-28 05:00:00  1.11574  1.11608  ...         4243       0            0
96 2022-02-28 06:00:00  1.11507  1.11528  ...         2865       0            0
97 2022-02-28 07:00:00  1.11456  1.11586  ...         2616       0            0
98 2022-02-28 08:00:00  1.11565  1.11683  ...         4197       0            0
99 2022-02-28 09:00:00  1.11590  1.11762  ...         3957       0            0
# CSVファイルとして保存する。
df.to_csv("EURUSDH1.csv")

image.png

www.mql5.comから引用

Discussion