알고리즘 트레이딩에서의 파이썬 - 페이지 7

 

Python용 MetaTrader 5 설정



Python용 MetaTrader 5 설정

비디오 자습서는 Anaconda Prompt에 "pip install MetaTrader5"를 입력하고 Python의 MT5 패키지에서 MT5Initialize() 함수를 실행하여 설치를 확인하는 것과 관련된 Python용 MetaTrader 5 설치 프로세스를 다룹니다.

MetaTrader 5 for Python setup
MetaTrader 5 for Python setup
  • 2019.04.21
  • www.youtube.com
MetaTrader 5 계좌만들기 : https://www.forextime.com/?form=JbbrANACONDA : https://www.youtube.com/watch?v=YGkps5nqpKk- in real, I prefer the Visual Studio Python...
 

Streamlit과 함께 Python 및 MetaTrader 5를 사용하여 웹 애플리케이션 구축




Streamlit과 함께 Python 및 Metatrader 5를 사용하여 웹 애플리케이션 구축

이 비디오는 Python, Streamlit 및 MetaTrader 5를 사용하여 통화 환율을 표시하고 확대/축소 및 기간 옵션을 제공하는 실시간 차트를 만드는 방법을 보여줍니다. 발표자는 Pandas를 사용하여 데이터 프레임을 가져오고 Plotly를 사용하여 데이터를 플로팅하고 이동 평균 및 Relative Strength Index를 계산하는 기능을 추가합니다. 비디오에는 상호 작용을 위한 확대/축소 및 키보드 단축키를 처리하는 스레딩이 포함되어 있습니다. 발표자는 코드의 다양한 기능을 설명하고 차트에 개체를 그리는 기능을 추가하고 앱 설명에서 코드를 공유하는 것으로 비디오를 마무리합니다. 튜토리얼은 초보자에게 실시간 재무 차트 작성에 대한 간단한 소개를 제공합니다.

  • 00:00:00 이 섹션에서는 동영상 제작자가 MetaTrader 5, Python 및 Streamlit을 사용하여 만든 실시간 차트를 보여줍니다. 차트는 통화 환율을 표시하고 확대, 축소 및 기간 간 전환 기능을 제공합니다. Python 코드는 Streamlit 및 MetaTrader 5 라이브러리와 데이터 프레임 가져오기를 위한 Pandas 및 그래프 작성을 위한 Plotly를 사용합니다. 차트에는 사용자를 위해 조정 가능한 매개변수와 함께 이동 평균 및 상대 강도 지수를 계산하는 기능이 포함되어 있습니다. 제작자는 또한 사용자 상호 작용을 위한 확대/축소 및 키보드 단축키를 처리하는 스레딩을 포함합니다. 전반적으로 튜토리얼은 실시간 재무 차트를 작성하기 위해 이러한 라이브러리를 사용하는 방법에 대한 초보자 친화적인 소개를 제공합니다.

  • 00:05:00 Streamlit과 함께 Python 및 MetaTrader 5를 사용하여 웹 애플리케이션을 구축하려면 필요한 데이터를 제공하기 위해 특정 기능을 호출해야 합니다. 기호를 얻으려면 "metatrader" 기능을 사용하여 이름을 추출한 다음 사전 형식으로 반환할 수 있습니다. 세트 패키지 구성 기능을 사용하면 창 크기 및 제목과 같은 웹 애플리케이션의 레이아웃을 사용자 정의할 수 있습니다. 또한 lsi(상대적 강도 지수)를 계산하려면 데이터 프레임 및 rsi 값과 같은 필요한 데이터 및 매개 변수를 함수에 제공해야 합니다. 그런 다음 플롯할 수 있습니다.

  • 00:10:00 이 섹션에서 발표자는 전역 변수를 만들고 LSI 계산을 데이터 프레임에 추가하고 RSI 값이 차트에 표시될 수 있도록 추적을 추가한 방법을 설명합니다. 또한 시간 프레임, 기호, 막대, 이동 평균 및 LSI 값을 사용하여 매초 차트를 업데이트하는 무한 루프 기능을 만든 방법도 보여줍니다. 시간 프레임은 사전에서 가져오고 막대는 mt5.copy_rates_from_pos() 함수를 사용하여 가져옵니다. 차트는 이미지가 아니라 1초마다 지속적으로 업데이트되는 애니메이션입니다.

  • 00:15:00 이 섹션에서 발표자는 나중에 축소할 막대 데이터 프레임을 변환하는 방법과 더 나은 가독성을 위해 시간을 초로 변환하는 방법을 설명합니다. 이 섹션에서는 분산형 차트 사용 및 이동 평균을 계산하여 차트에 그리는 방법도 다룹니다. 프리젠터는 고정된 범위와 용지 색상으로 그림 레이아웃을 업데이트하여 차트를 제자리에 고정하고 데이터를 사용자에게 더 잘 표시합니다.

  • 00:20:00 이 섹션에서 연사는 일간 차트의 공백을 없애기 위해 창 크기와 x축을 어떻게 조정했는지 설명합니다. 또한 간단한 방법을 사용하여 마지막 가격의 수평선을 추가합니다.
    코드 줄. 그런 다음 발표자는 사용자가 빼기 또는 더하기 키를 누를 때 차트를 축소하거나 늘리는 온프레스 키 기능을 시연합니다. 코드에는 애플리케이션을 간단하고 쉽게 탐색할 수 있도록 여러 기능과 자리 표시자가 포함되어 있습니다.

  • 00:25:00 이 섹션에서는 발표자가 Metatrader5와 차트 간의 연결을 초기화하는 코드와 키보드 리스너 스레드를 사용하여 플러스 및 마이너스 키를 사용하여 차트 크기를 조정하는 방법을 설명합니다. 또한 `st.title` 기능의 사용과 `st.connect` 기능을 통해 슬라이더 및 옵션에 대한 두 개의 열을 만드는 방법에 대해 설명합니다. 연사는 'sd.selectbox' 기능을 통해 열 1에 대한 자리 표시자 사용과 이동 평균 선택에 대해 설명합니다. 그들은 또한 시간 프레임뿐만 아니라 주식 기호 또는 쌍을 선택하기 위한 옵션의 가용성을 언급합니다.

  • 00:30:00 이 섹션에서 YouTube 사용자는 Streamlit과 함께 Python 및 MetaTrader 5를 사용하여 웹 애플리케이션을 구축하는 데모를 마칩니다. 그들은 앱이 거래 신호에 대한 정보를 표시하고 차트에 개체를 그리는 기능을 추가했다고 설명했습니다. 그들은 또한 코드의 다양한 기능과 목적을 지적하고 앱 설명에서 코드를 공유하는 것으로 끝납니다. 유튜버는 시청자들에게 감사 인사를 전하며 영상을 마무리했다.
