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

 
MetaQuotes :

오늘 밤 다음 베타 버전을 사용할 수 있습니다.

https://www.mql5.com/en/forum/306742/page16#comment_16148685

MetaTrader 5 Python User Group - the summary
MetaTrader 5 Python User Group - the summary
  • 2020.04.24
  • www.mql5.com
The Main Study MetaTrader module for integration with Python - documentation Python Releases for Windows - website MetaTrader5 : Python Package...
 
Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite
Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite
  • 2020.05.03
  • www.mql5.com
В пятницу 6 марта 2020 года будет выпущена обновленная версия платформы MetaTrader 5...
 
https://www.mql5.com/ru/docs/integration/python_metatrader5
시작 스크립트를 실행하려고 합니다. 모든 작업이 완료되고 예제의 거래 쌍에 대한 데이터가 있는 배열을 인쇄하고 차트를 그리는 창을 시작합니다.
하지만 예를 들어 ""EURAUD"를 "DAX30"으로 바꾸려고 했습니다. 스크립트를 실행한 후 DAX30을 선택하지 못했습니다.
무엇이 문제일 수 있는지 말씀해 주십시오. 터미널 버전 2402

그리고 mt5.initialize를 통해 내 브로커의 데모 계정에 로그인 비밀번호와 서버로 연결합니다.
Документация по MQL5: Интеграция / MetaTrader для Python
Документация по MQL5: Интеграция / MetaTrader для Python
  • www.mql5.com
Python является современным высокоуровневым языком программирования для разработки сценариев и приложений. Содержит множество библиотек для машинного обучения, автоматизации процессов, анализа и визуализации данных. Пакет MetaTrader для Python предназначен для...
 
Lol Kek :
https://www.mql5.com/ru/docs/integration/python_metatrader5
시작 스크립트를 실행하려고 합니다. 모든 작업이 완료되고 예제의 거래 쌍에 대한 데이터가 있는 배열을 인쇄하고 차트를 그리는 창을 시작합니다.
하지만 예를 들어 ""EURAUD"를 "DAX30"으로 바꾸려고 했습니다. 스크립트를 실행한 후 DAX30을 선택하지 못했습니다.
무엇이 문제일 수 있는지 말씀해 주십시오. 터미널 버전 2402

그리고 mt5.initialize를 통해 내 브로커의 데모 계정에 로그인 비밀번호와 서버로 연결합니다.
DAX30과 함께 작동하도록 함수를 호출한 후 mt5.last_error()에서 반환된 내용을 확인합니다.
 

# MarketWatch에서 DAX30 기호의 표시를 활성화하려고 시도합니다.
선택됨=mt5. symbol_select ( "DAX30" , True )
선택 하지 않은 경우 :
    인쇄 ( "initialize() 실패, 오류 코드 = " , mt5.last_error())
    mt5.shutdown()
    그만두다 ()


여기에 오류가 있습니다(-1, '터미널: 호출 실패').
 
Lol Kek :

# MarketWatch에서 DAX30 기호 표시를 활성화해 보겠습니다.
선택 = mt5.symbol_select( "DAX30" , True )
선택 하지 않은 경우 :
    인쇄 ( "initialize() 실패, 오류 코드 = " , mt5.last_error())
    mt5.shutdown()
    그만두다 ()


여기에 오류가 있습니다(-1, '터미널: 호출 실패').

귀하의 거래 계좌에 DAX30 기호가 있는 것이 확실합니까?

거래 계정에 이 기호가 있는 시장 시계의 스크린샷을 보여주세요.

 
Renat Fatkhullin :

귀하의 거래 계좌에 DAX30 기호가 있는 것이 확실합니까?

거래 계정에 이 기호가 있는 시장 시계의 스크린샷을 보여주세요.

***
여기에서 이 코드를 사용합니다. https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyratesrange_py , 초기화는 내 데모 계정 에 연결하여 수행됩니다. 예제의 USDJPY 쌍으로 실행하면 모든 것이 정상이며 기호가 표시됩니다. DAX30으로 교체하는 경우 - 다음


