오류, 버그, 질문 - 페이지 2856

 

안녕하세요. 오해가 있습니다:
Trade\Trade.mqh를 사용하여 주문을 수정하는 방법은 무엇입니까?
Trade의 OrderModify 명령. mqh   마지막 매개변수를 포함하여 7개의 매개변수를 설정해야 합니다. StopLimit 순서, 마지막 매개변수가 전혀 필요하지 않기 때문에 혼미합니다. 예, 표준 버전에서는 지정할 필요가 없습니다.

OrderModify( const ulong ticket, const double price, const double sl, const double tp, const ENUM_ORDER_TYPE_TIME type_time, const datetime expiration, const double stoplimit= 0.0 );

나는 Sell Stop 이 있고, 낮은 가격을 따라 그것을 위로 이동하고 싶습니다 . 그리고 OrderModify 를 사용하여 그것을 할 수 없으며 Trade\Trade.mqh 를 사용하여 기존 SellStop 주문을 수정하는 방법을 이해하지 못합니다.

지연과 새로운 노출을 통해 오고 있습니다.

Sell Stop 레벨을 올바르게 이동하는 방법은 무엇입니까?

 
Сергей Таболин :

Igor, 질문은 코드 자체의 오류가 아니라 최적화 중에 오류를 작성하지만 단일 실행 중에는 작성하지 않는 이유에 대한 것입니다.

나는 텔레파시를 잘 못해요, 그냥 배우는 중이에요

하지만 .... 코드가 적절한 수준에서 작성되었다고 가정하면 최적화 중에 입력 변수의 값에 도달할 수 있으며 이로 인해 치명적인 오류가 발생합니다.

.... 작업이 옵티마이저에 일괄 처리로 주어졌다는 사실을 모르고 작업 중 하나에 오류가 있다고 가정할 수도 있습니다.

.... 전역 범위 (초기화 또는 클래스 생성자 중 함수 호출이 될 수 있음) 및 최적화 프로그램에서 변수를 초기화하면 초기화가 상수 및 정적에 대해 한 번 수행된다고 가정할 수도 있습니다(비록 보기에는 정적에 대해서만 - 나는 이미 잊어 버렸습니다) 에이전트 당, 전체 최적화 시간 동안, 그리고 단일 패스로 각 패스 ...

... xs

 
Yura Fomin :

안녕하세요. 오해가 있습니다:
Trade\Trade.mqh를 사용하여 주문을 수정하는 방법은 무엇입니까?
Trade의 OrderModify 명령. mqh   마지막 매개변수를 포함하여 7개의 매개변수를 설정해야 합니다. StopLimit 순서, 마지막 매개변수가 전혀 필요하지 않기 때문에 혼미합니다. 예, 표준 버전에서는 지정할 필요가 없습니다.

나는 Sell Stop 이 있고, 낮은 가격을 따라 그것을 위로 이동하고 싶습니다 . 그리고 OrderModify 를 사용하여 그것을 할 수 없으며 Trade\Trade.mqh 를 사용하여 기존 SellStop 주문을 수정하는 방법을 이해하지 못합니다.

지연과 새로운 노출을 통해 오고 있습니다.

Sell Stop 레벨을 올바르게 이동하는 방법은 무엇입니까?

예는 보류 중인 후행 에 있습니다.

Pending Trailing
Pending Trailing
  • www.mql5.com
Советник относится к классу утилит. Работает со всеми отложенными ордерами установленными в терминале. Подтягивает отложенный ордер вслед за ценой. Например отложенные ордера 'Buy stop' и 'Sell limit'...
 
TheXpert :
중괄호 뒤에 세미콜론을 넣을 필요가 없습니다. 아마도 언어가 없을 것입니다.
고맙습니다. 둘 다 정확할 때 구문 모호성은 좋지 않습니다.
 
Igor Makanu :

나는 텔레파시를 잘 못해요, 그냥 배우는 중이에요

하지만 .... 코드가 적절한 수준에서 작성되었다고 가정하면 최적화 중에 입력 변수의 값에 도달할 수 있으며 이로 인해 치명적인 오류가 발생합니다.

