English Русский 中文 Español Deutsch 日本語 Português Français Italiano Türkçe
MetaTrader 5 Tester에서의 전략 시각화

MetaTrader 5 Tester에서의 전략 시각화

MetaTrader 5 | 5 7월 2021, 11:30
242 0
MetaQuotes
MetaQuotes

우리 모두는 "백 번 듣는 것보다 한 번 보는 것이 낫다"라는 말에 대해 알고 있습니다. 파리나 베네치아에 관한 다양한 책은 읽을 수 있지만, 이런 이미지만으로 이 멋진 도시에서 즐기는 저녁 산책의 느낌에 대해 알 수 없을 것입니다. 시각화의 이점은 시장에서의 작업 (예: 지표를 사용한 차트의 가격 분석, 물론 전략 테스트의 시각화)을 포함하여 우리 삶의 모든 측면에서 쉽게 예상 할 수 있다는 데 있습니다.


모두가 전략 테스터의 가능성을 알고 있습니까?

실습에서 알 수 있듯이 모든 사람이 그렇지는 않습니다. 경쟁사에 비해 MetaTrader 5 거래 플랫폼의 장점은 더 편리한 사용자 친화적인 인터페이스, 단말기 및 MQL5, 다중 통화 테스터의 충분한 기회입니다. MQL5 클라우드 네트워크 및 기타 여러 옵션을 사용하는 클라우드 컴퓨팅 가능성과 함께 말이죠. 장점은 트레이더가 필요로 하는 모든 도구를 한곳에서 사용할 수 있다는 것입니다.

이 글 의 목적은 MetaTrader 5의 모든 가능성 중 하나, 즉 전략 테스트 및 최적화의 시각화에 대한 한 가지 더 중요한 기능을 트레이더에게 보여주는 것입니다. 과거 데이터에 대한 Expert Adviser의 행동 분석과 최상의 매개 변수 선택은 수치, 거래, 균형, 자본 등에 대한 힘든 분석 일 뿐만이 아닙니다. 의자에 앉아 편안하게 "3D"안경을 쓰고 시작합시다.


그리고 저는 속으로 이게 정말 멋진 세계 차트라고 생각했습니다...

Expert Adviser을 코드베이스 또는 시장에 게시할 때 작성자는 일반적으로 테스트에 대한 통계 보고서와 균형 및 형평성 그래프를 첨부합니다. 하지만 전략 테스터의 '결과' 탭에 있는 통계에서 더 흥미로운 차트를 확인할 수 있습니다.

테스트 결과 차트

이러한 차트를 기반으로 EA가 시장에 적극적으로 진입 할 때 가장 잘 거래되는 월, 일 또는 시간을 분석 할 수 있습니다. 또한 MFE (Maximum Favorable Excursion) 및 MAE (Maximum Adverse Excursion) 분포 그래프를 기반으로 EA가 손실을 "입장"하는지 여부와 관련하여 수익성있는 포지션이 적절한 시기에 마감되었는지 여부와 관련하여 EA의 성과를 평가할 수 있습니다.

MFE/MAE 분포 차트

테스트 결과를 더 아래로 스크롤하면 다른 그래프를 찾을 수 있습니다.

수익 배분 및 포지션 보유 시간

이 다이어그램은 수명에 대한 포지션 수익의 의존성을 보여줍니다. 이 다이어그램은 다가오는 Automated Trading Championship 2012에 매우 유용합니다. ATC 규정 중 하나는 스캘핑을 금지합니다. Expert Advisor를 테스트하고 규칙을 준수하는지 확인하십시오.


역사적인 영화 또는 시각적 테스트

전략 테스터의 혁신적인 기능 중 하나는 시각적 테스트 모드입니다. 날짜 별 거래 분석, 차트 플로팅 및 기타 "흥미로운" 일상적인 절차는 상당히 복잡한 프로세스를 구성합니다. 그러나 전략 테스터는 플레이어에게 리모콘을 제공하고 "재생"을 누르고 역사적인 영화를 보는 것과 같습니다. 영화의 속도를 늦추거나 속도를 높이고 멈추고 상황을 분석할 수 있습니다. 실시간으로 시뮬레이션 된 과거 데이터를 기반으로 차트가 구성되는 방식과 Expert Advisor가 가격 변화에 어떻게 반응하는지 확인할 수 있습니다.