Building a web application using Python and Metatrader 5 with Streamlit
Building a web application using Python and Metatrader 5 with Streamlit
  • 2022.07.23
  • www.youtube.com
This is web application made with streamlit and metatrader 5 .************The code is here : https://github.com/azario0/metatrader5-streamlit************My l...
 

PYTHON 합성 지수 거래 봇!! - MetaTrader 5에서 캔들 데이터 수신



PYTHON 합성 지수 거래 봇!! - MetaTrader 5에서 캔들 데이터 수신

비디오 자습서는 MetaTrader 5(MT5)에서 캔들 데이터를 수신하는 Python 거래 봇을 만드는 방법을 설명합니다. 발표자는 MT5 구성, 봇용 클래스 생성, 변수 초기화, 스레드 생성, 간단한 이익실현 및 손절 매개변수로 거래 전략 정의를 포함하여 프로세스를 단계별로 다룹니다. 또한 발표자는 오류 처리 및 코드 디버깅에 대한 지침을 제공하고 프로세스의 단순성을 강조하고 해당 주제에 대한 향후 과정을 언급하며 비디오를 마무리합니다. 이 튜토리얼은 통찰력이 있고 초보자에게 친숙하므로 Python 거래 봇을 만드는 데 관심이 있는 모든 사람에게 유용한 리소스입니다.

  • 00:00:00 비디오의 이 섹션에서 발표자는 프로세스와 관련된 단계를 설명하여 Python으로 지수 거래 봇을 만드는 방법을 보여줍니다. 첫 번째 단계는 알고리즘 거래를 활성화하고 로컬 호스트에 대한 웹 요청을 허용하여 MetaTrader 5 플랫폼을 구성하는 것입니다. 그런 다음 발표자는 Visual Studio Code를 열고 로트 가장자리, 기간 및 시장에 대한 매개 변수를 수신하는 생성자로 봇용 클래스를 만들어 코딩을 시작합니다. 봇은 사전을 통해 정보를 공유하는 스레드와 함께 작동하므로 프리젠터는 공유 데이터를 저장하기 위해 스레드 목록과 사전을 초기화합니다. 마지막으로 스레드를 중지하는 이벤트가 생성됩니다. 발표자는 GitHub 리포지토리에서 추가 정보와 설명을 제공합니다.

  • 00:05:00 이 섹션에서 프레젠터는 트레이딩 봇이 스레드 간에 데이터를 공유할 수 있도록 클래스 변수, 상수, 대기열, 사전 및 스레드와 같은 모든 필수 항목을 초기화합니다. 프레젠터는 또한 봇이 스레드를 시작하고 종료하는 메서드를 선언합니다. kill thread 함수는 peel 변수의 값을 'kill'로 설정한 후 join 함수를 호출하여 스레드를 안전하게 정지시킵니다. 마지막으로 발표자는 사용자가 Enter 키를 눌러 봇을 중지할 수 있는 대기 기능을 만듭니다.

  • 00:10:00 비디오의 이 섹션에서 발표자는 소켓을 사용하여 MetaTrader 5에서 캔들 데이터를 수신하는 Python 프로그램을 만들 것이라고 설명합니다. 그들은 candles.py라는 파일을 만들고 소켓과 json과 같은 필요한 라이브러리를 가져와 소켓을 통해 데이터를 주고받는 것으로 시작합니다. 또한 소켓 연결에 사용할 주소와 포트를 정의합니다. 그런 다음 스피커는 서버 및 클라이언트 소켓을 사용하여 소켓 연결을 초기화하는 함수를 생성합니다. 소켓을 지정된 주소 및 포트에 바인딩하고 들어오는 연결을 수신하는 방법을 보여줍니다. 그런 다음 함수는 연결을 수락하고 클라이언트 주소를 출력합니다.

  • 00:15:00 이 섹션에서는 유튜버가 "thread_candles" 함수를 호출하여 촛불 정보를 가져오는 함수를 만드는 방법을 설명합니다. MetaTrader5에서 정보를 받기 위해 "message"라는 변수를 생성하는 것으로 시작합니다. 그런 다음 소켓이 시작되고 사용자가 Enter 키를 누를 때까지 작동하는 기본 루프가 생성되며, 이 시점에서 알약을 죽일 설정이 설정됩니다. 루프는 연결에서 소켓의 메시지를 가져와 디코딩하는 것으로 시작됩니다. 코드는 메시지를 인쇄할 수 있는지 확인하고 인쇄할 수 있으면 인쇄합니다. 메인 파일을 생성하는 방법을 보여준 후 YouTuber는 MT5 내부에서 클라이언트를 생성하는 방법을 설명하지만 MT5 자습서가 아니기 때문에 깊이 들어가지 않을 것이라고 강조합니다.

  • 00:20:00 이 섹션에서는 발표자가 GitHub에서 코드를 복사하고 이를 사용하여 MT5에서 캔들 데이터를 수신하는 Python 거래 봇을 만드는 방법에 대한 단계별 가이드를 제공합니다. 발표자는 코드가 토큰을 사용하여 모든 틱에 대한 정보를 전송하고 각 양초의 시가 및 종가에 대한 JSON 형식을 포함하는 문자열을 생성한다고 설명합니다. 문자열을 사전으로 변환하기 위해 발표자는 json load 함수를 사용할 것을 제안합니다. 발표자는 또한 봇과 클라이언트를 시작하고 중지하는 방법과 Expert Advisor 메뉴에서 봇을 삭제하는 방법을 시연합니다.

  • 00:25:00 이 섹션에서 비디오 자습서는 MT5에서 받은 데이터로 사전을 업데이트하고 주문 스레드를 만드는 과정을 안내합니다. 업데이트된 사전은 데이터를 올바른 형식으로 변환하는 self.data 함수를 사용하여 전송됩니다. 튜토리얼에는 작업 사이의 캔들 수 및 손절매 매개변수와 같은 봇에 대한 매크로 정의가 포함됩니다. 주문 스레드 기능은 정지 이벤트 및 거래 데이터를 수신하고 간단한 이익실현 및 손절매로 기본 거래 전략을 생성합니다. 이 자습서에는 연결 및 서버 소켓을 닫은 다음 샘플 코드로 봇을 테스트하는 내용도 포함되어 있습니다.

  • 00:30:00 이 섹션에서 YouTuber는 MT5에서 캔들 데이터를 수신하고 특정 기준에 따라 작업을 여는 데 사용하는 데 필요한 단계에 대해 설명합니다. 첫 번째 단계는 마지막 작업 시간이라는 변수를 선언하고 초기 값을 0으로 설정하는 것입니다. 이 값은 나중에 작업이 열린 시점을 추적하는 데 사용됩니다. 그런 다음 나중에 현재 시간을 초로 변환하는 데 사용할 datetime 함수를 사용하여 시대를 선언합니다. 다음으로 오류를 방지하기 위해 촛불 스레드가 시작되기를 기다립니다. 작업이 완료되면 작업을 여는 조건이 충족되는지 확인하는 루프로 들어갑니다. 이전 캔들이 호황(종가 > 시가)이고 현재 시간이 마지막 작동 시간에 거래 데이터 기간을 더한 것보다 크면 작동이 시작됩니다. 마지막 동작 시간이 업데이트되고 열린 위치 기능이 호출됩니다. 마지막으로 거래 데이터(시장 및 로트 크기 포함)가 정의되고 오픈 포지션 함수에 대한 인수로 전달됩니다.

  • 00:35:00 이 섹션에서는 제작자가 MT5를 사용하여 셀 작업을 보내는 방법을 설명하고 오픈 포지션 기능을 실행하는 방법에 대한 자습서를 제공합니다. 사용자는 문자열로 시장을 입력하고 float 및 유형 작업으로 lotex를 입력해야 합니다. 이 기능은 현재 가격에서 손절매 값을 뺀 값과 현재 가격에 이익실현 값을 더하여 정의되는 손절매 및 이익실현 변수를 정의하는 데 도움이 됩니다. 작성자는 셀 캔들과 거래 데이터를 사용하여 코드를 테스트하고 디버깅할 것을 권장합니다. 마지막으로 작성자는 기능이 실행되고 주문이 거래되는 경우의 예를 제공합니다.

  • 00:40:00 이 섹션에서 자습서는 디버깅 오류에 중점을 둡니다. 표시된 오류 메시지에서 시작하여 해결책을 찾기 위한 인터넷 검색까지 단계별 디버깅 프로세스가 표시됩니다. 여기서 특정 오류는 사용 중인 브로커에 따라 달라지는 유효하지 않은 주문 작성 유형입니다. 해결책은 나열된 세 가지 주문 작성 유형을 모두 시도하고 어떤 것이 브로커에 적합한지 확인하는 것입니다. 오류가 수정되면 자습서는 성공적으로 위치를 여는 단계로 이동합니다.

  • 00:45:00 이 섹션에서 연사는 Python 합성 지수 거래 봇에 대한 간략한 개요를 제공하고 얼마나 쉽게 만들 수 있는지 강조하면서 비디오를 마무리합니다. 그는 또한 유사한 과정에 비해 매우 포괄적이고 합리적인 가격으로 이 주제에 대한 과정을 만들 것이라고 언급했습니다. 그는 시청자가 자신의 채널을 좋아하고, 공유하고, 구독하고 질문이 있으면 그에게 연락할 것을 권장합니다.
