포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 311

 
ALXIMIKS :

안녕하세요, 질문한 내용을 다시 설명합니다. 명확하지 않습니다.


응답해 주셔서 감사합니다. 내 EA에서:

if(조건)

{2개의 바이스톱 및 셀스톱 주문 개설}

위치 중 하나가 열리면 가장 가까운 주문이 삭제되고 가장 가까운 주문이 삭제되어야 합니다. 왜냐하면 현재로서는 실제 가격과 다른 다른 주문이 있을 수 있기 때문입니다.

오픈 포지션 카운터 + 스크립트를 사용하여 여기에서 주문을 삭제할 수 있습니다.

 
PGM5 :


위치 중 하나가 열리면 가장 가까운 주문이 삭제되고 가장 가까운 주문이 삭제되어야 합니다. 왜냐하면 현재로서는 실제 가격과 다른 다른 주문이 있을 수 있기 때문입니다.

오픈 포지션 카운터 + 스크립트를 사용하여 여기에서 주문을 삭제할 수 있습니다.


용어를 배우십시오. 그렇지 않으면 구체적으로 필요한 것을 이해하는 것이 여전히 문제입니다.

두 개의 보류 중인 주문을 넣었습니다. 하나가 열리면 무엇을 삭제해야 합니까?

가장 가까운 순서는 멋진 개념, 열린 위치 또는 반대 방향으로 다음 순서입니까, 아니면 반대 보류중인 것을 삭제해야한다는 말씀이십니까?

다른 영장이 있습니다 - 어디에서 왔습니까? 수동 거래에서? 동일한 Expert Advisor에서 제공되지만 다른 조건에서 열려 있습니까?

구체적인 답변이 필요합니까 아니면 질문만큼 멍청합니까? (질문을 공식화하는 데 추가 시간을 할애하십시오 - 모두가 이점을 얻을 것입니다)

 
ALXIMIKS :

이 글을 읽으면서 글을 읽지 못하고 오히려 게으르다는 비난을 받았던 제 자신이 생각나는데, 이제는 제가 더 많이 틀렸다는 것을 깨닫게 되었습니다.

1) 그림이란 무엇인가? (당신의 이해에서)

2) MACD에서 발산을 찾기 위한 기본 함수는 무엇입니까?

3) 검색 엔진에 "다이버전스"를 쓰고 "코드 베이스" 카테고리에서 세 번째 링크를 선택하는 것이 그렇게 어렵습니까?

(누군가가 당신에게 준비된 것을주고 모든 것을 씹기를 희망한다면-희망, 사람들은 우리와 다릅니다 : 신자와 그렇지 않습니다)



나는 당신이 proxemics가 무엇인지 알기를 바랍니다! 당신이 우리가 없든 없든 당신의 의견으로는 포럼이 형이상학으로 서로를로드하는 것으로 판명되었습니다.

Risovalka - 차트 출력 포함.

기본 기능은 복잡한 표현식을 사용하지 않고 MQL4 튜토리얼만 사용하여 사용할 수 있는 기능입니다.

MACD 다이버전스를 결정할 때 표시기 버퍼를 사용하는 방법:

그것을 이해하는 방법?

 for (i=limit- 1 ; i>= 0 ; i--) 
     {
      BufferMacdMain[i]   = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_MAIN, i);
      BufferMacdSignal[i] = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_SIGNAL, i);
      BufferMacdOsMA[i]   = BufferMacdMain[i] - BufferMacdSignal[i];
      BufferTop[i]        = EMPTY_VALUE ;
      BufferBottom[i]     = EMPTY_VALUE ;
      BufferCross[i]      = EMPTY_VALUE ;
 
       double main2 = BufferMacdMain[i + 2 ];
       double main1 = BufferMacdMain[i + 1 ];
       double sig2  = BufferMacdSignal[i + 2 ];
       double sig1  = BufferMacdSignal[i + 1 ];
 
       if ((main1>=sig1 && main2<sig2) || 
         (main1<sig1 && main2>=sig2))
 
Burger :


나는 당신이 proxemics가 무엇인지 알기를 바랍니다! 당신이 우리가 없든 없든 당신의 의견으로는 포럼이 형이상학으로 서로를로드하는 것으로 판명되었습니다.

Risovalka - 차트 출력 포함.

기본 기능은 복잡한 표현식을 사용하지 않고 MQL4 튜토리얼만 사용하여 사용할 수 있는 기능입니다.

MACD 다이버전스를 결정할 때 표시기 버퍼를 사용하는 방법:

그것을 이해하는 방법?


먼저, 발산이 무엇이며 그것을 결정하기 위해 얼마나 많은 값이 필요한지 이해하십시오. 여기에 예가 있습니다.
 
Burger :


나는 당신이 proxemics가 무엇인지 알기를 바랍니다! 당신이 우리가 없든 없든 당신의 의견으로는 포럼이 형이상학으로 서로를로드하는 것으로 판명되었습니다.

Risovalka - 차트 출력 포함.

