모든 거래의 테이블. MQL5를 통한 액세스 - 페이지 2

 
prostotrader :
오류를 찾아 작업을 최적화했습니다.

최적의 성능은 아직 멀었지만 좋은 예입니다. 지금까지 세 가지 주요 브레이크가 있습니다.

1. CopyTiks는 각 OnBookEvent가 시작된 순간부터 모든 틱을 복사합니다.

 int copied= CopyTicks ( Symbol (),ticks, COPY_TICKS_ALL ,start_time, 0 );

실제로 이것은 동적 컷오프를 만들어 최적화할 수 있습니다.

2. OnBookEvent에서 수신된 모든 틱의 전체 열거

 for ( int i= 1 ; i<copied; i++)
{
   if (( ticks[i].flags  & TICK_FLAG_BUY )== TICK_FLAG_BUY )
   {
      buy_deals++;
   }
   else
   if (( ticks[i].flags  & TICK_FLAG_SELL )== TICK_FLAG_SELL )
   {
      sell_deals++;
   }
}

이 또한 원하는 경우 수정할 수 있습니다.

3. OnCalculation의 모든 막대 전체 열거:

 for ( int i=rates_total- 1 ; i> 0 ; i--)
{
   SellBuffer[i]= SellBuffer[i- 1 ];
   BuyBuffer[i] = BuyBuffer[i- 1 ];
}
 
포럼 회원들의 요청으로 지표를 확정했습니다.
파일:
DealsLent.mq5  9 kb
 
Vasiliy Sokolov :

최적의 성능은 아직 멀었지만 좋은 예입니다. 지금까지 두 가지 주요 브레이크가 있습니다.

1. CopyTiks는 각 OnBookEvent가 시작된 순간부터 모든 틱을 복사합니다.

실제로 이것은 동적 컷오프를 만들어 최적화할 수 있습니다.

2. OnBookEvent에서 수신된 모든 틱의 전체 열거

이 또한 원하는 경우 수정할 수 있습니다.

3. OnCalculation의 모든 막대 전체 열거:

감사하지만 모든 곳에서 당신이 옳지는 않습니다.

1. 모든 틱이 아닙니다(자세히 보기)

2. 그리고 그것은 어떻게 필요합니까?

3. 만들기 쉬움

당장 고쳐보자...

 
여기서 수정
파일:
DealsLent.mq5  9 kb
 
prostotrader :

감사하지만 모든 곳에서 당신이 옳지는 않습니다.

1. 모든 틱이 아닙니다(자세히 보기)

2. 만들기 쉬움

3. 만들기도 쉽다

당장 고쳐보자...

예, 실제로 모든 틱이 아닙니다.

세 번째 요점은 무엇을 하기 쉬울지 모르겠습니다. 왜냐하면 표시기는 눈금이므로 진지하게 다시 그려야 합니다.

그러나 일반적으로 모든 것이 윙윙 거리는 소리입니다. 예를 들어 주셔서 감사합니다.

 
prostotrader :
여기서 수정
고맙습니다.
 
Vasiliy Sokolov :

예, 실제로 모든 틱이 아닙니다.

세 번째 요점은 무엇을 하기 쉬울지 모르겠습니다. 왜냐하면 표시기는 눈금이므로 진지하게 다시 그려야 합니다.

그러나 일반적으로 모든 것이 윙윙 거리는 소리입니다. 예를 들어 주셔서 감사합니다.

실제로 지표는 눈금이므로 현재 데이터(최신)만 중요합니다.

사용자가 버퍼에서 더 긴 기록을 가져오려면

이것은 매우 쉽습니다.

비서...

 

여기에서 사용자는 관심 있는 데이터의 크기를 직접 선택할 수 있습니다.

ActSize = 0인 경우 사용 가능한 모든 기록

파일:
DealsLent.mq5  9 kb
 
마무리 손질..
파일:
DealsLent.mq5  10 kb
 

누군가가 무엇이 잘못되었는지 알고 있습니까?

표시기가 올바르게 작동하지만 더 많은 막대가 표시됩니다.

설정에서 완료한 것보다