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

 

안녕하세요!

마지막 거래가 SL에 의해 적중된 경우 트리플 지수 평균 지표를 기반으로 한 전문가 고문이 포지션을 여는 것을 방지할 수 있는 방법을 알려주시겠습니까?

Совершение сделок - Торговые операции - MetaTrader 5
Совершение сделок - Торговые операции - MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 

MQL5
일반 모드에서 어드바이저는 최적화를 시작하자마자 완벽하게 작동합니다. 각 패스에 대해 배열이 범위를 벗어났다고 불평합니다.

그러나 사실 그는 코드를 실행하지도 않습니다. 나는 프로그램 주위에 Prints를 배치했고, 출력은 없었고, 단지 모든 실행에 오류가 있었습니다. 그것이 출력입니다.

인쇄가 작동하지 않는 이유는 무엇입니까?

 
Roman Sharanov :

MQL5
일반 모드에서 어드바이저는 최적화를 시작하자마자 완벽하게 작동합니다. 각 패스에 대해 배열이 범위를 벗어났다고 불평합니다.

그러나 사실 그는 코드를 실행하지도 않습니다. 나는 프로그램 주위에 인쇄를 배치했습니다. 출력은 없었고 모든 실행에서 오류만 발생했습니다. 그것이 출력입니다.

인쇄가 작동하지 않는 이유는 무엇입니까?

배열의 크기를 확인하십시오. 출력이 배열 외부에 있는 행도 표시됩니다. 이 줄 앞에 배열의 크기와 배열 데이터에 액세스하려는 인덱스의 출력을 쓰는 Print를 삽입합니다. 배열의 크기와 인덱스는 로그에 표시되고 그런 다음에만 프로그램이 실수로 충돌합니다.

하지만! 옵티마이저가 아닌 시각적 모드의 테스터에서 이 모든 작업을 수행하십시오. 옵티마이저(및 비시각적 모드의 테스터)에서 인쇄는 모두 속도를 위해 비활성화됩니다.

 
Artyom Trishkin :

배열이 Print()에 도달하기 전에 범위를 벗어납니다.

배열의 크기를 확인하십시오. 출력이 배열 외부에 있는 행도 표시됩니다. 이 줄 앞에 배열의 크기와 배열 데이터에 액세스하려는 인덱스의 출력을 쓰는 Print를 삽입합니다. 배열의 크기와 인덱스는 로그에 표시되고 그런 다음에만 프로그램이 실수로 충돌합니다.

하지만! 옵티마이저가 아닌 시각적 모드의 테스터에서 이 모든 작업을 수행하십시오. 옵티마이저(및 비시각적 모드의 테스터)에서 인쇄는 모두 속도를 위해 비활성화됩니다.

비주얼의 모든 매개 변수에 대해 모든 것이 작동하지만 그 이상으로 최적화하는 것이 문제입니다.

 
Roman Sharanov :

비주얼의 모든 매개 변수에 대해 모든 것이 작동하지만 그 이상으로 최적화하는 것이 문제입니다.

배열에 무엇이 있습니까? 배열에 아직 데이터가 없거나 생각보다 크기가 작다고 추측할 수 있습니다. 프로그램 에서 배열의 크기를 검사합니까?

 
Artyom Trishkin :

배열에 무엇이 있습니까? 배열에 아직 데이터가 없거나 생각보다 크기가 작다고 추측할 수 있습니다. 프로그램에서 배열의 크기를 확인합니까?

마지막 N, 나는 500, macd 값을 가지고 있으며 사이클의 한계는 엄격하게 제한되어 있으며 0보다 작거나 N보다 클 수 없습니다. 디버깅으로 실행하고 종이에 계산했습니다.

 
Roman Sharanov :

마지막 N, 나는 500, macd 값을 가지고 있으며 사이클의 한계는 엄격하게 제한되어 있으며 0보다 작거나 N보다 클 수 없습니다. 디버깅으로 실행하고 종이에 계산했습니다.

액세스할 때 어레이가 데이터로 채워져 있다고 확신합니까? 데이터 가용성을 확인하고 어레이가 원하는 크기인지 확인합니까?

한 장의 종이에 적고 계산한 것이 고문이받은 것 (받지 못한 것)과 일치한다는 것을 의미하지는 않습니다.

 
Artyom Trishkin :

액세스할 때 어레이가 데이터로 채워져 있다고 확신합니까? 데이터 가용성을 확인하고 어레이가 원하는 크기인지 확인합니까?

한 장의 종이에 적고 계산한 것이 고문이받은 것 (받지 못한 것)과 일치한다는 것을 의미하지는 않습니다.

예, 맨 처음에 모든 작업 전에 버퍼에서 복사되었습니다.

 
거래에 수수료와 스왑이 있는 경우 손익분기점을 계산하는 보편적인 공식을 알려주세요.

5자리의 견적과 USD 보증금에 대해 작동하는 간단한 공식이 있습니다.

로트 x 이익(포인트) = 이익($).

이것이 매수이고 거래에 스왑과 커미션이 있는 경우 손익분기점 가격은 시작 가격보다 약간 높습니다.
(스왑 및 커미션이 없는 경우 손익분기점은 시가입니다)

그러나 상품이 이국적이거나 견적이 4자리 또는 2자리이거나 예금 통화 가 파운드인 경우. 위의 공식은 도움이 되지 않습니다.
보편적 인 공식이 있습니까?
 
Roman Sharanov :

예, 맨 처음에 모든 작업 전에 버퍼에서 복사되었습니다.

복사했습니다. 그리고 얼마나 많은 복사가 확인됩니까?

평활화 기능이 있는 지표를 사용하는 경우 생각보다 계산하는 데 막대가 몇 개 더 걸립니다. 따라서 복사한 내용이 아직 데이터가 복사되어 전체를 사용할 수 있음을 의미하지는 않습니다.

배열의 크기 를 확인하고 필요한 크기가 없으면 OnTick()을 종료하는 것이 더 쉽습니다.