비주얼라이저는 전략 테스터처럼 다중 통화를 완벽하게 지원합니다. 비디오의 Expert Advisor는 거래를 위해 4개의 통화 쌍을 사용합니다. 모든 시뮬레이션 가격은 Market Watch 및 차트에서 확인할 수 있습니다.


2D 최적화 결과

TV 제조업체들 사이에서 인기가 높은 3차원 이미지를 소개하기 전에 전략 테스터에서 2D 시각화를 살펴보십시오. 언뜻보기에 이상하게 보일 수 있는 사각형을 통해 최적화 기준에 대한 두 최적화 매개 변수의 상호 영향을 확인할 수 있습니다 (이 경우에는 최대 균형 값). 녹색 음영이 어두울수록 균형이 높아집니다.

2D 최적화 결과

우리는 관계가 물결 모양의 문자임을 알 수 있으며 기간의 평균 값과 이동 평균의 이동을 사용하면 최대 결과를 얻을 수 있습니다. 터미널의 표준 배포 팩에서 사용할 수 있는 이동 평균 EA의 최적화 결과입니다. 여기에서도 흥미로운 것을 찾을 수 있습니다.


이제 3D로

3차원 이미지는 더 나은 시각화 옵션을 제공합니다. 아래는 두 매개 변수의 동일한 종속성과 최종 결과입니다. 최적화 그래프 탭의 컨텍스트 메뉴를 사용하여 이 고급 모드로 전환할 수 있습니다.

3D 최적화 결과

MetaTrader 5 전략 테스터에 3 차원 최적화가 나타난 후, 트레이더는 포럼에 수학적 계산 시각화에 대한 자체 예제를 게시하기 시작했습니다.

3차원 그래픽은 완전히 상호 작용하므로 확대 및 축소, 편리한 각도로 회전 등을 할 수 있습니다. 중요한 기능은 테스트 및 최적화 결과를 이미지 또는 XML/HTML 보고서로 내보낼 수 있다는 것입니다.


시각 최적화

마지막으로 환영합니다 - 최적화 결과 작업! 결과를 처리하기 위해 트레이더는 데이터를 준비하고 다운로드하여 어딘가에서 처리해야 했습니다. 이제 최적화 중에 현장에서 할 수 있습니다! 이 가능성을 보여주기 위해 우리는 그러한 처리의 가장 간단한 예를 구현하는 여러 헤더 파일이 필요합니다.

아래 첨부 된 MQH 파일을 다운로드하여 MQL5\Include 폴더에 저장하십시오. Expert Advisor를 선택하여 코드 끝에 이 블록을 붙여 넣습니다.

//--- Add a code for working with optimization results
#include <FrameGenerator.mqh>
//--- генератором фреймов
CFrameGenerator fg;
//+------------------------------------------------------------------+
//| Tester function                                                  |
//+------------------------------------------------------------------+
double OnTester()
  {
//--- Insert here your own function for calculating the optimization criterion
   double TesterCritetia=MathAbs(TesterStatistics(STAT_SHARPE_RATIO)*TesterStatistics(STAT_PROFIT));
   TesterCritetia=TesterStatistics(STAT_PROFIT)>0?TesterCritetia:(-TesterCritetia);
//--- Call at each end of testing and pass the optimization criterion as a parameter
   fg.OnTester(TesterCritetia);
//---
   return(TesterCritetia);
  }
//+------------------------------------------------------------------+
//| TesterInit function                                              |
//+------------------------------------------------------------------+
void OnTesterInit()
  {
//--- Prepare the chart to show the balance graphs
   fg.OnTesterInit(3); //The parameter sets the number of balance lines on the chart
  }
//+------------------------------------------------------------------+
//| TesterPass function                                              |
//+------------------------------------------------------------------+
void OnTesterPass()
  {
//--- Process the testing results and show the graphics
   fg.OnTesterPass();
  }
//+------------------------------------------------------------------+
//| TesterDeinit function                                            |
//+------------------------------------------------------------------+
void OnTesterDeinit()
  {
//--- End of optimization
   fg.OnTesterDeinit();
  }