PYTHON SYNTHETIC INDEX TRADING BOT!! - RECEIVING CANDLE DATA FROM MT5
PYTHON SYNTHETIC INDEX TRADING BOT!! - RECEIVING CANDLE DATA FROM MT5
  • 2022.06.29
  • www.youtube.com
YOU MUST INSTALL THE MT5 LIBRARY FOR PYTHON:pip install MetaTrader5In this video I'm going to teach you how to create a PYTHON TRADING BOT that uses MT5 and ...
 

MetaTrader 5에서 Python으로 주가 데이터를 가져오는 방법은 무엇입니까?



MetaTrader 5에서 Python으로 주가 데이터를 가져오는 방법은 무엇입니까?

이 YouTube 동영상에서는 MetaTrader 5에서 Python으로 주가 데이터를 가져오는 다양한 방법을 설명합니다. 방법에는 필요한 라이브러리 가져오기, 원하는 시간 프레임 및 시간대 설정, "데이터 가져오기"라는 기능 정의, 결과 데이터 프레임 조작, tqtndm 패키지 사용, 요율 프레임 생성, 두 개의 데이터 프레임을 활용하여 가격 검색 및 날짜/시간 정보. 화자는 루프를 함수에 넣어 코드를 더 깔끔하게 만들 것을 제안하며, 이러한 방법을 사용하면 사용자가 많은 기호에 대한 데이터를 큰 어려움 없이 쉽게 가져올 수 있습니다.

  • 00:00:00 이 섹션에서는 발표자가 MetaTrader5에서 Python으로 주가 데이터를 가져오는 방법을 설명합니다. 첫 번째 단계는 pandas, pytz, datetime, tqdm 및 MetaTrader5를 포함하여 필요한 모든 라이브러리를 가져오는 것입니다. 그런 다음 화자는 MetaTrader5를 초기화하고 원하는 시간대와 시간대를 설정합니다. 화자는 기호, 필요한 양초 수 및 시간 프레임이 필요한 "데이터 가져오기"라는 기능을 정의합니다. 함수는 원하는 데이터를 반환하고 화자는 함수에서 각 입력 및 출력이 수행하는 작업을 설명합니다.

  • 00:05:00 이 섹션에서는 발표자가 MetaTrader5에서 Python으로 주가 데이터를 가져오는 데 사용되는 기능을 설명합니다. 이 함수는 기호, 시간 프레임 및 날짜를 취하고 요청된 데이터가 포함된 데이터 프레임을 반환합니다. 화자는 시간 열을 낮으로 변환하고 불필요한 열을 삭제하는 등 결과 데이터 프레임을 조작하는 단계를 거칩니다. 또한 여러 자산에 대한 데이터를 더 쉽게 호출할 수 있도록 for 루프를 사용하는 것이 좋습니다.

  • 00:10:00 이 섹션에서 발표자는 tqtndm 패키지를 사용하여 MetaTrader5에서 Python으로 주가 데이터를 가져오는 방법을 설명합니다. 그들은 try 함수와 accept 함수를 사용하여 기호와 400으로 설정된 일 수를 받는 이전에 정의된 비율 함수를 호출합니다. 반환된 데이터는 사전에 추가되고 사용할 수 없는 데이터는 삭제됩니다. 화자는 루프를 함수에 넣어 코드를 더 깔끔하게 만들 것을 제안합니다. 전반적으로 이 프로세스에는 요금 프레임 생성, 데이터를 사전에 추가한 다음 스크립트 실행이 포함됩니다.

  • 00:15:00 이 섹션에서 발표자는 두 개의 데이터 프레임을 사용하여 사용자가 주가 및 날짜/시간 정보를 검색하여 metatrader5에서 Python으로 주가 데이터를 쉽게 가져올 수 있다고 설명합니다. 이 방법은 많은 기호에 대해 별 어려움 없이 사용할 수 있습니다.
