MetaTrader 5 Python 사용자 그룹 - Metatrader에서 Python을 사용하는 방법 - 페이지 69

 
Roman :

@알마즈
copy_xxx_xxx 기능을 처음 실행할 때, 터미널이 일정 시간 동안 시작되지 않았을 때,
함수는 히스토리 페이징의 동기화를 기다리지 않고 히스토리를 건너뛰고 기존 결과를 즉시 리턴합니다.
즉, 첫 번째 함수 호출 은 히스토리를 건너뛴 결과를 반환합니다.
기록이 바뀌면 후속 호출에서만 올바른 결과가 반환됩니다.
이 순간을 고칠 수 있습니까? 그리고 copy_xxx_xxx 함수는 처음 호출될 때 히스토리가 교환될 때까지 기다렸습니다.

copy_ticks 또는 copy_rates? 어떤 터미널 빌드?

 
Roman :

@알마즈
copy_xxx_xxx 기능을 처음 실행할 때, 터미널이 일정 시간 동안 시작되지 않았을 때,
함수는 히스토리 페이징의 동기화를 기다리지 않고 히스토리를 건너뛰고 기존 결과를 즉시 리턴합니다.
즉, 첫 번째 함수 호출 은 히스토리를 건너뛴 결과를 반환합니다.
기록이 바뀌면 후속 호출에서만 올바른 결과가 반환됩니다.
이 순간을 고칠 수 있습니까? 그리고 copy_xxx_xxx 함수는 처음 호출될 때 히스토리가 교환될 때까지 기다렸습니다.

데이터 액세스 구성 섹션을 읽으십시오. Python 라이브러리는 이와 관련이 없습니다. 이것은 표준 동작이므로 이러한 상황을 처리하고 터미널이 다운로드한 후 기록을 다시 시도하도록 요청해야 합니다.

이것은 일회성 이벤트이므로 중요하지 않습니다. 항상 스크립트에서 터미널로 작업하면 기록을 항상 최신 상태로 유지할 수 있습니다.

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
 
Almaz :

copy_ticks 또는 copy_rates? 어떤 터미널 빌드?

copy_rates를 사용했지만 copy_ticks에서도 동일한 일이 발생할 것이라고 생각하지만 확인하지 않았습니다.
빌드 2470

 
Rashid Umarov :

데이터 액세스 구성 섹션을 읽으십시오. Python 라이브러리는 이와 관련이 없습니다. 이것은 표준 동작이므로 이러한 상황을 처리하고 터미널이 이를 교체한 후 기록의 재실행을 요청해야 합니다.

이것은 일회성 이벤트이므로 중요하지 않습니다. 항상 스크립트에서 터미널로 작업하면 기록을 항상 최신 상태로 유지할 수 있습니다.

이 섹션을 읽었습니다. Mql5를 참조합니다.
아니면 같은 원칙 때문에 CheckLoadHistory 를 구성해야 한다는 암시입니까?
이 기능을 표준으로 도입하지 않는 이유는 무엇입니까? Mql 및 Py 라이브러리용.

일반적으로 Copy 기능에서 잘못된 데이터를 수신하도록 허용하고 히스토리가 스왑될 때까지 기다리지 않고 결과를 반환하는 것이 이상합니다.
 
Roman :

이 섹션을 읽었습니다. Mql5를 참조합니다.
아니면 같은 원칙 때문에 CheckLoadHistory 를 구성해야 한다는 암시입니까?
이 기능을 표준으로 도입하지 않는 이유는 무엇입니까? Mql 및 Py 라이브러리용.

일반적으로 Copy 기능에서 잘못된 데이터를 수신하도록 허용하고 히스토리가 스왑될 때까지 기다리지 않고 결과를 반환하는 것이 이상합니다.

MQL5에서 일하는 사람들은 섹션에 질문이 있습니다.   데이터 액세스 구성 은 특별한 것이 아닙니다. 우리는 이 부분을 광범위하게 연구했습니다. 그리고 우리는 사용합니다.

왜 파이썬은 달라야 한다고 생각합니까?

마찬가지로 메인 코어는 MQL5이며 이를 알아야 합니다. 그런 다음에만 Python을 적용하십시오.

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
 
Roman :

이 섹션을 읽었습니다. Mql5를 참조합니다.
아니면 같은 원칙 때문에 CheckLoadHistory 를 구성해야 한다는 암시입니까?
이 기능을 표준으로 도입하지 않는 이유는 무엇입니까? Mql 및 Py 라이브러리용.

일반적으로 Copy 기능에서 잘못된 데이터를 수신하도록 허용하고 히스토리가 스왑될 때까지 기다리지 않고 결과를 반환하는 것이 이상합니다.

Python 라이브러리를 사용하면 요청이 수동으로 이루어졌는지, MQL5를 통해 또는 Python에서 스크립트로 이루어졌는지에 관계없이 일반적으로 MetaTrader 5 터미널 에서 데이터를 요청할 수 있습니다.

데이터 작업의 모든 논리와 구성은 MQL5 프로그램 및 Python 스크립트 개발자에게 있습니다.

 

안녕하세요

