MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 100

 
trader781 :

th - 그런 다음 어디로 밀어야하는지 이해하지 못했습니다. 왜 안되는지 (-1)

bool 입력 매개변수가 있습니다.

무효 온틱

{개설 주문 분석, 후행 중지}

무효 후행 정지

{현재 가격이 마감 조건을 충족하는지 여부

그렇다면 우리는 모든 것을 다룹니다.

}

예, 일반적으로 반환됩니다. 이것은 무효입니다

그리고 당신의 논리에 무엇이 있습니까? 나는 모릅니다. 당신이 거기에 무엇을 가지고 있는지 어떻게 제안합니까?
 
trader781 :

세 점

두 번째 이상의 주문을 열어야 하는지 여부를 설정하는 1 포인트 extern

2) 첫 주문을 열어야 하는 조건

3) 주문 마감 시점

내가 직접 코드를 던질 수 있지만 모두에게 동일합니다.

그렇다면 도움이 필요하지 않은 경우 왜 가지를 흩어 놓는가?

메시지 뒤에는 수천 개의 쓸모없는 페이지 중에서 유용하지 않습니다.

추신 아니면 게시물을 최대한 채우는 작업이 있습니까?
 
trader781 :
그런 다음 내가 요구하는 것은 이 세 가지 점에 대한 스위치 회로입니다. 그런 다음 내 게시물이 쓰레기라고 생각되면 삭제하겠습니다.

이 점은 무엇입니까?

두 번째 이상의 주문을 열어야 하는지 여부를 설정하는 1 포인트 extern

2) 첫 주문을 열어야 하는 조건

3) 주문 마감 시점

당신은 당신이 원하는 것을 이해합니까?

2번 항목에 따르면 - 주문은 열 수 없고, 설정만 가능하고, 닫을 수는 없지만 삭제만 가능합니다. 일반적으로 모든 것이 항상 논리적으로 일관성이 없고 흐릿하므로 대리인이 되어야 합니다.

 

다음 코드가 있습니다.

if ( ObjectFind ( 0 ,nm)< 0 ) {
     ObjectCreate ( 0 ,nm, OBJ_TEXT , 0 , 0 , 0 );
     ObjectSetString ( 0 ,nm, OBJPROP_PRICE , TIME( 0 )+ Period ()* 60 * 3 ); // сдвиг вправо на 3 свечи
}

질문: 5개에서 마침표 () 는 H1 숫자 집합에서 M30까지 정상적인 값을 반환하며 더 이상 이러한 방식으로 레이블을 이동할 수 없습니다.

기간에 관계없이 N - 양초로 이동하는 방법은 무엇입니까? 별도의 함수를 작성하지 않는 이유는 무엇입니까?

 
Vitaly Muzichenko :

다음 코드가 있습니다.

if ( ObjectFind ( 0 ,nm)< 0 ) {
     ObjectCreate ( 0 ,nm, OBJ_TEXT , 0 , 0 , 0 );
     ObjectSetString ( 0 ,nm, OBJPROP_PRICE , TIME( 0 )+ Period ()* 60 * 3 ); // сдвиг вправо на 3 свечи
}

질문: 5개에서 마침표 () 는 H1 숫자 집합에서 M30까지 정상적인 값을 반환하며 더 이상 이러한 방식으로 레이블을 이동할 수 없습니다.

기간에 관계없이 N - 양초로 이동하는 방법은 무엇입니까? 별도의 함수를 작성하지 않는 이유는 무엇입니까?

PeriodSeconds ( PERIOD_CURRENT )* 3
 
Artyom Trishkin :
PeriodSeconds ( PERIOD_CURRENT )* 3

고맙습니다!

문제는 이 항목이 얼마나 정확한지, 프로그램의 시작 부분에 있으며 프로그램 전체에서 많은 Time[0] 및 Time[1]이 사용되며 매번 호출되지 않도록 변수로 작성되었습니다. 배열 범위를 벗어난 오류는 없는 것 같지만 모든 것이 표면적으로 정의되어 있습니다.