How to import stock price data from metatrader5 into python?
How to import stock price data from metatrader5 into python?
  • 2022.04.10
  • www.youtube.com
Using MetaTrader5 module in python to import data from metatrader to python and turn it into a dataframe to use in your strategy backtesting .
 

MetaTrader 5에서 Python으로 온라인 거래 + MQL5에서 데이터 가져오기



MetaTrader 5에서 Python으로 온라인 거래 + MQL5에서 데이터 가져오기

튜토리얼은 MetaTrader에서 데이터 세트를 다운로드하고 Python을 사용하여 온라인 거래를 수행하는 방법을 보여줍니다. 강사는 MetaTrader5, pandas 및 datetime 라이브러리를 가져오고, 데이터 세트의 자산 및 기간을 지정하고, 마지막 100개 데이터 포인트를 다운로드합니다. 손절매, 이익 실현 및 지정된 기간 동안 GTC 명령을 사용하여 MetaTrader5에서 포지션을 관리하는 방법을 설명합니다. 이 섹션에서는 포지션을 관리하는 데 필요한 다양한 명령에 대한 기본적인 이해를 제공하지만 사용 중인 전반적인 거래 전략이 무엇인지는 명확하지 않습니다.

  • 00:00:00 튜토리얼의 이 섹션에서 강사는 MetaTrader 5에서 데이터 세트를 다운로드하고 Python을 사용하여 간단한 온라인 거래를 수행하는 방법을 시연합니다. MetaTrader5 라이브러리를 가져오고 소프트웨어 바로 가기 경로는 Python으로 지정됩니다. pandas 및 datetime 라이브러리도 가져오고 현재 시간은 데이터 세트의 마지막 데이터 시간을 지정하는 데 사용됩니다. 원하는 자산의 기호 키를 작성하고 데이터 세트에 대한 기간(이 경우 일일 기간)을 선택합니다. 마지막 100개의 데이터 포인트가 다운로드되고 형식 명령을 사용하여 데이터를 사용자의 개인 시스템에 저장합니다. 온라인 거래는 거래의 자산과 거래량을 결정하고 가격 단위를 핍으로 정의하고 입력한 포지션에 따라 매도호가 또는 매수호가를 사용하여 수행됩니다.

  • 00:05:00 이 섹션에서는 MetaTrader 5에서 Python 명령을 사용하여 포지션에 대해 손절매를 설정하고 이익을 취하는 방법을 설명합니다. 또한 포지션 티켓 번호를 지정하여 포지션을 청산하는 방법도 보여줍니다. GTC 명령은 지정된 기간 동안 트랜잭션을 활성 상태로 유지하기 위해 설명됩니다. 비디오는 또한 손절매 및 이익실현이 활성화된 USDJPY 거래의 예를 보여줍니다. 전반적으로 이 섹션에서는 Python을 통해 MetaTrader 5에서 포지션을 관리하는 데 필요한 다양한 명령에 대한 기본적인 이해를 제공합니다.

  • 00:10:00 이 섹션에서는 롱 포지션이 성공적으로 청산되었음을 알 수 있습니다. 불행하게도 추가 컨텍스트가 없으면 롱 포지션이 무엇을 의미하는지 또는 사용 중인 전반적인 거래 전략이 무엇인지 명확하지 않습니다.
online trading by python in MetaTrader5 + get data from mql5
online trading by python in MetaTrader5 + get data from mql5
  • 2022.04.19
  • www.youtube.com
https://github.com/Hesamtps/online-trading-by-python-in-MetaTrader5-get-data-from-mql5
 

Python MetaTrader 5 복사 거래



Python MetaTrader 5 복사 거래

이 응용 프로그램은 메타트레이더 5에서 웹 대시보드로 제어되는 다른 메타트레이더 5로 거래를 복사할 수 있습니다. 이 대시보드는 복사기 신호 각각에서 누가 거래를 복사하고, 쌍/티커를 설정하고, 볼륨을 설정하고, 손절매를 하고, 이익을 얻을 수 있는지 제어할 수 있습니다.
복사 허용 시간은 5초이며, 5초 이상 신호가 복사되지 않으면 Windows cmd가 가끔 멈추는 경우가 있으므로 Windows에서 다른 터미널 응용 프로그램을 사용하는 것이 좋습니다.

Q&A
-----------------------------------
Q : MT4를 사용하여 실행할 수 있습니다.
A : 아니오, MT4는 파이썬을 지원하지 않습니다.

