데이터 가져오기 및 가상 테스터(개발)

 

여기 의 주제에서 영감을 받아 제 생각에는 MT5의 모든 기능이 실행 가능한 옵션이 누락되었습니다. 이것은 MetaQuotes가 나에게 제공하지 않은 이유에 대한 스레드가 아닙니다. 그러나 오히려 문제에 대한 해결책을 어떻게 찾을 수 있습니까? 틱 데이터와 시장 정보를 제어하는 것은 우리 세대의 메타 트레이더 내에서 구현되지 않을 것으로 보입니다. 왜 중요한가? 아래에 몇 가지 이유를 제시하겠습니다.

1) 예를 들어 EURJPY에 대한 중개인의 평균 스프레드는 기본 데이터의 스프레드보다 훨씬 낮습니다. 어떻게 이 평균 낮은 스프레드를 테스트할 수 있으며 그 반대의 경우도 마찬가지입니까? 비 mt5 브로커.

2) 내 시스템은 다양한 시장을 위해 설계되었습니다. 내 시스템은 장기간의 추세 시장을 어떻게 처리할까요? 내 알고리즘은 위상을 유지하기에 충분히 좋은가요? 인기 급상승에 대한 반대의 경우도 마찬가지입니다.

3) 시장은 랜덤이라고 생각합니다. 일부 랜덤 데이터에서 이 시스템을 테스트하고 결과를 실제 데이터와 비교하려면 어떻게 해야 합니까?

4) 내 중개인/판매자가 ... 수많은 고품질 데이터를 제공/판매했지만 mt5 서버가 없습니다. 백 테스트를 수행하기 위해 이를 mt5에 어떻게 가져올 수 있습니까?

5) 알고리즘 생성 틱이 아닌 Real-Ticks를 믿습니다. 지난 x년 동안 진드기를 저장해 두었다가 사용하는 것을 선호합니다. 내 옵션은 무엇입니까?

6) 환경 [시장 정보] 및 데이터 [가격|시간|확산]에 대한 확신과 더 나은 제어를 원합니다. 이 경우 어떻게 해야 합니까?

더 많은 이유가 있었지만 어떻게 든 지금은 모두 기억할 수 없습니다. 이유를 들어보길 바랍니다 :)

 

목표:

목표는 단순해야 한다고 생각합니다. 그리고 내가 염두에 두고 있는 간단한 목표는 mt5 전략 테스터 가 .csv | .hst 형식. 다른 모든 굿즈는 나중에 올 수 있습니다.

논의의 첫 번째 단계는 "이것이 실행 가능한가"여야 한다고 생각합니다. 명백한 질문은 "왜 mt5"입니다. 앞서 언급했듯이 전작보다 강력합니다. 우리 대부분은 mql* 언어에 막대한 투자를 하고 있습니다. 또한, 다른 플랫폼에 대해 논의하는 것은 이 사이트에서 잘 되지 않을 것입니다. 그리고 마지막으로 바퀴를 재발명하는 것은 문제의 여지가 없습니다.

따라서 저는 우리가 가진 것에서 가능한 한 많이 통합할 아이디어를 찾고 있습니다. 그럼 사람들의 밝은 아이디어를 들어보시죠!

1> EMULATION_MODES가 백 테스터 내에서 완전히 활용될 수 있다면 할당이 가능할 것이라고 생각합니다. 또한 백 테스터 내에서 수면 기능을 갖는 것도 유용한 도구가 될 것입니다. 나는 여전히 이것을 연구하고 있으며 이미 개발된 현재 가상 물건을 살펴보고 있습니다. 내가 내 물건을 모르는 것 같다면 미안하지만, 이 주제에 대한 수요가 있고 그것이 내가 여러분을 필요로 하는 이유입니다. 건배.

 
Ubzen :

목표:

목표는 단순해야 한다고 생각합니다. 그리고 내가 염두에 두고 있는 간단한 목표는 mt5 전략 테스터가 .csv | .hst 형식. 다른 모든 굿즈는 나중에 올 수 있습니다.

논의의 첫 번째 단계는 "이것이 실행 가능한가"여야 한다고 생각합니다. 명백한 질문은 "왜 mt5"입니다. 앞서 언급했듯이 전작보다 강력합니다. 우리 대부분은 mql* 언어에 막대한 투자를 하고 있습니다. 또한, 다른 플랫폼에 대해 논의하는 것은 이 사이트에서 잘 되지 않을 것입니다. 그리고 마지막으로 바퀴를 재발명하는 것은 문제의 여지가 없습니다.