PowerShell을 통해 터미널에 연결하는 옵션이 있습니까? 방법 아시는 분 계시면 알려주시면 감사하겠습니다

나는 파이썬에 대한 경험이 없으므로 내가 더 잘 아는 것을 사용하고 싶습니다))

 

안녕하세요!

라이브러리를 연결했는데 python과 Mt5 사이에 연결이 있고 계정에 대한 정보를 얻었지만 따옴표는 어떤 식으로든 로드되지 않습니다. 아는 사람 말해줘

파이썬 버전 3.7.6


from datetime import datetime
import MetaTrader5 as mt5

# выведем информацию о версии MetaTrader 5
print(mt5. version ())

# установим подключение к терминалу MetaTrader 5
if not mt5.initialize():
    print("initialize() failed, error code =",mt5.last_error())
    quit()

# подключимся к торговому счету без указания пароля и сервера
account= 17245465
authorized=mt5.login(account)  # пароль будет взят из базы терминала, если указано помнить данные для подключения
if authorized:
    # выведем данные о торговом счете как есть
    print(mt5.account_info())
    # выведем данные о торговом счете в виде списка
    print("Show account_info()._asdict():")
    account_info_dict = mt5.account_info()._asdict()
     for prop in account_info_dict:
        print("  {}={}".format(prop, account_info_dict[prop]))
else :
    print("failed to connect at account #{}, error code: {}".format(account, mt5.last_error()))

# запросим статус и параметры подключения
print(mt5.terminal_info())

# получим информацию о версии MetaTrader 5
print(mt5. version ())

x= mt5.symbols_total()
print('количество всех финансовых инструментов в терминале MetaTrader 5 =', x)

# получим все символы
symbols=mt5.symbols_get()
print('symbols=', symbols)

# получим бары с разных инструментов разными способами
eurusd_rates = mt5.copy_rates_from("EURUSD", mt5.TIMEFRAME_M30, datetime ( 2020 , 1 , 28 , 13 ), 1000 )

# DATA
print('eurusd_rates', eurusd_rates )

# завершим подключение к MetaTrader 5
mt5.shutdown()


결과:

(0, 0, '')
AccountInfo(login=17245465, trade_mode=2, leverage=500, limit_orders=500, margin_so_mode=0, trade_allowed=False, trade_expert=True, margin_mode=2, currency_digits=2, fifo_close=False, balance=0.0, credit=0.0, profit=0.0, equity=0.0, margin=0.0, margin_free=0.0, margin_level=0.0, margin_so_call=50.0, margin_so_so=20.0, margin_initial=0.0, margin_maintenance=0.0, assets=0.0, liabilities=0.0, commission_blocked=0.0, name='xxxxxxxxxxxxx', server='Alpari-MT5', currency='USD', ...)
Show account_info()._asdict():
  login=17045461
  trade_mode=2
  leverage=500
  limit_orders=500
  margin_so_mode=0
  trade_allowed=False
  trade_expert=True
  margin_mode=2
  currency_digits=2
  fifo_close=False
  balance=0.0
  credit=0.0
  profit=0.0
  equity=0.0
  margin=0.0
  margin_free=0.0
  margin_level=0.0
  margin_so_call=50.0
  margin_so_so=20.0
  margin_initial=0.0
  margin_maintenance=0.0
  assets=0.0
  liabilities=0.0
  commission_blocked=0.0
  name=ххххххх
  server=Alpari-MT5
  currency=USD
  company=Alpari International
TerminalInfo(community_account=True, community_connection=True, connected=True, dlls_allowed=False, trade_allowed=False, tradeapi_disabled=False, email_enabled=False, ftp_enabled=False, notifications_enabled=False, mqid=False, build=2489, maxbars=100000000, codepage=1251, ping_last=95766, community_balance=0.0, retransmission=5.305821665438467, company='Alpari International', name='Alpari MT5', language='Russian', path='C:\\Program Files\\Alpari MT5', ...)
(500, 2489, '12 Jun 2020')

количество всех финансовых инструментов в терминале MetaTrader 5= 43
symbols= (SymbolInfo(custom=False, chart_mode=0, select=True, ....
eurusd_rates None

Process finished with exit code 0
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Свойства графиков
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Свойства графиков
  • www.mql5.com
Признак отрисовки ценового графика. Если установлено значение false, то отключается отрисовка любых атрибутов ценового графика и устраняются все отступы по краям графика: шкалы времени и цены, строка быстрой навигации, метки событий Календаря, значки сделок, тултипы индикаторов и баров, подокна индикаторов, гистограммы объёмов и т.д. Значение...
 
rale70 :

안녕하세요!

라이브러리를 연결했는데 python과 Mt5 사이에 연결이 있고 계정에 대한 정보를 얻었지만 따옴표는 어떤 식으로든 로드되지 않습니다. 아는 사람 말해줘

파이썬 버전 3.7.6



결과:

코드를 올바르게 붙여넣으십시오(버튼 사용 암호 )

 
Vladimir Karputov :

코드를 올바르게 붙여넣으십시오(버튼 사용).

올려주셔서 감사합니다 참고하겠습니다.