Q : 리눅스에서 실행할 수 있습니까?
A : 아니요, 실제로 mt5는 Windows용으로 설계되었습니다. Mac 또는 Linux에서 실행하는 경우 Windows 에뮬레이터와 같은 것을 사용해서만 실행됩니다.

Q : 신호가 복사된다는 보장이 있습니까?
A : 복사할 신호의 성공 또는 실패는 다양한 요인에 따라 달라집니다. 가장 자주 vps 상태는 마스터 또는 클라이언트로부터의 연결을 처리할 수 있으며 불안정한 클라이언트 연결, 스크립트 지연, 터미널, 정지 등을 처리할 수 있습니다.

Python 스크립트를 실행할 때 명령 프롬프트가 멈추는 것과 같은 문제가 있는 경우 https://stackoverflow.com/questions/591047/command-line-windows-hanging-in-rdp-windows 로 이동하십시오.

스크립트
------------
가상 환경 생성 :
파이썬 -m venv .venv

가상 환경 활성화:
.venv/스크립트/활성화

설치 요구사항 라이브러리:
pip 설치 -r requirements.txt

실행 중인 마스터 스크립트:
파이썬 마스터.py

슬레이브 스크립트 실행 :
파이썬 trade.py

Python MT5 Copy Trade
Python MT5 Copy Trade
  • 2022.06.15
  • www.youtube.com
This application can copy trade from MT5 to another MT5 controlled by web dashboard that also can control who can copy your trade, set pair/ticker, set volum...
 

Python 및 MetaTrader 백 테스트 시스템 | 거래 ML 전략 개발 및 테스트



Python 및 Metatrader 백 테스팅 시스템 | 거래 ML 전략 개발 및 테스트

이 비디오는 여러 거래 전략을 평가하고 외환 거래를 위한 기계 학습을 사용하기 위한 안정적인 백테스팅 플랫폼 개발에 대해 설명합니다. 발표자는 입력 데이터를 추출하기 위해 중개인과 상호작용하는 MetaTrader 5를 사용하여 새로운 백테스팅 플랫폼을 만드는 방법을 시연합니다. 또한 전문 고문을 코딩하여 데이터를 추출하고 Python 전략을 사용하여 처리한 다음 미리 결정된 매개 변수를 기반으로 거래를 시작하는 방법을 설명합니다. 이 비디오는 또한 레이블 데이터를 생성하고 기계 학습 알고리즘을 구축하고 교육하기 위한 기능을 추출하는 방법을 보여줍니다. 마지막으로 스피커는 가장 정확한 것으로 확인된 랜덤 포레스트와 함께 백테스팅에 사용되는 여러 알고리즘에 대해 논의합니다. 전반적으로 백테스팅 시스템은 96%의 성능으로 신뢰할 수 있고 효율적인 결과를 제공했으며 향후 작업에는 기계 학습 알고리즘을 라이브 거래 환경에 통합하는 것이 포함됩니다.

  • 00:00:00 이 섹션에서 연사는 외환 거래의 개념과 그것이 기관, 정부, 다국적 기업 및 개인 투자자들에게 인기를 얻게 된 이유를 소개합니다. 시장은 월요일부터 금요일까지 24시간 열려 누구나 쉽게 접근할 수 있습니다. 인기의 이유 중 하나는 엄청난 수익 잠재력입니다. 다만 외환의 방향성에 대한 정확한 예측이 중요합니다. 이를 위해 발표자의 목표는 안정적인 백테스팅 플랫폼을 만들어 여러 거래 전략을 평가하고, 어떤 통화 쌍과 기간이 가장 잘 수행되었는지 결정하고, 머신 러닝을 사용하여 예측을 개선하는 것이었습니다. 발표자는 예측을 위해 지원 벡터 머신과 인공 신경망을 사용한 이전 연구에 대해서도 언급합니다.

  • 00:05:00 이 섹션에서는 연사가 기계 학습 알고리즘 개발의 첫 번째 단계인 알고리즘 교육 및 테스트를 위한 백 테스트 플랫폼 개발 접근 방식에 대해 설명합니다. MK 백테스팅과 같은 사용 가능한 백테스팅 플랫폼을 검토하지만 궁극적으로 기존 Python 전략과 원활하게 통합되고 데이터 일관성 및 무결성 기준을 충족하는 새로운 플랫폼을 만들기로 결정합니다. 새로운 플랫폼은 백테스팅 플랫폼을 위한 입력 데이터를 추출하기 위해 브로커와 인터페이스하는 업계 표준 MetaTrader 5 플랫폼에 의존합니다. 백테스팅 플랫폼은 데이터를 평가하고 거래 전략 클래스와 같은 거래 전략에 의해 생성된 신호를 기반으로 출력 파일을 생성하기 위해 손절매 및 이익실현과 같은 일련의 매개변수를 사용합니다. 전반적으로 접근 방식에는 레벨 데이터 준비, 백 테스트 플랫폼 개발 및 준비된 데이터를 기반으로 기계 학습 알고리즘 구축이 포함됩니다.

  • 00:10:00 이 섹션에서 발표자는 새로운 양초가 생성될 때마다 실시간 거래를 기반으로 MetaTrader 5의 데이터를 확장하기 위해 전문 고문이 어떻게 코딩되는지 설명합니다. 전문 고문은 MetaTrader 5에서 데이터를 추출하여 외부 스프레드시트 파일에 기록합니다. 그런 다음 Python 엔진에서 이를 읽어 거래 신호를 얻기 위해 다양한 전략을 사용하여 처리합니다. 그런 다음 신호는 전문가 고문이 읽는 작업 파일에 기록된 다음 MetaTrader 5 환경으로 거래를 시작합니다. 거래 환경은 결정된 테이크 프로핏 및 손절매 마진을 기반으로 거래를 실행하여 라이브 거래를 할 수 있으며 전문 고문은 다양한 매개 변수를 기반으로 거래를 수정하고 청산합니다.

  • 00:15:00 이 섹션에서 발표자는 MetaTrader 플랫폼에서 백테스팅 및 보고서 생성 프로세스를 설명합니다. 백테스팅 속도를 조정하고 예측에 필요한 전략을 가져오는 방법을 보여줍니다. 그런 다음 출력 파일 생성 및 저장과 같은 하우스키핑 작업을 처리하는 액션 작성자를 포함하여 프로그램의 다양한 기능에 대해 논의합니다. 마지막으로 백테스팅에서 생성된 보고서를 시연합니다. 여기에는 통화 쌍, 시간 프레임 및 기간에 대한 세부 정보와 함께 수행된 모든 거래 요약이 포함됩니다.

  • 00:20:00 이 섹션에서는 거래용 ML 알고리즘을 구축하고 교육하기 위해 레이블 데이터 및 기능 추출을 생성하도록 설계된 백테스팅 플랫폼의 사용에 대해 설명합니다. 이 플랫폼은 추출된 데이터의 전체 기간을 취하고 거래에 필요한 신호와 지표를 생성한 다음 거래를 시작하고 추적하여 실제 결과를 얻음으로써 프로세스를 단순화합니다. 비디오는 이 플랫폼을 사용하여 거래의 실제 결과를 나타내는 레이블 데이터를 생성하는 방법과 RSI, TSI 및 Stochastic과 같은 데이터에서 추출된 다양한 기능을 보여줍니다. 보다 균형 잡힌 데이터를 생성함으로써 이 플랫폼은 거래를 위한 보다 안정적인 기계 학습 알고리즘을 생성할 수 있습니다.

  • 00:25:00 이 섹션에서는 연사가 지원 벡터 머신, 로지스틱 회귀, xgboost, MLP 및 랜덤 포레스트를 포함하여 백테스팅에 사용되는 다양한 기계 학습 알고리즘에 대해 설명합니다. 각 알고리즘의 정확도는 기록 및 분석되며 화자는 랜덤 포레스트를 96%의 정확도로 가장 정확한 것으로 식별합니다. 또한 나중에 사용할 수 있도록 스프레드시트 파일을 만들기 위해 데이터에 레이블을 지정하고 추적합니다. 전반적으로 이러한 알고리즘을 사용한 백테스팅 프로세스는 빠르고 효율적입니다.

  • 00:30:00 이 섹션에서는 연사가 백테스팅 시스템의 결과와 기술 지표 및 머신 러닝 알고리즘을 사용한 거래 ML 전략 개발을 요약합니다. 안정적인 백테스팅 플랫폼은 안정적이고 효율적인 결과를 제공했으며 벤치마크 전략인 SMAEMA와 비교하여 25%의 성과를 보였습니다. 백테스팅 플랫폼은 수동 개입 없이 자동 거래가 가능했습니다. 향후 작업에는 self-attention RNN 및 LSTM과 같은 보다 정교한 알고리즘과 여러 전략을 사용하여 예측 정확도를 개선하고 수익을 극대화하기 위해 라이브 백테스팅 및 거래 환경에 기계 학습 알고리즘을 통합하는 것이 포함됩니다.