.... 작업이 옵티마이저에 일괄적으로 제공된다는 사실을 모르고 작업 중 하나에 오류가 있다고 가정할 수도 있습니다.

.... 전역 범위 (초기화 또는 클래스 생성자 중 함수 호출이 될 수 있음) 및 최적화 프로그램에서 변수를 초기화하면 초기화가 상수 및 정적에 대해 한 번 수행된다고 가정할 수도 있습니다(비록 보기에는 정적에 대해서만 - 나는 이미 잊어 버렸습니다) 에이전트 당, 전체 최적화 시간 동안, 그리고 단일 패스로 각 패스 ...

... xs

))))))

그렇다면 텔레파시란 무엇인가?

배열이 있는데 문제 없이 초기화되어 사용됩니다. 모든 것이 작동합니다. 하지만 나가면 이런 혼란이...

 void OnDeinit ( const int reason)
{
   //Print(ArraySize(netMLP));
   //Print(ArraySize(indicators)+1);
   for ( int i = ArraySize (indicators); i >= 0 ; i--) delete netMLP[i];

모든 것이 확인되었습니다. 그러나 최적화 모드의 동작과 단일 실행의 차이는 분명합니다. 질문 - 왜? 어딘가에서 어떻게 든 문제가 발생하면 "그렇지 않음"이 있어야합니다. 그렇지 않습니까?

 
Сергей Таболин :

)))))))

그래서 텔레파시의 요점은 무엇입니까?

배열이 있는데 문제 없이 초기화되어 사용됩니다. 모든 것이 작동합니다. 하지만 나가면 이런 혼란이...

모든 것이 확인되었습니다. 그러나 최적화 모드의 동작과 단일 실행의 차이는 분명합니다. 질문 - 왜? 어딘가에서 어떻게 든 문제가 발생하면 "그렇지 않음"이 있어야합니다. 그렇지 않습니까?

예의 바르려면 다음과 같이 작성하십시오.

 for ( int i = ArraySize ( netMLP ); i >= 0 ; i--) delete netMLP[i];

따라서 크기가 동일하다는 보장은 없습니다. 어떤 종류의 배열 - 아무도 모릅니다.

 
Stanislav Korotky :

예의 바르려면 다음과 같이 작성하십시오.

따라서 크기가 동일하다는 보장은 없습니다. 어떤 종류의 배열 - 아무도 모릅니다.

나는 그것을 알고있다)))

교체됨. 내가 지적한 오류가 사라졌습니다))) 그러나 다른 하나가 쏟아지고 있습니다.

 2020.09 . 24 22 : 48 : 38.470 Core 3   pass 11877 tested with error "OnInit returned non-zero code 1" in 0 : 00 : 00.000

다시 말하지만 이전 릴리스에서는 그렇지 않았습니다.

return(INIT_FAILED);

하지만 그것들은 모두 지문이 선행됩니다... 그리고는 지문이 없습니다. (((

 
Сергей Таболин :

그냥 파일에 쓰기:

- 플래그 최적화 켜기/끄기

- 대리인 번호

- 그리고 OnDeinit()에서 사용되는 모든 변수

이것이 없으면 버그를 찾을 수 없습니다. 최적화 프로그램은 문제없이 작동하며 지속적으로 사용합니다.

 
Сергей Таболин :

나는 그것을 알고있다)))

교체됨. 내가 지적한 오류가 사라졌습니다))) 그러나 다른 하나가 쏟아지고 있습니다.

다시 말하지만 이전 릴리스에서는 그렇지 않았습니다.

최적화 테이블에서 해당 패스를 두 번 클릭하고 모든 세부 정보(정확히 초기화가 실패한 이유)가 포함된 단일 실행 로그를 가져옵니다. 이는 소스의 행과 열을 나타냅니다.

 
Igor Makanu :

그냥 파일에 쓰기:

- 플래그 최적화 켜기/끄기

- 대리인 번호

- 그리고 OnDeinit()에서 사용되는 모든 변수

이것이 없으면 버그를 찾을 수 없습니다. 최적화 프로그램은 문제없이 작동하며 지속적으로 사용합니다.

좋아요, 모든 기록을 파일에 다시 연결하겠습니다. 아마도 이전에는 없었던 이유가 있습니다 ...