해도에 설치된 인디케이터의 버퍼 읽기 - 페이지 8

 
comp :

답변(전체 인용):

킥애스! 차트에서 지표를 볼 수 있지만 그 값을 제공하지는 않습니다. 우리는 다시 한 번 우리의 역할을 확인했습니다.

무슨 소란인지 이해가 안 가요. 결국 차트에 동일한 지표가 여러 개 있으면 어떻게 될까요? 어느 것을 읽을까? 어떻게든 번호를 매겨야 합니까?

둘째, 이 불필요한 변덕을 만족시키기 위해 지표 작업의 전체 시스템을 얼마나 깊이 다시 해야 하는지 상상할 수 있습니까?

지금 당장은 실수처럼 보입니다. 그런 다음 코드에 기름을 바르고 잘라내면 모든 것이 작동할 것입니다. 작동하지 않습니다.

안정적으로 쟁기질하는 것을 만질 필요가 없습니다.

 
Andrey Khatimlianskii :

그렇다면 왜 그들을 비교합니까?

그렇다면 예를 들어 논리적으로 다른 MA와 RSI를 비교하는 이유는 무엇입니까?
 
Alexey Volchanskiy :

무슨 소란인지 이해가 안 가요. 결국 차트에 동일한 지표가 여러 개 있으면 어떻게 될까요? 어느 것을 읽을까? 어떻게든 번호를 매겨야 합니까?

MT4에서도 이미 번호가 매겨져 있습니다. ChartIndicatorNameChartIndicatorsTotal 을 참조하십시오.

둘째, 이 불필요한 변덕을 만족시키기 위해 지표 작업의 전체 시스템을 얼마나 깊이 다시 해야 하는지 상상할 수 있습니까?

다시 할 필요가 없습니다. GetPtr 을 통해 이는 아키텍처에 대한 간섭 없이 기본적으로 수행됩니다. 타사 버퍼 항목을 제외하고 DLL을 사용하지 않고 표준 기능만 추가하면 됩니다.

아이커스텀차트

해당 차트에서 지정된 사용자 지정 지표 의 숫자 값을 반환합니다 .

 double   iCustomChart( 
   long   chart_id,       // идентификатор графика (аналогичный, как в ChartIndicatorName)
   int    sub_window,     // номер подокна (аналогичный, как в ChartIndicatorName)
   int    index,         // индекс индикатора в списке индикаторов, добавленных к данному подокну графика (аналогичный, как в ChartIndicatorName)
   int    mode,           // источник данных (аналогичный, как в iCustom)
   int    shift           // сдвиг (аналогичный, как в iCustom)
   );

옵션

차트 ID

【인】 차트 ID입니다. 0은 현재 차트를 의미합니다.

하위 창

【인】 차트 하위 창 번호입니다. 0은 기본 차트 창을 의미합니다.

인덱스

【인】 표시기 목록의 표시기 인덱스입니다. 지표의 번호는 0부터 시작합니다. 즉, 목록의 맨 처음 지표에는 0의 인덱스가 있습니다. 목록의 표시기 수는 ChartIndicatorsTotal() 함수를 사용하여 얻을 수 있습니다.

방법

【인】 표시줄 인덱스입니다. 0에서 7까지의 값을 취할 수 있으며 SetIndexBuffer() 함수를 호출할 때 지정된 인덱스에 해당합니다.

옮기다

【인】 표시기 버퍼에서 수신한 값의 인덱스(현재 막대를 기준으로 지정된 기간 전에 이동).

반환 값

해당 차트에서 지정된 사용자 지정 지표 의 숫자 값입니다 .

 
comp :
그렇다면 예를 들어 논리적으로 다른 MA와 RSI를 비교하는 이유는 무엇입니까?

가격 기반 MA 또는 RSI 기반 MA?

가격이라면 물론 - 고문을 통해 (이 두 가지 지표를 논리적으로 결합한 사람입니다).
RSI에 의한 경우 하나의 지표에 있습니다(이미 RSI와 MA에 대한 정보가 모두 포함됨).