Python & Metatrader Back Testing Systems | Developing & Test Trading ML Strategies
Python & Metatrader Back Testing Systems | Developing & Test Trading ML Strategies
  • 2021.06.24
  • www.youtube.com
Dr. Khushi supervised this master project in which they developed Python and MetaTrader based backtesting system, trading strategies and wrapped around machi...
 

Python으로 알고리즘 거래 전략을 만드는 방법 - 단계별 프로세스



Python으로 알고리즘 거래 전략을 만드는 방법 - 단계별 프로세스

이 비디오는 Python을 사용하여 알고리즘 거래 전략을 만드는 방법에 대한 단계별 가이드를 제공합니다. 첫 번째 단계는 시스템의 규칙을 정의하고, 거래에서 감정을 제거하고, 수익성을 최적화하기 위해 백테스팅을 수행하는 것입니다. 그런 다음 발표자는 이동 평균 교차와 같은 기술 지표와 가설을 사용하여 거래 전략을 만드는 방법을 시연합니다. 그런 다음 전략을 코딩하고 최적화를 보장하기 위해 반복적으로 백테스팅을 수행합니다. 두 번째 섹션은 알고리즘 프레임워크를 코딩하고 단순 이동 평균 비교를 기반으로 매수 또는 매도 여부를 결정하는 신호 함수를 생성하는 데 중점을 둡니다. 세 번째 섹션에서는 기능을 사용하여 실시간 시장 데이터를 처리하는 방법에 대해 설명하고 네 번째 섹션에서는 WPS에서 전략을 배포하는 방법에 대해 설명합니다. 발표자는 초보자에게 거래 전략을 간단하고 명확하게 유지하도록 조언하면서 결론을 내립니다.

  • 00:00:00 비디오의 이 섹션에서 발표자는 파이썬으로 알고리즘 거래 전략을 만드는 과정을 설명합니다. 첫째, 그들은 명시적으로 정의된 규칙과 예외가 없는 시스템으로 알고리즘 거래를 정의합니다. 이것의 장점은 정량화 가능한 데이터를 기반으로 거래 전략을 코딩할 수 있고 방정식에서 감정이 제거된다는 것입니다. 그들은 또한 시스템의 수익성을 최적화하고 테스트하기 위해 백테스팅을 쉽게 수행할 수 있다고 언급합니다. 다음으로 발표자는 가설과 기술 지표, 특히 이동 평균 교차를 사용하여 거래 전략을 만드는 방법을 보여줍니다. 수집된 정보로 일련의 규칙이 생성된 다음 전략이 백테스팅을 거칩니다. 전략이 최적이라고 판단될 때까지 이 프로세스를 반복할 수 있습니다.

  • 00:05:00 이 섹션에서 연사는 Python으로 알고리즘 거래 전략을 만드는 단계별 프로세스에 대해 설명합니다. 백테스팅을 통해 트레이더가 자신의 손익이 어떻게 발전하고 있는지 이해할 수 있으며, 성공하면 트레이더는 데모 계정에서 라이브 트레이딩 봇을 사용하여 포워드 테스트로 이동할 수 있습니다. 화자는 또한 Python이 배우기 쉬운 언어이고 pandas 및 plotly와 같은 백테스팅 및 알고리즘 거래를 위한 라이브러리가 많기 때문에 거래에 Python을 사용할 것을 권장합니다. 마지막으로 연사는 빠른 이동 평균 10과 느린 이동 평균 100을 사용하여 독일 주식 지수에 대한 간단한 이동 평균 교차 전략을 만드는 과정을 안내합니다. 그들은 알고리즘 프레임워크 코딩의 중요성을 강조합니다. GitHub 페이지에서 찾을 수 있습니다.

  • 00:10:00 이 섹션에서 발표자는 Python을 사용하여 이전에 논의한 이동 평균 교차 전략을 사용하여 알고리즘 거래 전략을 만드는 방법을 보여줍니다. 백테스트된 파일과 실시간 거래 봇 파일의 두 가지 파일을 제공합니다. 백테스트된 파일에는 2032년 전략이 어떻게 수행되었는지에 대한 데이터 분석이 포함되어 있습니다. 라이브 거래 봇 파일은 로그인 자격 증명이 있는 파일을 생성해야 하며 사용자가 이동 평균 교차를 사용하여 거래할 수 있도록 합니다. 그런 다음 발표자는 Python 통합 개발 환경을 보여주고 pandas, blockly 및 datetime과 같은 라이브러리를 사용하여 과거 데이터를 검색하고 단순 이동 평균을 계산하며 거래 논리를 적용하는 코드를 설명합니다. 마지막으로 발표자는 단순 이동 평균의 비교를 기반으로 매수 또는 매도 여부를 결정하는 신호 함수를 생성합니다.

  • 00:15:00 이 섹션에서 발표자는 특정 증권을 매수 또는 매도할 시기를 나타내는 신호 열을 계산하는 과정을 설명합니다. 신호 열은 데이터 프레임 막대에 "신호 가져오기" 기능을 적용하여 파생되며, 그런 다음 구매 또는 판매 조건이 충족되는지 한 행씩 확인합니다. 또한 이전 가격 변화 및 신호 변화 열도 계산되어 거래량 및 브로커에게 지불된 수수료를 고려하여 가상 수익을 결정합니다. 그런 다음 연사는 6개월 동안의 총 수익과 순이익을 사용하여 플롯을 보여주며, 이 전략이 약간의 손실 기간을 포함하여 €2,380의 순이익을 창출했음을 보여줍니다. 마지막으로 발표자는 시청자가 더 긴 기록을 위해 직접 테스트하려는 경우 백테스팅 전략의 샘플 코드를 공유한다고 언급합니다.

  • 00:20:00 이 섹션에서 발표자는 Python에서 거래 전략을 생성하는 기능을 사용하여 실시간 시장 데이터를 처리하는 방법을 설명합니다. 그들은 전략의 기본 매개변수와 함께 MetaTrader5, 팬더, 시간, 날짜 및 계정 원칙을 가져올 것을 제안합니다. 발표자는 포지션을 청산하고 런던과 뉴욕 세션의 거래 시간을 확인하는 거래 기능을 만들었습니다. 그들은 또한 루프에서 거래 신호를 사용하여 시장 주문을 보내는 기능을 만들었고 빠른 SMA가 느린 SMA보다 높으면 매도 포지션을 닫을 것을 제안합니다. 발표자는 이러한 기능을 사용하는 방법과 거래 계정에 로그인할 때 계정 개요를 제공하는 MT5 총 포지션 기능으로 열린 포지션 수를 확인하는 방법을 시연합니다.

  • 00:25:00 이 섹션에서 발표자는 WPS(Web Processing Service)에서 전략을 배포하는 프로세스의 마지막 단계를 설명합니다. 그는 기본 구성을 제공하는 Countable이라는 DP(Cloud Desktop Provider)를 사용할 것을 제안합니다. 그는 또한 MT5는 Windows에서만 작동하며 브로커가 런던에 있는 경우 영국에서 호스팅하는 데이터 센터를 선택할 것을 권장합니다. 그런 다음 연사는 초보자에게 팁과 권장 사항을 제공하고 나중에 시간이 지남에 따라 더 많은 전략을 추가할 수 있도록 전략을 간단하고 명확하게 유지하도록 조언합니다. 그는 시청자에게 감사를 표하고 댓글로 질문을 하도록 격려하며 마무리합니다.