요율의 경우:
TypeError: 'NoneType' 개체는 반복할 수 없습니다.

 
Lol Kek :

https://prnt.sc/sbapam
여기에서 이 코드를 사용하여 데모 계정 에 연결하여 초기화를 수행합니다. 예제의 USDJPY 쌍으로 실행하면 모든 것이 정상이며 기호가 표시됩니다. DAX30으로 교체하는 경우 - 다음

요율의 경우:
TypeError: 'NoneType' 개체는 반복할 수 없습니다.

ㅋㅋㅋㅋ

# MarketWatch에서 DAX30 기호의 표시를 활성화하려고 시도합니다.
선택 = mt5.symbol_select( "DAX30" , True )
선택 하지 않은 경우 :
    인쇄 ( "initialize() 실패, 오류 코드 = " , mt5.last_error())
    mt5.shutdown()
    그만두다 ()


여기에 오류가 있습니다(-1, '터미널: 호출 실패').
대괄호 안에 Dax30이 있습니다. 올바르게 오류가 발생했습니다.
 
Dmitriy Skub :
대괄호 안에 Dax30이 있습니다. 올바르게 오류가 발생했습니다.

와우 그걸 눈치채지 못했네요 감사합니다
그리고 로직을 제3자 PL, 특히 Python으로 전송할 수 있는 기회를 제공한 개발자들에게 감사드립니다.
논리를 파싱하고 구현하는 과정에서 질문이나 제안이있을 수 있습니다. 여기에 피드백을 남기려고 노력할 것입니다.

 

안녕 모두,


나는 당신이 여기 영국 남자를 신경 쓰지 않기를 바랍니다. 성공하지 못한 채 웹 검색에 많은 시간을 보낸 후 몇 가지 지침을 찾고 있습니다.

Maxium 기사에서 영감을 얻은 후 MetaTrader5 Python 라이브러리를 사용하고 있습니다. 메모리 처리에 문제가 있음을 발견했습니다.

mt5 lib를 사용하여 데이터 프레임을 만들면 결과 데이터 프레임이 예상대로 작동합니다. 틱을 수집한 다음 조작된 df를 출력하기 전에 다양한 분석을 수행하는 함수 내에서 이 작업을 수행했습니다.

그러나 DataFrame을 생성하는 함수를 다시 실행하면 메모리가 이전 인스턴스에서 계속 누적되는 것을 알 수 있습니다.

mt5.copy_ticks_range() 및 mt5.copy_rates_range()를 사용하여 동일한 문제가 발생합니다. 메모리를 지우려면 커널을 재설정해야 합니다.

데이터 프레임을 생성하는 줄을 제외한 모든 코드를 제거한 후에도 동일한 문제가 발생합니다. 예를 들어:

def vel(기호, lookback, lookforward, start_date, end_date, quantile_size):

틱 = pd.DataFrame(mt5.copy_ticks_range(symbol, datetime(start_date.year, start_date.month, start_date.day), datetime(end_date.year, end_date.month, end_date.day), mt5.COPY_TICKS_ALL), 열 = [ '시간', '입찰', '요청', '마지막', '볼륨', '시간_msc', '플래그', '볼륨_실제'])

이것을 여러 번 실행하면 메모리 사용량이 매번 27MiB씩 증가합니다.

줄 번호 메모리 사용량 증가 줄 내용 =========================================== ===== 126.3 MiB 126.3 MiB def vel(symbol, lookback, lookforward, start_date, end_date, quantile_size): 153.3 MiB 26.9MiB 틱 = pd.DataFrame(mt5.copy_ticks_range(symbol, datetime(start_date.year, , start_date.day), ...


줄 번호 메모리 사용량 증가 줄 내용

====================================================



          140.9 MiB 140.9 MiB def vel(기호, lookback, lookforward, start_date, end_date, quantile_size): 



          166.5 MiB 25.7 MiB 틱 = pd.DataFrame(mt5.copy_ticks_range(symbol, datetime(start_date.year, start_date.month, start_date.day), ...