//+------------------------------------------------------------------+
//|  Handling of events on the chart                           |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam)
  {
   //--- Starts frames after the end of optimization when clicking on the header
   fg.OnChartEvent(id,lparam,dparam,sparam,100); // 100 is a pause between frames in ms
  }
//+------------------------------------------------------------------+

표준 배송 팩으로 제공되는 Expert Advisor Moving Averages.mq5를 사용합니다. 코드를 붙여넣고 Expert Advisor를 Moving Averages With Frames.mq5로 저장합니다. 최적화를 컴파일하고 실행하십시오.


따라서 트레이더는 이제 시각적 최적화를 실행하고 그 결과를 처리하거나 최적화 프로세스 중에 필요한 정보를 표시 할 수 있습니다.


더 원하십니까?

우리는 트레이더를 돕는 새로운 도구를 추가하여 MetaTrader 5 거래 플랫폼의 가능성을 계속 확장하고 있습니다. 의견을 게시하고 전략 테스터에서 시각화를 더욱 개선하는 방법에 대한 아이디어를 공유하십시오. 우리는 그들 중 가장 흥미롭고 유용한 것을 구현하려고 노력할 것입니다.


파일 사용 방법

확장자가 .mqh 인 모든 파일은 MQL5\Include 폴더에 넣어야 합니다. 여기에서 컴파일러는 Moving Average_With_Frames.mq5 Expert Advisor를 컴파일 할 때 파일을 찾습니다. EA 파일은 MQL5\Experts 폴더 또는 하위 폴더에 바로 넣을 수 있습니다.

MetaTrader 5 전략 테스터에서 첨부된 Exert Advisors를 시작하여 이 글 를 더욱 흥미롭게 읽어보세요. 확실히 좋아할테니까요.

MetaQuotes 소프트웨어 사를 통해 러시아어가 번역됨.
원본 기고글: https://www.mql5.com/ru/articles/403

후행 중지를 사용하는 수익 창출 알고리즘 후행 중지를 사용하는 수익 창출 알고리즘
이 기사의 목적은 트레일링 스톱을 사용하여 거래 및 종료에 대한 다양한 진입 및 종료를 가진 알고리즘의 수익성을 연구하는 것입니다. 사용할 항목 유형은 무작위 입력 및 역 입력입니다. 사용되는 중지 명령은 후행 중지 및 후행 테이크입니다. 이 기사는 연간 약 30%의 수익성으로 수익을 창출하는 알고리즘을 보여줍니다.
MetaTrader 5 - 상상 이상! MetaTrader 5 - 상상 이상!
MetaTrader 5 클라이언트 터미널은 처음부터 개발되었으며 물론 이전 제품을 훨씬 능가합니다. 새로운 거래 플랫폼은 모든 금융 시장에서 거래할 수 있는 무한한 기회를 제공합니다. 또한 그 기능은 더욱 유용한 기능과 편리함을 제공하기 위해 계속 확장되고 있습니다. 따라서 MetaTrader 5의 수많은 장점을 모두 나열하는 것은 매우 어렵습니다. 우리는 그것들을 하나의 기사로 간략하게 설명하려고했는데 그 결과에 놀랐습니다. 기사가 간단하지 않습니다!
손쉽게 트레이딩 로봇 만들기 손쉽게 트레이딩 로봇 만들기
시장 거래에는 많은 위험이 따릅니다. 그 중에서도 가장 큰 위험은 잘못된 결정을 내리는 것이죠. 투자자라면 누구나 언제든지 작동 가능하고 두려움, 탐욕, 조바심 같은 우리 인간의 약점을 갖지 않는 자신만의 트레이딩 로봇을 꿈꿉니다.
6 단계로 나만의 거래 로봇을 만드세요! 6 단계로 나만의 거래 로봇을 만드세요!
거래 클래스가 어떻게 구성되는지 모르고 "객체 지향 프로그래밍" 이라는 단어가 두렵다면 이 글이 당신에게 딱입니다. 사실, 거래 신호 모듈을 작성하기 위해 세부 사항을 알 필요가 없습니다. 몇 가지 간단한 규칙을 따르십시오. 나머지는 모두 MQL5 마법사가 수행하고 즉시 사용 가능한 거래 로봇을 얻게 됩니다!