datetime TM[], TIME0, TIME1;

//------------
void OnTimer ()

ArraySetAsSeries (TM, true );
   if ( CopyTime ( _Symbol , PERIOD_CURRENT , 0 , 2 , TM)==- 1 ) return ;
   TIME0 = TM[ 0 ];
   TIME1 = TM[ 1 ];

고맙습니다!

 
Vitaly Muzichenko :

이 점은 무엇입니까?

두 번째 이상의 주문을 열어야 하는지 여부를 설정하는 1 포인트 extern

2) 첫 주문을 열어야 하는 조건

3) 주문 마감 시점

당신은 당신이 원하는 것을 이해합니까?

2번 항목에 따르면 - 주문은 열 수 없고, 설정만 가능하고, 닫을 수는 없지만 삭제만 가능합니다. 일반적으로 모든 것이 항상 논리적으로 일관성이 없고 흐릿하므로 대리인이 되어야 합니다.

제발. 다음은 매개변수 extern bool OpenOrders=false;//+---Open an order

주문을 열고 닫은 다음 무슨 일이 있어도 리소스를 소모하지 않고 차트에 매달리는 데 필요합니다.

현재 자체 절단 중입니다(작동하지만 패널 요소에는 허용되지 않음).

파일:
 
trader781 :

제발. 다음은 매개변수 extern bool OpenOrders=false;//+---Open an order

주문을 열고 닫은 다음 무슨 일이 있어도 리소스를 소모하지 않고 차트에 매달리는 데 필요합니다.

현재 자체 절단 중입니다(작동하지만 패널 요소에는 허용되지 않음).

나는 그렇게 할 것이다. 코드에 "Disabled" 추가됨

PS 72행을 "if( ! Disabled) return;"으로 교체하십시오. 나는 깃발의 논리가 분명하다고 생각한다.
파일:
 
Vitaly Muzichenko :

나는 그렇게 할 것이다. 코드에 "Disabled"를 추가했습니다.

PS 72행을 "if( ! Disabled) return;"으로 교체하십시오. 나는 깃발의 논리가 분명하다고 생각한다.

아니오, 명확하지 않습니다. 우리는 우리가 왔던 곳으로 돌아갑니다.

1) 비활성화 = 사실

init에서 true로 초기화

온틱으로 건너뛰기 if(!Disabled) return;

오픈 클로즈

비활성화됨=거짓; 산출. 모든것이 좋아.

2) 비활성화=거짓

init에서 true로 초기화

온틱으로 건너뛰기 if(!Disabled) return;

오픈 클로즈

비활성화됨=거짓; 산출. 다음 주문은 어디에서 열 수 있나요? 옵션 중 하나에서 허용해야 합니다.

이제 내가 논리를 설명하도록 요청한 이유가 명확해졌습니까?

2 명의 고문과 나는 옵션을 가지고 있습니다.

 
trader781 :

아니오, 명확하지 않습니다. 우리는 우리가 왔던 곳으로 돌아갑니다.

1) 비활성화 = 사실

init에서 true로 초기화

온틱으로 건너뛰기 if(!Disabled) return;

오픈 클로즈

비활성화됨=거짓; 산출. 모든것이 좋아.

2) 비활성화=거짓

init에서 true로 초기화

온틱으로 건너뛰기 if(!Disabled) return;

오픈 클로즈

비활성화됨=거짓; 산출. 다음 주문은 어디에서 열 수 있나요? 옵션 중 하나에서 허용해야 합니다.

이제 내가 논리를 설명하도록 요청한 이유가 명확해졌습니까?

2 명의 고문과 나는 옵션을 가지고 있습니다.

불명. 고문을 중지해야 하는 경우 제안된 옵션이 이에 대처하고 중지할 필요가 없으면 거래를 허용하고 그를 제한하지 마십시오. 중지 후 주문형 거래를 해야 하는 경우 시간을 전환하면 Disabled가 true가 되고 프로그램이 계속 작동합니다.