MQL5 마법사에서 생성된 Expert Advisor 열기, 닫기 - 페이지 2

 
PeretsCHILI :

문제의 문구로 나는 다음과 같이 결정했습니다.

긴 여는 시간: 빠른 MA는 아래에서 위로 느린 MA와 시간 필터를 교차합니다.

장 마감: 빠른 MA가 느린 MA를 위에서 아래로 교차

여는 반바지: 빠른 MA는 느린 MA를 위에서 아래로 교차하고 시간 필터를 추가합니다.

닫는 반바지: 빠른 MA는 느린 MA를 아래에서 위로 교차합니다.

앞서 언급한 예에서는 각각 CheckOpenLong, CheckCloseLong, CheckOpenShort, CheckCloseShort를 사용했습니다.

하나는 신호를 열고 닫는 두 개의 모듈을 만들면 내가 이해하는 한 첫 번째 모듈 은 표준 모듈 라이브러리 에서와 같이 LongCondition 및 ShortCondition을 사용합니다. 닫을 두 번째 모듈에서 무엇을 사용할 것인가?


그리고 가장 중요한 것은 어디에? "...cross..."은(는) 무슨 뜻인가요? 그것이 바로 아름다움입니다 :)

 

젠장, 나는 더 혼란스러워졌습니다)) 기사에서 " 6 단계 로 거래 로봇을 만드 십시오!" 두 MA의 교차점에서 열릴 신호가 있는 첫 번째 모듈이 방금 제시되었습니다.

https://www.mql5.com/ru/articles/367

"cross over"은(는) 무슨 뜻인가요? 빠른 MA는 느린 MA를 아래에서 위로 교차합니다. 첫 번째 막대의 FastMA-SlowMA 값의 차이가 0보다 크고 두 번째 막대의 차이가 0보다 작은 경우입니다. 위에서 아래로 - 첫 번째 막대에서는 0보다 작고 두 번째 막대에서는 0보다 큽니다.

열기 및 닫기 신호가 있는 두 개의 모듈을 생성하여 문제를 해결할 수 있다고 말씀하셨습니다. 지정된 기사의 모듈을 사용하여 닫을 신호가 있는 모듈을 생성할 수 있습니까?

Создай торгового робота за 6 шагов!
Создай торгового робота за 6 шагов!
  • 2012.06.01
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы не знаете, как устроены торговые классы, и пугаетесь слов "Объектно-ориентированное программирование"? На самом деле вовсе не обязательно всё это знать, чтобы написать свой собственный модуль торговых сигналов - достаточно следовать простым правилам. Всё остальное сделает Мастер MQL5, и вы получите готовый торговый робот!
 
PeretsCHILI :

...

"cross over"은(는) 무슨 뜻인가요? 빠른 MA는 느린 MA를 아래에서 위로 교차합니다. 첫 번째 막대의 FastMA-SlowMA 값의 차이가 0보다 크고 두 번째 막대의 차이가 0보다 작은 경우입니다. 위에서 아래로 - 첫 번째 막대에서는 0보다 작고 두 번째 막대에서는 0보다 큽니다.

...


이미 좋아. 작업이 구체화되면 이것은 매우 정확합니다.


페레츠칠리 :

...

열기 및 닫기 신호가 있는 두 개의 모듈을 생성하여 문제를 해결할 수 있다고 말씀하셨습니다. 지정된 기사의 모듈을 사용하여 닫을 신호가 있는 모듈을 생성할 수 있습니까?

표현을 잘못했습니다. 거래 신호 모듈은 "OPEN BUY할 시간입니다" 및 "Open SELL 시간입니다"라는 신호를 생성합니다. 즉, OPEN 신호를 보낸다. 그러나 CExpert는 기존 포지션을 청산 및 취소할지 아니면 포지션을 개설할지 결정합니다.



6단계로 거래 로봇 만들기 기사의 모듈을 살펴보겠습니다! - 어떤 점이 마음에 들지 않습니까?

 

따라서 시간 필터가 있는 두 MA의 교차점에서 신호를 여는 모듈을 작성하고 다음과 같은 경우 닫힘이 발생하는 모듈을 작성하고 싶습니다. 반대 신호 수신; 공격적인 SL; 공격적인 TP 기사에 따라 모듈을 작성하고(Cross2MA라고 부름) Cross2MA 및 SignalITF 모듈 로 Expert Advisor를 생성할 수 있지만 닫을 때 SignalITF 필터도 검사되기 때문에 이 옵션은 적합하지 않습니다.

예: 2MA가 있고 SignalITF는 월요일에만 거래되도록 설정되어 있습니다. 따라서 월요일에 매수 신호가 수신되고 매수 포지션이 열리고 시간이 경과한 후 화요일에 Sl과 TP가 모두 도달하지 않은 경우 2MA의 역 교차가 발생하고 매수 포지션이 마감되어야 합니다. 그러나 이것은 이미 다른 날의 주이기 때문에 발생하지 않습니다.

원래대로: 조건은 동일, 2MA, 월요일 거래: 월요일, 매수 신호 수신, 매수 개시, 화요일에 매도 신호 수신, 그러나 이미 화요일이므로 매도 포지션이 열리지 않음 , 매수 포지션만 청산됩니다.

LongCondition에는 매수 열기 및 매도 닫기라는 두 가지 명령이 있습니다. 어떻게든 분리해야 합니다.)

 