기본 기능은 복잡한 표현식을 사용하지 않고 MQL4 튜토리얼만 사용하여 사용할 수 있는 기능입니다.

MACD 다이버전스를 결정할 때 표시기 버퍼를 사용하는 방법:

그것을 이해하는 방법?


이것은 심령술사 클럽이 아닙니다. 적절한 답변이 필요한 경우 적절한 질문을 하십시오. 공식화하는 방법을 모르는 경우 멀리 떨어져 있지만 명확하고 특정 개인이 이 용어나 저 용어로 무엇을 의미하는지 백 번 물어볼 필요가 없도록 멀리 가십시오.

기본 함수는 복잡한 표현식을 사용하지 않는 함수입니다. 아주 멋진.

루프 닫는 괄호가 없는 코드, 조건 뒤에 함수가 없는 코드 - 무엇을 원하십니까?

for (i=limit- 1 ; i>= 0 ; i--)       //цикл  расчета нерассчитанных баров, наверное
     {
      BufferMacdMain[i]   = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_MAIN, i);   // расчет значения основной   линии масд на i баре
      BufferMacdSignal[i] = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_SIGNAL, i); // расчет значения сигнальной линии масд на i баре
      BufferMacdOsMA[i]   = BufferMacdMain[i] - BufferMacdSignal[i];   // разница основной и сигнальной линии масд на i баре
      BufferTop[i]        = EMPTY_VALUE ;                               // буфер заполняется EMPTY_VALUE на i баре (не рисуется на графиках)
      BufferBottom[i]     = EMPTY_VALUE ;                               // буфер заполняется EMPTY_VALUE на i баре (не рисуется на графиках)
      BufferCross[i]      = EMPTY_VALUE ;                               // буфер заполняется EMPTY_VALUE на i баре (не рисуется на графиках)
 
       double main2 = BufferMacdMain[i + 2 ];                           // переменная берет значение основной линии масд на i+2 баре с массива BufferMacdMain
       double main1 = BufferMacdMain[i + 1 ];                           // переменная берет значение основной линии масд на i+1 баре с массива BufferMacdMain
       double sig2  = BufferMacdSignal[i + 2 ];                         // переменная берет значение сигнальной линии масд на i+2 баре с массива BufferMacdSignal
       double sig1  = BufferMacdSignal[i + 1 ];                         // переменная берет значение сигнальной линии масд на i+1 баре с массива BufferMacdSignal
 
       if ((main1>=sig1 && main2<sig2) ||                       // если main1>=sig1 и main2<sig2 тогда будет выполнятся условие (сигнальная пересекает основную снизу вверх)
         (main1<sig1 && main2>=sig2))                         // если main1<sig и main2>=sig2 тогда будет выполнятся условие  (сигнальная пересекает основную сверху вниз)
 
ALXIMIKS :


용어를 배우십시오. 그렇지 않으면 구체적으로 필요한 것을 이해하는 것이 여전히 문제입니다.

두 개의 보류 중인 주문을 넣었습니다. 하나가 열리면 무엇을 삭제해야 합니까?

가장 가까운 순서는 멋진 개념, 열린 위치 또는 반대 방향으로 다음 순서입니까, 아니면 반대 보류중인 것을 삭제해야한다는 말씀이십니까?

다른 영장이 있습니다 - 어디에서 왔습니까? 수동 거래에서? 동일한 Expert Advisor에서 제공되지만 다른 조건에서 열려 있습니까?

구체적인 답변이 필요합니까 아니면 질문만큼 멍청합니까? (질문을 공식화하는 데 추가 시간을 할애하십시오 - 모두가 이점을 얻을 것입니다)

예, 모든 것을 올바르게 이해했습니다. 하나의 주문을 열 때 반대 보류 중인 주문을 삭제해야 합니다. 다른 주문은 동일한 고문의 것이지만 다른 조건에서 열립니다.

미리 감사드립니다.

 
PGM5 :

예, 모든 것을 올바르게 이해했습니다. 하나의 주문을 열 때 반대 보류 중인 주문을 삭제해야 합니다. 다른 주문은 동일한 고문의 것이지만 다른 조건에서 열립니다.

미리 감사드립니다.


내가 원하는 것을 올바르게 이해했다면 이 메커니즘을 OCO(하나는 다른 하나를 취소 - 하나는 다른 하나를 취소)라고 합니다. 예를 들어, 이러한 비율은 "시장 주문"(MT4의 관점에서)에 대한 테이크 및 스톱과 관련됩니다. 하나(테이크 또는 스톱)는 작동하고 두 번째는 자동으로 삭제되며 전체 구현은 그렇게 사소한 작업이 아닙니다. . 매우 복잡한 알고리즘이라는 의미가 아니라 단순히 해결되지 않는다는 의미입니다. 주문에 대한 병렬 계정을 작성해야 합니다. 주문이 연결된 속성을 입력하고 추적합니다. 내가 틀리지 않았다면 이 메커니즘은 MT5에서도 구현되지 않았지만 교환 터미널의 경우 이것이 표준 기능이며 서버 측에서 작동합니다.

