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

 
komposter :

확실히, 모두를 위해.

팁 고마워. 나는 OnTimer()에 대해 완전히 잊어 버렸습니다. 통과하고 만족)
 
Rosh :
얼마나 많은 것을 사용할 수 있었는지, 많이 받았습니다. 그러니 이해해. 사용 가능한 기록 깊이를 확인하십시오. 데이터를 요청하기 전에 데이터가 사용 가능한지 확인해야 합니다. 어떤 빌드가 있습니까? 최근에 월별 기간을 복사하는 버그를 수정했습니다. 아마도 이것이 전부일 것입니다.
어떤 빌드를 수정해야 하나요? 489에 버그가 있습니다.
 
marketeer :
이것은 그들이 그것을 잘못 확인했거나 고문이 다중 통화가 아니지만 단순히 다른 기호에서 작동할 수 있음을 의미합니다. 주장은 간단합니다. 진드기가 다른 시간에 다른 기호에 도달한다는 지식입니다. 따라서 EA가 OnTick EURUSD에 있지만(예를 들어) 터키를 확인하거나 EURUSD 대신 GBPUSD로 틱 변경만 확인하면 결과가 달라집니다. 특히 EURUSD에서 형성된 막대는 GBPUSD에서 동일한 시간에 막대가 형성되기 전에 발생할 수 있습니다. 동일한 막대에서 GBPUSD를 두 번 거래합니다. 이전 GBPUSD 막대는 여전히 새 막대(0)로 간주됩니다. 다중 통화 지표 에 대한 모든 것이 분명합니다. 재료를 배우십시오.

Mlyn의 어떤 부분이 체크 메이트인지, 1 쌍에 틱이 와서 입력하고 두 번째 틱이 늦고 x ...

그와 함께 때문에 우리는 새로운 막대가 나타날 때 가격이 필요하고 진드기를 잡아야합니다.

모든 기호에 새 막대를 표시할 목적으로 역할을 하지는 않지만 여기에서

스캘퍼가 아닌 경우 전략에 따라 다릅니다.

 

iCustom() 함수를 작동 상태로 만들 계획이 있는지 MQ 팀에 다시 한 번 묻고 싶습니다.

현재 전문 작가는 iCustom()을 사용하여 고객에게 원스톱 솔루션을 제공할 수 없으며,

클라이언트는 전문가가 사용하는 외부 지표의 이름을 설정할 수 있습니다.

이를 위해서는 고객이 Expert Advisor의 소스 코드를 가지고 있어야 하며, Expert Advisor 코드에 각 지표의 이름을 수동으로 입력해야 하는 불편함이 있습니다.

또한 표시기 버퍼 의 셀 내용 값을 명시적으로 의무적으로 표시해야 하는 문제도 있습니다.

표시기 텍스트의 표시기 버퍼 셀에 명시적 값(비어 있거나 비어 있지 않음)이 명시적으로 할당되지 않은 경우 Expert Advisor의 iCustom() 함수가 표시된 셀을 채울 수 있습니다.

임의 쓰레기. 그런 기능은 옳지 않다고 생각합니다.

 
MoneyJinn :

iCustom() 함수를 작동 상태로 만들 계획이 있는지 MQ 팀에 다시 한 번 묻고 싶습니다.

현재 전문 작가는 iCustom()을 사용하여 고객에게 원스톱 솔루션을 제공할 수 없으며,

클라이언트는 전문가가 사용하는 외부 지표의 이름을 설정할 수 있습니다.

이를 위해서는 고객이 Expert Advisor의 소스 코드를 가지고 있어야 하며, Expert Advisor 코드에 각 지표의 이름을 수동으로 입력해야 하는 불편함이 있습니다.

iCustom에서 호출된 지표의 동적 이름을 전달할 수 있지만 각 사용자 지정 지표에는 고유한 매개변수 세트가 있습니다.

불행히도 " 무엇이 호출되고 어떤 매개변수 를 사용 하여 코드를 건드리지 않고 호출을 구현하는 것이 안전한지 모른 채 어떻게?"라는 질문에 대한 보편적인 솔루션은 없습니다. 우리는 모른다.

내가 올바르게 이해했다면, 제3자 사용자가 Expert Advisor 설정에서 매개변수로 지표 이름을 지정할 때 플러그인 시스템을 생성하려고 합니다(예: "MyIndicator(10,20,50,100)"). 엄격한 이름 형식을 사용하는 경우 문자열을 직접 구문 분석하고 매개변수 블록을 형성하고 다른 매개변수 세트를 사용하여 동적 iCustom 호출을 래퍼 클래스로 구현할 수 있습니다. 즉, 다른 세트/매개변수 수를 사용하여 iCustom을 호출하기 위한 여러 옵션이 내부에 숨겨져 있습니다.


또한 표시기 버퍼 의 셀 내용 값을 명시적으로 의무적으로 표시해야 하는 문제도 있습니다.

표시기 텍스트의 표시기 버퍼 셀에 명시적 값(비어 있거나 비어 있지 않음)이 명시적으로 할당되지 않은 경우 Expert Advisor의 iCustom() 함수가 표시된 셀을 채울 수 있습니다.

임의 쓰레기. 그런 기능은 옳지 않다고 생각합니다.

이것은 이미 버퍼를 채우지 않는 개발자의 뻔뻔스럽고 솔직한 게으름입니다.