How to create Algorithmic Trading Strategies with Python - Step by Step Process
How to create Algorithmic Trading Strategies with Python - Step by Step Process
  • 2022.08.28
  • www.youtube.com
In this video, I will explain how to create an Algorithmic Trading Robot Step by Step.00:00 - Presentation09:55 - Github Repo11:21 - Backtest19:55 - Live Tra...
 

Python으로 3-candle-setup 백테스팅



Python으로 3-candle-setup 백테스팅

비디오는 Python을 사용하여 3개 캔들 설정의 수익성을 백테스트하는 방법을 보여줍니다. 발표자는 Metatrader5에서 EUR/USD 통화 쌍에 대한 주간 OHLC 데이터를 가져와 Pandas 데이터 프레임으로 변환하고 Plotly Express를 사용하여 시각화합니다. 그들은 지정된 양초 유형 함수를 사용하여 강세 및 약세 양초를 식별하고 3-강세-양초 설정 조건을 정의합니다. 설정이 발생할 때마다 네 번째 캔들의 상승 또는 하락 확률을 계산하여 이러한 설정 구매의 수익성을 백 테스트합니다. 발표자는 각각의 강세 설정에서 오래 지속하면 약간의 수입이 발생했을 것이라고 결론을 내리지만 이익이 빠른 기간에 오기 때문에 인내심을 갖는 것이 중요하다고 강조합니다.

  • 00:00:00 이 섹션에서 발표자는 Python을 사용하여 세 개의 촛불 설정을 백테스트하는 방법에 대해 설명합니다. 이를 위해 먼저 Metatrader5 플랫폼에 연결하고 2019년 1월 1일부터 2021년 11월까지 주간 기간에 EUR/USD 통화 쌍에 대한 OHLC 데이터를 요청합니다. 그런 다음 데이터는 Pandas 데이터 프레임으로 변환되고 Plotly Express를 사용하여 시각화됩니다. . 그런 다음 화자는 지정된 양초 유형 함수를 사용하여 데이터 프레임의 양초를 강세 또는 약세로 표시하는 방법을 보여줍니다. 그들은 이를 사용하여 양초 유형 열을 1개, 2개, 3개의 양초만큼 앞으로 이동하여 3개 양초가 모두 강세인 조건을 만들어 3개 강세 양초 설정 조건을 충족합니다. 그런 다음 이 설정이 발생할 때마다 네 번째 캔들이 오르락 내리락할 확률을 계산하고 이러한 설정 구매의 수익성을 백테스트합니다.

  • 00:05:00 비디오의 이 섹션에서 발표자는 Python을 사용하여 3개 캔들 설정을 백테스트하는 방법에 대해 설명합니다. 설정에는 첫 번째, 두 번째 및 세 번째 양초가 모두 강세인 양초 식별이 포함됩니다. 프리젠터는 이전 종가로 데이터 프레임을 생성하고 그 결과를 이전 캔들과 비교하여 얻거나 잃은 포인트 수를 계산합니다. 그런 다음 데이터를 통계적으로 분석하여 매수 또는 매도가 좋은 아이디어인지 결정합니다. 각각의 개별 설정을 반복하고 플롯에 3개의 캔들 설정을 추가함으로써 그들은 각 설정 종료 시 매수하고 다음 캔들 종료 직후 매도하는 것이 어떤 상황에서는 수익성이 있음을 보여줍니다. 발표자는 설정이 발생하는 횟수와 설정당 평균적으로 얻거나 잃는 양을 계산합니다. 그들은 각각의 강세 설정을 오래 지속하면 약간의 수입이 발생했을 것이라고 결론지었습니다.

  • 00:10:00 이 섹션에서 비디오는 Python으로 3-candle-setup을 백 테스트하는 예를 소개합니다. 축을 재설정한 후 누적 포인트의 수익 곡선과 함께 2019년 거래 손실 및 수익 기간을 보여줍니다. 이익은 빠른 시기에 나타나며 이 기간이 도래할 때까지 인내가 필요합니다. 비디오는 또한 일일 차트에서 XA USD를 분석하고 과거 데이터를 요청하고 데이터 프레임을 구성하여 성능을 보는 방법을 보여줍니다. 이익 곡선은 이익과 손실의 기복을 보는 데 사용됩니다. 마지막으로 비디오는 이 테스트 방법이 시장과 기간에 관계없이 사용될 수 있으며 사용자가 자신의 알고리즘 전략을 작성할 수 있음을 암시합니다.
