Для каждой выполняющейся mql5-программы поддерживается ряд предопределенных переменных, которые отражают состояние текущего ценового графика на момент запуска программы - эксперта, скрипта или пользовательского индикатора. Значение предопределенным переменным устанавливает клиентский терминал перед запуском mql5-программы на выполнение...
감사합니다. 프로그래밍 논리의 이러한 기본 사항에 대해 무엇을 더 읽어야 할까요? 기본적인 것 같지만 처음부터 추측하기는 어렵습니다.
조건을 추가했고 모든 것이 작동했습니다.
갑자기 (그러나 평소와 같이) ObjectGetInteger(0,objectName,OBJPROP_TYPE)가 더 빠릅니다.
ObjectFind는 동기식 명령으로 차트 개체의 완전한 업데이트(및 가용성)를 기다립니다. 사용 시 상당한 지연이 발생합니다.
자신의 개체(즉, 응용 프로그램에서 만든 개체)로 작업하는 경우 ObjectFind를 사용 하면 안 됩니다. 개체가 생성된 창과 개체가 존재할 가능성이 가장 높고 원하는 유형이라는 것을 이미 알고 있습니다. 최대 문제 - 사용자가 개체를 삭제하거나 속성을 변경했다는 사실
좋아요 여러분!
질문: 막대의 높낮이를 결정하는 가장 쉬운 방법은 무엇입니까?
바 개점 / 폐점 시간 은 흥미롭지 않습니다.
MT4에서.
고맙습니다!
이거 했어
KB https://www.mql5.com/en/code/25897 에 게시됨
MT4에는 미리 정의된 이중 Ask 변수가 있었고 제가 이해하는 한, 강제되지 않은 내부 void OnTick()
RereshRates는 값을 변경하지 않았습니다.
MT5에서 Ask는 MqlTick last_tick으로 대체되었습니다. SymbolInfoTick(_Symbol,last_tick); 이중 Ask=last_tick.ask; 그 값은 항상 새로운 틱으로 업데이트됩니다 .
내 문제는 Ask + X 값으로 선의 좌표를 설정해야 하지만 MT5에서는 값이 변경된 후 선의 좌표가 변경되기 때문에 더 이상 이 작업을 수행할 수 없다는 것입니다.
Ask=last_tick.ask. 당신은 무엇을 조언합니까?
MT4에는 미리 정의된 이중 Ask 변수가 있었고 제가 이해하는 한, 강제되지 않은 내부 void OnTick()
RereshRates는 값을 변경하지 않았습니다.
MT5에서 Ask는 MqlTick last_tick으로 대체되었습니다. SymbolInfoTick(_Symbol,last_tick); 이중 Ask=last_tick.ask; 그 값은 항상 새로운 틱으로 업데이트됩니다 .
내 문제는 Ask + X 값으로 선의 좌표를 설정해야 하지만 MT5에서는 값이 변경된 후 선의 좌표가 변경되기 때문에 더 이상 이 작업을 수행할 수 없다는 것입니다.
Ask=last_tick.ask. 당신은 무엇을 조언합니까?
이것은 어떻게 변하지 않았습니까? 매 틱마다 변경됩니다. 그러나 사이클에서는 예, 변경되지 않았습니다. 어쩌면 당신은 이것으로 엉망이 되었습니까?
그러나 mql5에서도 사이클 이전에 현재 가격을 결정할 수 있으며 사이클을 종료할 때까지 변경되지 않습니다.
OBJ_TEXT 에 작성된 텍스트의 너비를 픽셀 단위로 측정하는 방법이 있습니까?
이것은 어떻게 변하지 않았습니까? 매 틱마다 변경됩니다. 그러나 주기에서는 예, 변경되지 않았습니다. 어쩌면 당신은 이것으로 엉망이 되었습니까?
그러나 mql5에서도 사이클 이전에 현재 가격을 결정할 수 있으며 사이클을 종료할 때까지 변경되지 않습니다.
예, 감사합니다. 내 가정이 잘못된 것으로 판명되었지만 질문은 조금 다릅니다. MT4 및 MT5 에 대해 동일한 코드가 있습니다.
문제는 MT4 에서 생성된 라인이 생성된 가격으로 고정되고 MT5에서 매번 새로운 틱에서 라인이 새로운 LastAsk 값으로 그려지고 그 위치가 가격과 함께 변경된다는 것입니다. MT5에서 이것을 어떻게 피할 수 있습니까?
예, 감사합니다. 내 가정이 잘못된 것으로 판명되었지만 질문은 조금 다릅니다. MT4 및 MT5 에 대해 동일한 코드가 있습니다.
문제는 MT4 에서 생성된 라인이 생성된 가격으로 고정되고 MT5에서 매번 새로운 틱에서 라인이 새로운 LastAsk 값으로 그려지고 그 위치가 가격과 함께 변경된다는 것입니다. MT5에서 이것을 어떻게 피할 수 있습니까?
이름으로 줄이 있는지 확인하십시오. 아니오 - 생성합니다. 이것들은 일반적인 기본 사항입니다
감사합니다. 프로그래밍 논리의 기본 사항에 대해 무엇을 더 읽어야 할까요? 기초적인 것 같지만 처음부터 추측하기는 어렵습니다.
조건을 추가했고 모든 것이 작동했습니다.
감사합니다. 프로그래밍 논리의 이러한 기본 사항에 대해 무엇을 더 읽어야 할까요? 기본적인 것 같지만 처음부터 추측하기는 어렵습니다.
조건을 추가했고 모든 것이 작동했습니다.
갑자기 (그러나 평소와 같이) ObjectGetInteger(0,objectName,OBJPROP_TYPE)가 더 빠릅니다.
ObjectFind는 동기식 명령으로 차트 개체의 완전한 업데이트(및 가용성)를 기다립니다. 사용 시 상당한 지연이 발생합니다.
자신의 개체(즉, 응용 프로그램에서 만든 개체)로 작업하는 경우 ObjectFind를 사용 하면 안 됩니다. 개체가 생성된 창과 개체가 존재할 가능성이 가장 높고 원하는 유형이라는 것을 이미 알고 있습니다.
최대 문제 - 사용자가 개체를 삭제하거나 속성을 변경했다는 사실
예, 감사합니다. 내 가정이 잘못된 것으로 판명되었지만 질문은 조금 다릅니다. MT4 및 MT5 에 대해 동일한 코드가 있습니다.
문제는 MT4 에서 생성된 라인이 생성된 가격으로 고정되고 MT5에서 매번 새로운 틱에서 라인이 새로운 LastAsk 값으로 그려지고 그 위치가 가격과 함께 변경된다는 것입니다. MT5에서 이것을 어떻게 피할 수 있습니까?
그래서 나는 기억이 나지 않지만 확인이 필요하지만 꺼려합니다. mql4에서는 이미 존재하는 이름으로 객체를 생성하려고 할 때 단순히 오류가 반환되었지만 mql5에서는 더 이상 오류가 아니라 좌표가 다른 경우 매개변수 수정이 반환되었을 수 있습니다.
Artyom이 말했듯이 - 물체의 존재를 확인하십시오