따라서 저는 우리가 가진 것에서 가능한 한 많이 통합할 아이디어를 찾고 있습니다. 그럼 사람들의 밝은 아이디어를 들어보시죠!

1> EMULATION_MODES가 백 테스터 내에서 완전히 사용될 수 있다면 할당이 가능할 것이라고 생각합니다. 또한 백 테스터 내에서 수면 기능을 갖는 것도 유용한 도구가 될 것입니다. 나는 여전히 이것을 연구하고 있으며 이미 개발된 현재 가상 물건을 살펴보고 있습니다. 내가 내 물건을 모르는 것 같다면 미안하지만, 이 주제에 대한 수요가 있고 그것이 내가 당신들을 필요로 하는 이유입니다. 건배.

내가 보기에 Strategy Tester는 아직 진행 중인 작업이라는 점을 알아두시기 바랍니다. 일부 기능이 작동하지 않고 많은 개체 유형이 지원되지만 차트를 마우스 오른쪽 버튼으로 클릭하고 개체 목록을 볼 수 없다는 것을 직접 확인했습니다. 지원되지 않을 수 있습니다. 예를 들어 CHART_FIRST_VISIBLE_BAR, CHART_VISIBLE_BARS, CHART_WIDTH_IN_PIXELS 및 CHART_HEIGHT_IN_PIXELS를 사용하여 Button Objects 또는 ChartGetInteger()에 의존하는 Market용 제품을 만든 경우 이러한 기능/기능으로 작동하지 않는 제품이 있을 것입니다. 전략 테스터.

전략 테스터에서 작동하지 않는 다른 것은 무엇입니까?

우리에게 정말로 필요한 것은 Metaquote가 로컬 History Data Server 애플리케이션을 코딩하는 것입니다. 저장된 히스토리 데이터를 관리할 뿐만 아니라 Symbol 속성 을 사용자 정의하여 고유한 Symbol을 생성할 수도 있습니다. . . 오프라인 차트로 백 테스트하는 것은 쉬울 것입니다.

Documentation on MQL5: Standard Constants, Enumerations and Structures / Environment State / Symbol Properties
Documentation on MQL5: Standard Constants, Enumerations and Structures / Environment State / Symbol Properties
  • www.mql5.com
Standard Constants, Enumerations and Structures / Environment State / Symbol Properties - Documentation on MQL5
 
Ubzen :

목표:

목표는 단순해야 한다고 생각합니다. 그리고 내가 염두에 두고 있는 간단한 목표는 mt5 전략 테스터가 .csv | .hst 형식. 다른 모든 굿즈는 나중에 올 수 있습니다.

...

어떻게 이것이 가능합니까? 우리는 전략 테스터 에 대한 통제권이 없습니다. 제 생각에는 2가지 옵션만 있습니다.

  1. Strategy Tester를 그대로 사용하고 데이터 작업을 시도합니다. ST는 .hcs 파일을 사용합니다. 이 파일은 AFAIK에서 현재 알 수 없는 구조입니다. 이 파일을 자신의 파일로 바꾸고 결과를 얻을 수 있습니까?
  2. 우리가 완전히 통제할 수 있는 가상 전략 테스터를 사용하십시오. 이것은 더 이상 hcs 형식 에 의존하지 않으면 서 더 많은 작업 많은 독립성 의미합니다. 예를 들어 변경 .

2가지 옵션에 대해 조사할 수 있습니다. 내 생각은 두 번째에 더 많았습니다.

 

완전한 시스템을 작성하는 것은 간단한 작업이 아니지만 달성 가능한 목표입니다.

그러나 그러한 시스템을 작성하기 시작하는 순간, 당신은 이 시스템을 개발하는 데 시간을 할애할 것이며 거래나 거래 시스템을 개발하는 데 시간을 할애하게 될 것입니다. 작업량이 무궁무진하기 때문입니다.

내려야 할 주요 결정은 자신의 시스템을 구축하기로 결정하는 것입니다. MT5 외부로 완전히 이동해야 합니다. 그렇지 않으면 항상 그리고 지속적으로 일종의 타협을 해야 하고 이중 코드를 작성해야 합니다(현재 MT4-MT5용). 또한 전략 테스터 에이전트와 같은 훌륭한 기능은 구현하기가 쉽지 않습니다.

이미 존재하는 프레임워크 가 하나 이상 있으므로 이와 유사한 것을 사용해야 합니다.

Let me google that for you
Let me google that for you
  • bit.ly