런타임 하위 시스템은 표시기 버퍼를 사용하는 방법을 알지 못하며 특히 대량 재할당(교체 또는 차트 업데이트) 중에 값으로 채울 권한이 없습니다. OnCalculate(..., const )를 통해 재계산이 필요한 모든 경우를 표시기에 반드시 통지 int prev_calculated,...) 및 prev_calculated 매개변수.

 
Renat :

iCustom에서 호출된 지표의 동적 이름을 전달할 수 있지만 각 사용자 지정 지표에는 고유한 매개변수 세트가 있습니다.

불행히도 " 무엇이 호출되고 어떤 매개변수 를 사용 하여 코드를 건드리지 않고 호출을 구현하는 것이 안전한지 모른 채 어떻게?"라는 질문에 대한 보편적인 솔루션은 없습니다. 우리는 모른다.

내가 올바르게 이해했다면, 제3자 사용자 가 Expert Advisor 설정에서 매개변수로 지표 이름을 지정할 때 플러그인 시스템을 생성하려고 합니다(예: "MyIndicator(10,20,50,100)"). 엄격한 이름 형식을 사용하는 경우 문자열을 직접 구문 분석하고 매개변수 블록을 형성하고 다른 매개변수 세트를 사용하여 동적 iCustom 호출을 래퍼 클래스로 구현할 수 있습니다. 즉, 다른 세트/매개변수 수를 사용하여 iCustom을 호출하기 위한 여러 옵션이 내부에 숨겨져 있습니다.

코드를 변경해야 하는 문제는 테스트할 때 표시기의 이름을 명시적으로 표시해야 한다는 요구 사항을 의미했습니다.

#property tester_indicator "Name.ex5" 형식이고 다른 수의 표시기 매개변수가 아닙니다.

표시기는 해당 신호가 있는 표시기 버퍼의 수만 선택하여 기본 매개변수와 함께 사용할 수도 있습니다.

레나트 :

이것은 이미 버퍼를 채우지 않는 개발자의 뻔뻔스럽고 솔직한 게으름입니다.

런타임 하위 시스템은 표시기 버퍼를 사용하는 방법을 알지 못하며 특히 대량 재할당(교체 또는 차트 업데이트) 중에 값으로 채울 권한이 없습니다. OnCalculate(..., const )를 통해 재계산이 필요한 모든 경우를 표시기에 반드시 통지 int prev_calculated,...) 및 prev_calculated 매개변수.

iCustom()에서 사용하지 않는 셀에 Empty_Value를 할당하고 스택의 쓰레기로 채우지 않는 것이 정말 어려운가요?

https://www.mql5.com/ru/forum/1111/72233#comment_72233

버퍼 셀의 실제 값은 비어 있음과 동일하게 유지됩니다. 위조를 수행하는 것은 iCustom()입니다.

 
MoneyJinn :

코드를 변경해야 하는 문제는 테스트할 때 표시기의 이름을 명시적으로 표시해야 한다는 요구 사항을 의미했습니다.

#property tester_indicator "Name.ex5" 형식이고 다른 수의 표시기 매개변수가 아닙니다.

문제는 추가로 해결될 것입니다. 약간의 뉘앙스가 있습니다.

iCustom()에서 사용하지 않는 셀에 Empty_Value를 할당하고 스택의 쓰레기로 채우지 않는 것이 정말 어려운가요?

https://www.mql5.com/ru/forum/1111/72233#comment_72233

이것은 할 수 없습니다. 제 답변을 다시 읽어주세요.
 
Renat :

이것은 할 수 없습니다. 제 답변을 다시 읽어주세요.

iCustom()이 실제로 아무것도 채워지지 않은 버퍼 셀에 임의의 값을 할당하는 이유와 이것이 어떤 식으로든 피할 수 없는 이유는 분명하지 않습니다.

나는 이것이 표시기 버퍼 의 해당 데이터 배열에 대한 메모리 할당과 어떻게든 관련이 있다고 가정합니다.

데이터의 출처와 진실을 판별하는 것이 불가능할 때 iCustom()에 의한 그러한 작업은 나에게 받아들일 수 없는 것처럼 보이며 사용자에게 추가적인 위험을 초래합니다.

iCustom()이 이미 실제 값에 해당하지 않는 버퍼 셀에 임의의 값을 할당한 경우,

그렇다면 MT4에서 구현된 대로 이러한 셀에 Empty_Value와 동일한 값을 제공하지 않는 이유는 무엇입니까?

그러면 적어도 그들의 상태는 분명할 것입니다.

 
나는 논쟁하지 않는다
kPeriod2 = kPeriod1 * nextPriod;

Warning : possible loss of data due to type conversion
그래서
kPeriod2 = round (kPeriod1 * nextPriod - 0.5 );

Warning : possible loss of data due to type conversion 
모두 같은 쓰기 반올림이 있으므로 필요합니까?
 
Lodar :
나는 논쟁하지 않는다
그리고 그래서
모든 동일한 쓰기가 반올림되므로 필요합니까?


모든 변수가 같은 유형인지 확인하십시오. 그런 다음 " 캐스팅 유형 " 섹션. 경고는 컴파일 시간에 감지된 암시적 유형 캐스팅으로 인한 것입니다.
Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Основы языка / Типы данных / Приведение типов - Документация по MQL5