MT5Initialize
MetaTrader 5ターミナルとの接続を確立します。
MT5Initialize( |
パラメータ
path=None
[in] metatrader.exeまたはmetatrader64.exeファイルへのパス。パスが指定されていない場合、モジュールは自分自身で実行可能ファイルを見つけようとします。
戻り値
MetaTrader 5ターミナルに接続できた場合は true、それ以外の場合は false
注意事項
MT5Initialize()呼び出しを実行するときには、必要に応じて、MetaTrader 5ターミナルが起動して接続を確立します。
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する |
参照
MT5Shutdown、MT5WaitForTerminal、MT5TerminalInfo、 MT5Version
MT5Shutdown
MetaTrader 5ターミナルへの以前に確立された接続を閉じます。
MT5Shutdown() |
戻り値
なし
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する |
参照
MT5Initialize、MT5WaitForTerminal、MT5TerminalInfo、 MT5Version
MT5TerminalInfo
接続されているMetaTrader 5ターミナルのステータスとパラメータを取得します。
MT5TerminalInfo() |
戻り値
接続状態、取引サーバ名、取引口座番号を返します。
注意事項
値は3つの値のタプルとして返されます。
種類 | 説明 | 値の例 |
integer | 取引サーバへの接続状態: 0 – 接続なし、1 – ターミナルは接続されているが、取引環境はまだ同期されていない、2 – ターミナルが取引サーバーに接続されている | 2 |
string | 取引サーバ名 | ‘MetaQuotes-Demo’ |
string | 取引口座(ログイン)インデックス | ‘15185779’ |
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する |
参照
MT5Initialize、MT5WaitForTerminal、MT5Shutdown、 MT5Version
MT5Version
MetaTrader 5ターミナルバージョンを返します。
MT5Version() |
戻り値
MetaTrader 5のターミナルバージョン、ビルドおよびリリース日を返します。
注意事項
MT5Version()関数は、接続状態、取引サーバアドレス、取引口座番号をタプルとして返します。
注意事項
値は3つの値のタプルとして返されます。
種類 | 説明 | 値の例 |
integer | MetaTrader 5ターミナルバージョン | 500 |
string | ビルド | ‘2007’ |
string | ビルドリリース日 | ’25 Feb 2019′ |
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する |
参照
MT5Initialize、MT5WaitForTerminal、MT5Shutdown、 MT5TerminalInfo
MT5WaitForTerminal
MetaTrader 5ターミナルが取引サーバに接続するのを待ちます。
MT5WaitForTerminal() |
戻り値
MetaTrader 5ターミナルが取引サーバに接続されている場合は true、それ以外の場合は false
注意事項
MT5Version()関数は、接続状態、取引サーバアドレス、取引口座番号をタプルとして返します。
注意事項
待機時間は1分です。接続状態を確認するにはMT5WaitForTerminal()の後にMT5TerminalInfo()が呼び出されるべきです。
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する |
参照
MT5Initialize、MT5TerminalInfo、MT5Version、 MT5Shutdown
MT5CopyRatesFrom
指定された日以降のバーをMetaTrader 5ターミナルから取得します。
MT5CopyRatesFrom( |
パラメータ
symbol
[in] 金融商品名(例: EURUSD)
timeframe
[in] バーがリクエストされている時間枠で、MT5_TIMEFRAME列挙からの値で設定されます
from
[in] リクエストされたサンプルの1番目のバーが開いた日で、「datetime」オブジェクトまたは1970年1月1日からの経過秒数として設定されます。
count
[in] 受信するバーの数
戻り値
バーをタプル(time, open, high, low, close, tick_volume, spread, real_volume)として返します
注意事項
詳細はCopyRates()関数をご覧ください。
「datetime」オブジェクトを作成する際にPythonがローカルな時間帯を使用する一方、MetaTrader 5ではティックとバー開始時間はUTC時間帯(シフトなし)で保存されます。よって。時間を使用する関数を実行するためには「datetime」はUTC時間で作成されるべきです。MetaTrader 5から取得されたデータはUTC時間を持ちますが、Pythonは、出力する際に再度ローカル時間シフトを適用します。よって、取得されたデータは表示する前に修正されるべきです。
MT5_TIMEFRAME は可能なチャート期間値の列挙です。
ID | 説明 |
MT5_TIMEFRAME_M1 | 1分 |
MT5_TIMEFRAME_M2 | 2分 |
MT5_TIMEFRAME_M3 | 3分 |
MT5_TIMEFRAME_M4 | 4分 |
MT5_TIMEFRAME_M5 | 5分 |
MT5_TIMEFRAME_M6 | 6分 |
MT5_TIMEFRAME_M10 | 10分 |
MT5_TIMEFRAME_M12 | 12分 |
MT5_TIMEFRAME_M12 | 15分 |
MT5_TIMEFRAME_M20 | 20分 |
MT5_TIMEFRAME_M30 | 30分 |
MT5_TIMEFRAME_H1 | 1 時間 |
MT5_TIMEFRAME_H2 | 2時間 |
MT5_TIMEFRAME_H3 | 3時間 |
MT5_TIMEFRAME_H4 | 4時間 |
MT5_TIMEFRAME_H6 | 6時間 |
MT5_TIMEFRAME_H8 | 8時間 |
MT5_TIMEFRAME_H12 | 12時間 |
MT5_TIMEFRAME_D1 | 1日 |
MT5_TIMEFRAME_W1 | 1週間 |
MT5_TIMEFRAME_MON1 | 1 ヶ月 |
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する # 時間帯をUTCに設定する # MetaTrader 5ターミナルへの接続をシャットダウンする # 取得したデータからDataFrameを作成する # ローカルPCのUTC時刻からのオフセットを取得する # オフセットを正面から補正する簡単な関数を作成する # rates_frameデータフレームの「time」列にオフセットを適用する # もう一度データを表示し、H4ローソク足の開始時間が4の倍数になっていることを確認する 結果: Display dataframe with data Display dataframe after adjusting the candle open time |
参照
CopyRates、MT5CopyRatesFromPos、MT5CopyRatesRange、 MT5CopyTicksFrom、MT5CopyTicksRange
MT5CopyRatesFromPos
指定されたインデックス以降のバーをMetaTrader 5ターミナルから取得します。
MT5CopyRatesFromPos( |
パラメータ
symbol
[in] 金融商品名(例: EURUSD)
timeframe
[in] バーがリクエストされている時間枠で、MT5_TIMEFRAME列挙からの値で設定されます
start_pos
[in] データがリクエストされているバーの初めのインデックス。バーは現在から過去へ番号付けられるので、現在のバーは「ゼロバー」である
count
[in] 受信するバーの数
戻り値
バーをタプル(time, open, high, low, close, tick_volume, spread, real_volume)として返します
注意事項
詳細はCopyRates()関数をご覧ください。
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する # 今日の10のGBPUSD D1バーを取得する # MetaTrader 5ターミナルへの接続をシャットダウンする # 取得したデータからDataFrameを作成する # ローカルPCのUTC時刻からのオフセットを取得する # オフセットを正面から補正する簡単な関数を作成する # rates_frameデータフレームの「time」列にオフセットを適用する # もう一度データを表示し、D1ローソク足の開始時間が00:00であることを確認する 結果: Display dataframe with data Display dataframe after adjusting the candle open time |
参照
CopyRates、MT5CopyRatesFrom、MT5CopyRatesRange、 MT5CopyTicksFrom、MT5CopyTicksRange
MT5CopyRatesRange
指定された期間のバーをMetaTrader 5ターミナルから取得します。
MT5CopyRatesRange( |
パラメータ
symbol
[in] 金融商品名(例: EURUSD)
timeframe
[in] バーがリクエストされている時間枠で、MT5_TIMEFRAME列挙からの値で設定されます
date_from
[in] バーがリクエストされている最初の日。「datetime」オブジェクトまたは1970年1月1日からの経過秒数として設定されます。開始時間 >= date_fromのバーが返されます。
date_to
[in] バーがリクエストされている最後の日。「datetime」オブジェクトまたは1970年1月1日からの経過秒数として設定されます。開始時間 <= date_toのバーが返されます。
戻り値
バーをタプル(time, open, high, low, close, tick_volume, spread, real_volume)として返します
注意事項
詳細はCopyRates()関数をご覧ください。
「datetime」オブジェクトを作成する際にPythonがローカルな時間帯を使用する一方、MetaTrader 5ではティックとバー開始時間はUTC時間帯(シフトなし)で保存されます。よって。時間を使用する関数を実行するためには「datetime」はUTC時間で作成されるべきです。MetaTrader 5から取得されたデータはUTC時間を持ちますが、Pythonは、出力する際に再度ローカル時間シフトを適用します。よって、取得されたデータは表示する前に修正されるべきです。
例:
from datetime import datetime # MetaTrader 5ターミナルへの接続を確立する # 時間帯をUTCに設定する # MetaTrader 5への接続をシャットダウンする # 取得されたデータからDataFrameを作成する # ローカルPCのUTC時刻からのオフセットを取得する # オフセットを正面から補正する簡単な関数を作成する # もう一度データを表示し、開始時間が変更されたことを確認する Result: Display the first 10 values from the dataframe Display the first 10 values from the dataframe after adjusting the time |
参照
CopyRates、MT5CopyRatesFrom、MT5CopyRatesRange、 MT5CopyTicksFrom、MT5CopyTicksRange
MT5CopyTicksFrom
指定された日以降のティックをMetaTrader 5ターミナルから取得します。
MT5CopyTicksFrom( |
パラメータ
symbol
[in] 金融商品名(例: EURUSD)
from
[in] ティックがリクエストされている最初の日。「datetime」オブジェクトまたは1970年1月1日からの経過秒数として設定されます。
count
[in] 受信するティックの数。
フラグ
[in] リクエストされたティックのタイプを定義するフラグMT5_COPY_TICKS_INFO – 買い気配値および/または売り気配値が変化したティックMT5_COPY_TICKS_TRADE – LastとVolumeが変化したティック MT5_COPY_TICKS_ALL – すべてのティックフラグ値はMT5_COPY_TICKS列挙体で説明されています。
戻り値
ティックをタプル(time, bid, ask, last, flags)として返します。タプル内では、フラグ変数はMT5_TICK_FLAG列挙体のフガルの組み合わせです。
注意事項
詳細はCopyTicks関数をご覧ください。
「datetime」オブジェクトを作成する際にPythonがローカルな時間帯を使用する一方、MetaTrader 5ではティックとバー開始時間はUTC時間帯(シフトなし)で保存されます。よって。時間を使用する関数を実行するためには「datetime」はUTC時間で作成されるべきです。MetaTrader 5から取得されたデータはUTC時間を持ちますが、Pythonは、出力する際に再度ローカル時間シフトを適用します。よって、取得されたデータは表示する前に修正されるべきです。
MT5_COPY_TICKSは、MT5CopyTicksFrom()およびMT5CopyTicksRange()関数を使用してリクエストできるティックの種類を定義します。
ID | 説明 |
MT5_COPY_TICKS_ALL | すべてのティック |
MT5_COPY_TICKS_INFO | 買い気配値および/または売り気配値の変化を含むティック |
MT5_COPY_TICKS_TRADE | Lastおよび/またはVolume価格の変化を含むティック |
MT5_TICK_FLAG はティックの可能なフラグを定義します。これえらのフラグはMT5CopyTicksFrom()およびMT5CopyTicksRange()関数で取得されるティックを描写するために使用されます。
ID | 説明 |
MT5_TICK_FLAG_BID | 売り気配値が変化した |
MT5_TICK_FLAG_ASK | 買い気配値が変化した |
MT5_TICK_FLAG_LAST | Last価格が変化した |
MT5_TICK_FLAG_VOLUME | 出来高が変化した |
MT5_TICK_FLAG_BUY | 最後の買値が変化した |
MT5_TICK_FLAG_SELL | 最後の売値が変化した |
例:
from datetime import datetime # MetaTrader 5ターミナルへの接続を確立する # 時間帯をUTCに設定する # MetaTrader 5への接続をシャットダウンすする # オフセットを正面から補正する簡単な関数を作成する # display the data once again and make sure the tick time has changed Result: Display dataframe with ticks Display dataframe with ticks after adjusting the time |
参照
CopyRates、MT5CopyRatesFromPos、MT5CopyRatesRange、 MT5CopyTicksFrom、MT5CopyTicksRange
MT5CopyTicksRange
指定された期間のティックをMetaTrader 5ターミナルから取得します。
MT5CopyTicksRange( |
パラメータ
symbol
[in] 金融商品名(例: EURUSD)
from
[in] ティックがリクエストされている最初の日。「datetime」オブジェクトまたは1970年1月1日からの経過秒数として設定されます。
to
[in] ティックがリクエストされている最後の日。「datetime」オブジェクトまたは1970年1月1日からの経過秒数として設定されます。
フラグ
[in] リクエストされたティックのタイプを定義するフラグMT5_COPY_TICKS_INFO – 買い気配値および/または売り気配値が変化したティックMT5_COPY_TICKS_TRADE – LastとVolumeが変化したティック MT5_COPY_TICKS_ALL – すべてのティックフラグ値はMT5_COPY_TICKS列挙体で説明されています。
戻り値
ティックをタプル(time, bid, ask, last, flags)として返します。タプル内では、フラグ変数はMT5_TICK_FLAG列挙体のフガルの組み合わせです。
注意事項
詳細はCopyTicks関数をご覧ください。
「datetime」オブジェクトを作成する際にPythonがローカルな時間帯を使用する一方、MetaTrader 5ではティックとバー開始時間はUTC時間帯(シフトなし)で保存されます。よって。時間を使用する関数を実行するためには「datetime」はUTC時間で作成されるべきです。MetaTrader 5から取得されたデータはUTC時間を持ちますが、Pythonは、出力する際に再度ローカル時間シフトを適用します。よって、取得されたデータは表示する前に修正されるべきです。
例:
from datetime import datetime # MetaTrader 5ターミナルとの接続を確立する # 時間帯をUTCに設定する # MetaTrader 5への接続をシャットダウンする # オフセットを正面から補正する簡単な関数を作成する # display the data once again and make sure the tick time has changed Result: Display dataframe with ticks Display dataframe with ticks after adjusting the time |
参照
CopyRates、MT5CopyRatesFromPos、MT5CopyRatesRange、 MT5CopyTicksFrom、MT5CopyTicksRange
Originally posted 2019-07-30 09:48:34.