Let Me Google That For You
 
graziani :

완전한 시스템을 작성하는 것은 간단한 작업이 아니지만 달성 가능한 목표입니다.

mql5로 코딩된 EA 및 표시기와 함께 작동하는 방법을 이해하는 데 관심이 있습니까?
 
RaptorUK :
mql5로 코딩된 EA 및 표시기와 함께 작동하는 방법을 이해하는 데 관심이 있습니까?

당신은 할 수 없습니다. MT5에서 벗어나야 합니다. 미래의 모든 EA/지표는 MT4/MT5 외부에 작성된 다음 MT4/MT5를 틱 스트림 공급자 및 주문 실행 으로 사용합니다.

백테스트 목적으로 데이터베이스 형식을 역설계하고( 금지 되지만 달성 가능) M1을 S1(1초가 아닌 1초) 레코드로 교체한 다음 ST에서 M1 기록을 통해 실행할 수 있습니다. 하지만 라이브 스트림의 경우 완전히 다른 EA를 작성해야 하므로 내부 표시기를 사용해야 하고 히스토리 배열이 아닌 수집된 틱 스트림을 처리해야 하기 때문에 나는 이것을 사용할 수 없습니다.

내 요점은 그러한 프로젝트를 시작함으로써 거래가 아닌 다른 'MT4/5'를 구축하는 데 집중할 것이라는 것입니다.

 
graziani :

당신은 할 수 없습니다. MT5에서 벗어나야 합니다. 미래의 모든 EA/지표는 MT4/MT5 외부에 작성된 다음 MT4/MT5를 틱 스트림 공급자 및 주문 실행 으로 사용합니다.

백테스트 목적으로 데이터베이스 형식을 역설계하고( 금지 되지만 달성 가능) M1을 S1(1초가 아닌 1초) 레코드로 교체한 다음 ST에서 M1 기록을 통해 실행할 수 있습니다. 하지만 라이브 스트림의 경우 완전히 다른 EA를 작성해야 하므로 내부 표시기를 사용해야 하고 히스토리 배열이 아닌 수집된 틱 스트림을 처리해야 하기 때문에 나는 이것을 사용할 수 없습니다.

내 요점은 그러한 프로젝트를 시작함으로써 거래가 아닌 다른 'MT4/5'를 구축하는 데 집중할 것이라는 것입니다.

답장을 보내주셔서 감사합니다. 나는 당신이 제안하는 바를 이해했다고 생각했습니다. 나는 단지 당신이 명확하기를 바랐습니다. 그리고 당신은 그랬습니다.

 

@ RaptorUK : 감사합니다. 모든 것이 지원되지 않을 수 있음을 이해합니다. 나는 전략 테스터 내에서 작동하지 않는 모든 것을 알지 못합니다. 나는 시장을 위한 제품을 만드는 것이 아니다. 제품을 만드는 사람에게는 나름의 문제가 있습니다. 그들은 우리가 만든 코드를 수정하거나 mq를 기다릴 수 있습니다. Mq는 이러한 토론에 참여하지 않습니다. (우리를 무시합니다), 저는 그들에게 무엇이든 물어보는 것을 끝냈습니다.

@ gevoyageur : 옵션 #2와 같은 것이 필요하다는 데 동의합니다. 나는 더 많은 독립을 위해 조금 더 일을 하는 것을 개의치 않는다. 우리가 생각해낸 것은 무엇이든 쉽게 채택되고 받아들여져야 합니다. 그렇지 않으면 모든 작업이 헛된 것입니다. [mql5에서 EA를 코딩] [전략 테스터 시작] [그리고 가상 전략 테스터가 인계]처럼 쉽게 만들 수는 없다고 생각합니다. 그러나 함수 이름 앞에 'v'를 붙여 이미 존재하는 함수에 대해 드롭인 교체를 사용할 수 있습니다.

@ grazani : 간단하게는 어떻습니까. 파일읽기( my.csv ); 파일 읽기( my.market.info ). Marketinfo()를 vMarketInfo()로 바꿉니다. 전략 테스터가 움직일 때 DrawObjects. 신고하기 .......완료. :), 그래서 당신은 어떻게 생각합니까? 말은 하는 것보다 쉽죠?