아니면 차트에 첨부된 지표를 가져와 분석할 수 있는 일종의 범용 생성자에 포인트가 있습니까?
그러면 더 편리할 수 있습니다. 그러나 분석기에서 지표 자체를 검사하면 지표 자체가 상호 작용해야 하는 이유는 아직 명확하지 않습니다...

 
Andrey Khatimlianskii :

아니면 차트에 첨부된 지표를 가져와 분석할 수 있는 일종의 범용 생성자에 포인트가 있습니까?

그러면 더 편리할 수 있습니다. 그러나 분석기에서 지표 자체를 검사하면 지표 자체가 상호 작용해야 하는 이유는 아직 명확하지 않습니다...

표시기 자체는 구성 논리에 의해 제공되는 상호 작용성 개체입니다. 표시기가 정적이어야 하는 이유는 명확하지 않습니다.

완전히 어리석은 예라면 눈금 표시기 를 사용하겠습니다. 버퍼에 일부 틱 데이터를 쓰도록 합니다. 동시에 OnCalculate만 사용했습니다.

차트에 매달려 있는 동안 그는 버퍼에서 일부 데이터를 수집했습니다. 파일에 던지는 처방이 누락되었습니다(잊었거나 추측하지 못함 - 다시).

차트에 표시되는 데이터가 흥미로워서 파일로 덤프하고 싶었습니다. 그것을 하는 방법? - 안 돼요!

데이터를 볼 수는 있지만 읽을 수는 없습니다. 글쎄, WinAPI를 통해 CTRL + D 창을 어떻게든 구문 분석하는 것을 제외하고. 그리고 상호 작용이 없습니다.

 
comp :

표시기 자체는 구성 논리에 의해 제공되는 상호 작용성 개체입니다. 표시기가 정적이어야 하는 이유는 명확하지 않습니다.

완전히 어리석은 예라면 눈금 표시기 를 사용하겠습니다.

상호 작용에 대해 설득했습니다. 동의합니다.
그러나 그 예는 다시 손가락에서 빨려들어갑니다(잊어버린/간과된/전혀 생각하지 않았습니다).

그러한 기회가 대화형 지표에 유용할 것이라는 사실에 대해 생각해 봅시다.
하지만 현재 현실에서는 모든 것을 어드바이저를 통해 구현해야 합니다.

 
Andrey Khatimlianskii :

그러나 그 예는 다시 손가락에서 빨려들어갑니다(잊어버린/간과된/전혀 생각하지 않았습니다).

저것들. 시장에서 지표를 구매할 때 정상이지만 프로그래밍 방식으로 해당 값을 얻을 수 없습니다. 당신은 그를 볼 수 있습니다. EA에 삽입하는 것은 번거로운 일입니다.

 
comp :

저것들. 시장에서 지표를 구매할 때 정상이지만 프로그래밍 방식으로 해당 값을 얻을 수 없습니다. 당신은 그를 볼 수 있습니다. EA에 삽입하는 것은 번거로운 일입니다.

iCustom을 통해 삽입할 수 있지만 시장에서 받은 표시기의 코드를 Advisor에 삽입하는 것은 항상 번거로운 일입니다.
 
Alexander Bereznyak :
iCustom을 통해 삽입할 수 있습니다.
그리고 여기에서 자세히 조사한 일부 경우에는 차트에서 볼 수 있는 것과 전혀 다릅니다.
 
comp :
그리고 여기에서 자세히 조사한 일부 경우에는 차트에서 볼 수 있는 것과 전혀 다릅니다.

표시기는 0 막대뿐만 아니라 히스토리도 다시 그립니다. 표시기는 0 값이 아닌 음수 값을 가지고 있기 때문에 속이기 때문에 - 나는 하나 이상을 보았습니다.

사람들이 이 지표에 속는 것을 보았습니다.