"따로 날고, 커틀릿은 따로."


PeretsCHILI :

따라서 시간 필터가 있는 두 MA의 교차점에서 신호를 여는 모듈을 작성하고 다음과 같은 경우 닫힘이 발생하는 모듈을 작성하고 싶습니다. 반대 신호 수신; 공격적인 SL; 공격적인 TP ...

거래 신호 모듈은 "매수 개시 시간" 및 "판매 개시 시간" 두 가지 유형의 신호만 제공할 수 있습니다.

손절매를 제어하고 이익을 취하지 않을 것입니다. 왜냐하면 손절매 또는 이익실현 마감이 있는 경우 이는 오직 한 가지만 의미합니다. 즉, 포지션이 마감되고 거래 신호 모듈이 거기에서 제공하는 것을 볼 시간입니다(즉, 위치 수가 0이면 모든 것을 원으로 시작합니다. 신호를 기다리고 있습니다.

다음: "반대 신호"가 없기 때문에 모듈 작동에 대한 잘못된 해석 - 다음과 같을 수 있습니다.

  1. 오픈 BUY 포지션이 있고 "It's time to open SELL" 신호가 도착합니다.
  2. 또는 열려 있는 SELL 위치와 "구매를 열 시간입니다.
두 경우 모두 현재 위치가 닫히고 새 위치가 열립니다.


 
Andy :
LongCondition은 어떤 조건에도 상관없이 단순히 매수를 열고 유지할 수 있으며, 클로징은 손절매를 해야 할까요, 아니면 수동으로 해야 할까요?

CExpertSignal 클래스 의 LongCondition은 원칙적으로 아무 것도 "보유"할 수 없습니다. CExpertSignal은 "OPEN BUY"와 "OPEN SELL 시간"이라는 두 가지 신호만 제공합니다.


마스터가 조립한 Expert Advisor가 닫히지 않기를 원하십니까? 그런 다음 EA의 입력 매개변수 "// 신호 임계값을 닫기 [0...100]"으로 변경합니다. 닫기를 위한 가중치 막대를 "100"으로 설정하기만 하면 됩니다.

 
Andy :
그리고 무엇이 그들을 닫습니까?

CExpert 클래스 의 객체 - 모든 신호 모듈을 조사하고 가중치를 평가하고 결과 추정치를 요약합니다. 신호 가중치




 

모듈의 해석에 대해 이해했습니다. 탬버린과 함께 하는 이러한 모든 춤은 내가 다음과 같이 어드바이저를 최적화할 것이기 때문에 발생합니다. 2. 스톱 앤 테이크에 의한 최적화. 3. 후행 최적화.

문제는 다음과 같습니다. Cross2MA 및 SignalITF 필터를 사용하여 Expert Advisor를 생성하면 다음과 같이 작동합니다(조건은 동일하고 중지하고 0으로 설정):

월요일, FastMA는 바닥에서 SlowMA를 교차하고, 매수 포지션이 열리고, 포지션은 다음 월요일까지 유지되며, 다음 월요일에는 3가지 옵션이 있을 수 있습니다.

1. FastMA는 SlowMA를 위에서 아래로 교차합니다. 현재 위치는 닫히고 매도 위치는 열립니다.

2. 교차점이 없습니다 - 위치가 저장됩니다.

3. FastMA는 SlowMA를 아래에서 위로 교차합니다. 위치가 저장됩니다.

그리고 다음주 월요일까지 계속됩니다. 그리고 월요일 사이에 많은 일들이 일어날 수 있고, 2 MA가 여러 번 교차할 수 있고, 가격이 내려갈 것입니다.

예를 들어 다음과 같이 구현할 수 있습니까(조건 동일): 화요일 FastMA가 SlowMA를 위에서 아래로 교차하면 월요일이 아니라 화요일이기 때문에 매도 포지션의 개설이 발생하지 않지만 현재 위치가 닫혀 있습니까?

 

임계값을 사용하여 이 작업을 수행하는 방법을 알아낸 것 같습니다.

Cross2MA는 80을 반환하고 SignalITF는 40을 반환합니다.

세트 50을 여는 임계값, 세트 30을 닫는 임계값.

두 모듈 모두 신호를 보내면 산술 평균이 60이고 임계값 50보다 크면 위치가 열립니다.

Cross2MA만 트리거되면 산술 평균이 40, 30보다 크면 현재 위치 가 닫히고 50보다 작으면 새 위치가 열리지 않습니다.

권리?

SignalITF가 empty_value를 반환한다는 것뿐입니다.

 
PeretsCHILI :

임계값을 사용하여 이 작업을 수행하는 방법을 알아낸 것 같습니다.

Cross2MA는 80을 반환하고 SignalITF는 40을 반환합니다.

열림 임계값은 50으로 설정되고 닫힘 임계값은 30으로 설정됩니다.

두 모듈 모두 신호를 보내면 산술 평균이 60이고 임계값 50보다 크면 위치가 열립니다.

Cross2MA만 트리거되면 산술 평균이 40, 30보다 크면 현재 위치 가 닫히고 50보다 작으면 새 위치가 열리지 않습니다.

권리?

SignalITF는 empty_value를 반환합니다.


당신은 올바른 길을 가고 있습니다 :) 열기 및 닫기 임계값의 모든 관리는 MQL5 마법사에 의해 생성된 Expert Advisor의 입력 매개변수를 통해 이루어집니다.