mql4-mql5에서 이동하는 나와 유사한 코더로부터 지원을 수집하려고 하기 때문에 mt4 또는 mt5 외부로 이동하면 작동하지 않습니다. 그러한 프로젝트에 대한 동기를 유지하려면 테스트|버그 보고 목적이라면 다른 사람들의 성공적인 적응이 필요합니다. 저는 Agents와 Optimizer를 좋아합니다. 누군가가 구현하기 쉽다고 말해주기를 바랐습니다(방법은 다음과 같습니다. .

현재 필요한 것은 데이터, 시장 정보, 시장 실행, 다중 통화 및 간단한 보고에 대한 지원입니다. 이 프로젝트에 언제든지 자원할 수 있는 사람들이 많을수록 더 성공적일 것입니다. 프로젝트가 mt 외부로 이동하는 것이라면 우리는 위의 모든 것을 구축해야 하고 이전에는 고려하지 않아도 된 다른 것들을 많이 할당해야 합니다.

기성품 mql5 코드를 사용할 수 있기를 정말로 바랐습니다. 아무도 이 항해사 #1을 수행하는 방법을 제안하지 않으면 우리는 항해사 #2로 넘어갈 것입니다.

 
RaptorUK :

답장을 보내주셔서 감사합니다. 나는 당신이 제안하는 바를 이해했다고 생각했습니다. 나는 단지 당신이 명확하기를 바랐습니다. 그리고 당신은 그랬습니다.


MT5 외부 에서 무언가 를 하는 것은 의심의 여지가 없습니다 . 이미 전략 테스터 로 작동 하는 모든 것을 다시 프로그래밍 하는 데는 의심의 여지가 없습니다 . 전략 테스터 대체할 질문 없습니다. 아이디어두 가지 옵션( 위 참조 ) 중 하나 또는 두 가지 를 조합 하여 전략 테스터보완하는 것을 개발하는 것입니다 .
 
Ubzen :

@ RaptorUK : 감사합니다. 모든 것이 지원되지 않을 수 있음을 이해합니다. 나는 전략 테스터 내에서 작동하지 않는 모든 것을 알지 못합니다. 나는 시장을 위한 제품을 만드는 것이 아니다. 제품을 만드는 사람에게는 나름의 문제가 있습니다. 그들은 우리가 만든 코드를 수정하거나 mq를 기다릴 수 있습니다. Mq는 이러한 토론에 참여하지 않습니다. (우리를 무시합니다), 저는 그들에게 무엇이든 물어보는 것을 끝냈습니다.

@ gevoyageur : 옵션 #2와 같은 것이 필요하다는 데 동의합니다. 나는 더 많은 독립을 위해 조금 더 일을 하는 것을 개의치 않는다. 우리가 생각해낸 것은 무엇이든 쉽게 채택되고 받아들여져야 합니다. 그렇지 않으면 모든 작업이 헛된 것입니다. [mql5에서 EA를 코딩] [전략 테스터 시작] [그리고 가상 전략 테스터가 인계]처럼 쉽게 만들 수는 없다고 생각합니다. 그러나 함수 이름 앞에 'v'를 붙여 이미 존재하는 함수에 대해 드롭인 교체를 사용할 수 있습니다.

@ grazani : 간단하게는 어떻습니까. 파일읽기( my.csv ); 파일 읽기( my.market.info ). Marketinfo()를 vMarketInfo()로 바꿉니다. 전략 테스터가 움직일 때 DrawObjects. 보고하기 .......완료. :), 그래서 당신은 어떻게 생각합니까? 말은 하는 것보다 쉽죠?

mql4-mql5에서 이동하는 나와 유사한 코더로부터 지원을 수집하려고 하기 때문에 mt4 또는 mt5 외부로 이동하면 작동하지 않습니다. 그러한 프로젝트에 대한 동기를 유지하려면 테스트|버그 보고 목적이라면 다른 사람들의 성공적인 적응이 필요합니다. 저는 Agents와 Optimizer를 좋아합니다. 누군가가 구현하기 쉽다고 말해주기를 바랐습니다(방법은 다음과 같습니다. .

현재 필요한 것은 데이터, 시장 정보, 시장 실행, 다중 통화 및 간단한 보고에 대한 지원입니다. 이 프로젝트에 언제든지 자원할 수 있는 사람들이 많을수록 더 성공적일 것입니다. 프로젝트가 mt 외부로 이동하는 것이라면 우리는 위의 모든 것을 구축해야 하고 이전에는 고려하지 않아도 된 다른 것들을 많이 할당해야 합니다.

기성품 mql5 코드를 사용할 수 있기를 정말로 바랐습니다. 아무도 이 항해사 #1을 수행하는 방법을 제안하지 않으면 우리는 항해사 #2로 넘어갈 것입니다.

우리는 같은 파장에 있습니다.