Backtesting the 3-candle-setup with Python
Backtesting the 3-candle-setup with Python
  • 2021.11.12
  • www.youtube.com
In this video, we will backtest 3 candles in-a-row setup for algorithmic trading.Chapters00:00 Intro00:55 Requesting Data & Visualization03:33 Finding the 3-...
 

Python에서 실시간 캔들스틱 차트 코딩



Python에서 실시간 캔들스틱 차트 코딩

이 비디오에서 저자는 Dash, pandas 및 plotly를 사용하여 Python으로 웹 애플리케이션을 생성하여 FOREX 거래를 위한 실시간 촛대 데이터 차트를 생성합니다. 이 응용 프로그램은 MetaTrader 5 라이브러리를 사용하여 데이터를 수집하고 사용자가 기호, 시간 프레임 및 표시할 양초 수를 변경할 수 있도록 합니다. 비디오는 MetaTrader 5에서 과거 막대를 요청하고 go.candlestick으로 그림 개체를 생성하는 것을 포함하여 애플리케이션에 대한 레이아웃 및 콜백을 생성하는 과정을 거칩니다. 결과 애플리케이션은 20밀리초마다 업데이트되며 업데이트 간격은 200밀리초입니다. 뷰어는 애플리케이션을 다운로드하기 위해 GitHub 페이지를 방문하도록 초대됩니다.

  • 00:00:00 이 섹션에서 YouTube 사용자는 실시간 스트리밍 촛대 데이터로 라이브 외환 데이터 차트를 만드는 방법에 대한 시청자의 질문에 답변합니다. 동영상은 YouTuber가 MetaTrader5 라이브러리를 사용하여 MetaTrader 5에서 데이터를 수집하는 동안 데이터 분석 및 시각화를 위해 Dash, pandas 및 plotly를 사용하여 Python으로 웹 애플리케이션을 코딩하는 방법을 설명합니다. 또한 기호 목록을 가져오고 번역하는 과정도 설명합니다. 사전을 사용하여 시간 프레임. 응용 프로그램의 결과 출력은 사용자가 200밀리초 업데이트 간격으로 데이터를 실시간으로 표시하기 위해 기호, 시간 프레임 및 촛불 수를 변경할 수 있는 차트입니다.

  • 00:05:00 비디오의 이 섹션에서 발표자는 실시간 촛대 차트 응용 프로그램의 레이아웃 생성에 대해 설명합니다. 기호 및 시간 프레임에 대한 드롭다운 구성 요소는 MT5 기능에서 가져오고 값은 기본값으로 설정됩니다. 막대 수 입력은 기본값이 20인 DBC 입력 필드를 사용하여 생성됩니다. 앱 레이아웃은 기호 드롭다운, 시간 프레임 드롭다운 및 막대 수 입력을 포함하는 HTML div로 구성됩니다. 작은 구분 기호가 추가되고 그 뒤에 실시간 차트를 업데이트하기 위해 200밀리초마다 새 콜백을 생성하는 DCC 간격 구성 요소가 추가됩니다. 페이지 콘텐츠에는 20밀리초마다 차트를 업데이트하는 콜백이 포함되어 있으며 기호 드롭다운, 시간 프레임 드롭다운 및 막대 수 입력 상태를 가져옵니다. 콜백은 MetaTrader 5에서 과거 막대를 요청하고 go.candlestick을 사용하여 그림 개체를 생성합니다. 마지막으로 발표자는 시청자의 관심에 감사하며 GitHub 페이지를 방문하여 애플리케이션을 다운로드하도록 초대합니다.
Code Real-Time Candlestick Charts in Python
Code Real-Time Candlestick Charts in Python
  • 2021.11.25
  • www.youtube.com
In this video, we will code a Real-Time Candlestick Web Application in Python. We will connect to MetaTrader5 to get real-time data and use Plotly-Dash to cr...