MetaTrader 5 Python User Group - メタトレーダーでPythonを使用する方法 - ページ 21

 

https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyratesrange_py

例では別の機能を使用しているのがミソです。

# UTCタイムゾーンで2019年4月1日からUSDJPY M5でバーを取得します。
rates=MT5CopyRatesFrom("USDJPY",MT5_TIMEFRAME_M5,utc_from, utc_to)です。

期待値:MT5CopyRatesRange()

Документация по MQL5: Интеграция / MetaTrader для Python / MT5CopyRatesRange
Документация по MQL5: Интеграция / MetaTrader для Python / MT5CopyRatesRange
  • www.mql5.com
# создадим объекты datetime в таймзоне UTC, чтобы не применялось смещение локальной таймзоны                             MT5Rate(time=datetime.datetime(2019, 4, 1, 0, 0),  open=110.994, low=110.994, high=110.966, close=110.966, tick_volume=12, spread=22, real_volume=0...
 

datetimeを特定のタイムゾーンに変換するために、ヘルプではdatetime UTCの使用を勧めています。

しかし、これは何の影響も及ぼさない。タイムゾーンを設定すると、端末の時刻が反映されます(私の場合はGMT+2)。

 
 
Rashid Umarov:
ビルドナンバーは 何ですか?

pip install --upgrade MetaTrader5

Requirement already up-to-date: MetaTrader5 in c:\worksmt_websocket_server.envlibsite-packages (5.0.8)



 
全部を一カ所に 集められるか?
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
  • 2019.11.25
  • www.mql5.com
Мы готовим модуль MetaTrader 5 для Python, аналогичную R...
 
Maxim Dmitrievsky:
全部を一カ所に 集められるか?

どちらでしょうか?議論スレッド全体?

 
Дмитрий Прокопьев:

どちらでしょうか?議論スレッド全体?

ええ、パイソン全体を一カ所に集めるためです。

モデレーターが移動します。

 
Maxim Dmitrievsky:

そう、パイソンに関するすべてを一箇所に集めるためにね。

モデレーターが移動します。

よし、動かせるものなら動かしてみよう。再創造、とはいかないが・・・。
 

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

MetaTrader5 python libとMT5CopyRatesFrom - weirdness or bug?

ドミトリー・プロコピエフ, 2019.11.30 10:59

皆さん、こんにちは。

MT5CopyRatesRangeなどの関数で返されるデータで、このような奇妙な現象に出くわしました。

from datetime import datetime
from MetaTrader5 import *
import pandas as pd
import json

from pytz import timezone
utc_tz = timezone('Etc/UTC')
 
MT5Initialize()
MT5WaitForTerminal()

# rates = MT5CopyRatesRange("EURUSD", MT5_TIMEFRAME_H1, datetime(2018,4,3), datetime(2018,4,4))
rates = MT5CopyRatesFrom("EURUSD", MT5_TIMEFRAME_H1, datetime(2018,4,3,17, tzinfo=utc_tz), 5)

MT5Shutdown()
rates_frame = pd.DataFrame(rates, columns=['time', 'open', 'low', 'high', 'close', 'tick_volume', 'spread', 'real_volume'])
print(rates_frame)
print(rates)

すべてが些細なことですが、私たちが持っているアウトプット。

                 time     open      low     high    close  tick_volume  spread  real_volume
0 2018-04-03 13:00:00  1.23073  1.23154  1.22861  1.22882         5090       1            0
1 2018-04-03 14:00:00  1.22882  1.23057  1.22863  1.23018         6112       1            0
2 2018-04-03 15:00:00  1.23018  1.23149  1.22919  1.22957         6691       1            0
3 2018-04-03 16:00:00  1.22957  1.22989  1.22557  1.22580        11956       1            0
4 2018-04-03 17:00:00  1.22580  1.22746  1.22536  1.22730        10275       1            0
(MT5Rate(time=datetime.datetime(2018, 4, 3, 13, 0), open=1.2307299999999999, low=1.23154, high=1.22861, close=1.22882, tick_volume=5090, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018, 4, 3, 14, 0), open=1.22882, low=1.23057, high=1.2286299999999999, close=1.23018, tick_volume=6112, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018, 4, 3, 15, 0), open=1.23018, low=1.23149, high=1.22919, close=1.22957, tick_volume=6691, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018,4, 3, 16, 0), open=1.22957, low=1.22989, high=1.22557, close=1.2258, tick_volume=11956, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018, 4, 3, 17, 0), open=1.2258, low=1.22746, high=1.22536, close=1.2273, tick_volume=10275, spread=1, real_volume=0))

注目してほしいのは

MT5Rate(time=datetime.datetime(2018,4, 3, 16, 0), open=1.22957,low=1.22989, high=1.22557, close=1.2258, tick_volume=11956, spread=1, real_volume=0)です。

端末へ、このフレームのロー/ハイを参照してください。

安値=1.22557高値=1.22989 であることがわかります。

質問 これはバグなのでしょうか、それともMT5Rateのキーは何らかの方法で設定できるのでしょうか?


MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
  • 2019.11.25
  • www.mql5.com
Мы готовим модуль MetaTrader 5 для Python, аналогичную R...
 
このスレッドに移動しました。