클라이언트 측에서 메커니즘을 구현하여 마법을 "놀이"하는 것이 가능합니다(그렇다면 "매우" 어렵지는 않을 것입니다). 하나만 남아 있어야 하는 모든 주문은 동일한 마법을 갖습니다. 확인할 때: 시장 하나가 있으면 나머지는 모두 삭제됩니다. 그런 다음 마법이 생성되어야 합니다. 마술사를 위한 별도의 배열을 할당하십시오. 한 쌍 이상의 주문을 동반해야 할 수도 있습니다. 따라서 전역 변수 나 파일에 쓰는 것 모두 마법을 잃을 수 없습니다. 더 전역적으로 수행되면(주문의 연결성뿐만 아니라 전문가가 자신의/그녀를 결정하도록 고려) 회계 메커니즘이 더 복잡해집니다. 마법은 이미 복합적이며 이는 실제로 보완해야 합니다. 일반 주문 배치 알고리즘에 의해 "기본"(귀하의 용어로) 기능을 사용하여 수행할 수 있는 것보다 훨씬 더 깊숙이 확장되지만 여전히 클라이언트 측에 있습니다. 즉, 터미널이 꺼지거나 연결이 끊어진 경우, 작동하지 않습니다(주문 추적).

 
VladislavVG :

내가 올바르게 이해하면 원하는 것 :이 메커니즘을 OCO (One Cansel Other - 하나는 다른 캔슬)라고합니다. 예를 들어, 이러한 비율은 "시장 주문"(MT4의 관점에서)에 대한 테이크 및 스톱과 관련됩니다. 하나(테이크 또는 스톱)는 작동하고 두 번째는 자동으로 삭제되며 전체 구현은 그렇게 사소한 작업이 아닙니다. . 매우 복잡한 알고리즘이라는 의미가 아니라 단순히 해결되지 않는다는 의미입니다. 주문에 대한 병렬 회계를 작성해야 합니다. 주문이 연결된 속성을 입력하고 추적합니다. 내가 틀리지 않았다면 이 메커니즘은 MT5에서도 구현되지 않았지만 교환 터미널의 경우 이것이 표준 기능이며 서버 측에서 작동합니다.

클라이언트 측에서 메커니즘을 구현하여 마법으로 "놀이"하는 것이 가능하지만(그렇다면 "별로 어렵지는 않을 것입니다): 하나만 남아 있어야 하는 모든 주문은 동일한 마법을 갖습니다. 확인할 때: 시장 하나가 있으면 나머지는 모두 삭제됩니다. 그런 다음 마법이 생성되어야 합니다. 마술사를 위한 별도의 배열을 할당하십시오. 한 쌍 이상의 주문을 동반해야 할 수도 있습니다. 따라서 전역 변수를 사용하거나 파일에 쓰기 작업을 수행할 때 매직이 손실될 수 없습니다. 더 전역적으로 수행되면(주문의 연결성뿐만 아니라 전문가가 자신의/그녀를 결정하도록 고려) 회계 메커니즘이 더 복잡해집니다. 마법은 이미 복합적이며 이는 실제로 보완해야 합니다. 일반 주문 배치 알고리즘에 의해 "기본"(귀하의 용어로) 기능을 사용하여 수행할 수 있는 것보다 훨씬 더 깊숙이 확장되지만 여전히 클라이언트 측에 있습니다. 즉, 터미널이 꺼지거나 연결이 끊어진 경우, 작동하지 않습니다(주문 추적).



죄송합니다, 그렇게 복잡한지 몰랐습니다. 시스템을 단순화하는 방법에 대해 생각하겠습니다.

 
PGM5 :

죄송합니다, 그렇게 복잡한지 몰랐습니다. 시스템을 단순화하는 방법에 대해 생각하겠습니다.



돕기 위해.
 


이것은 매우 "적당한" 구현일 뿐이며 확장할 수 없습니다. 시장이 있는 경우 지정된 도구에 대해 주어진 마법으로 고문의 모든 주문 또는 모든 주문 삭제합니다. 즉, 기기(매직 포함/비매직)에 의해 이루어진 모든 주문은 OCO 비율과 관련이 있다고 간주합니다.

전혀 그렇지 않을 수도 있습니다. 예를 들어, 20개의 발주된 주문 중 2~3개의 그룹이 2~3개의 연결된 주문이 있을 수 있고 나머지는 전혀 연결되지 않습니다. 이 Expert Advisor는 이러한 회계로 확장할 수 없습니다. 모든 것을 다시 작성해야 하거나 수동 모드에서 이 Expert Advisor를 사용할 수 있습니다. 그런 다음 연결된 주문 그룹의 마법 기록을 수동으로 유지하고 다음만큼 많은 Expert Advisor를 "중단"해야 합니다. 거래에는 주문 그룹이 있습니다.

사유: