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

 

"if(ichi.TenkanSen(i) < ichi.KijunSen(i))" 라는 표현이 "if(ichi.TenkanSen(i) > ichi.KijunSen(i))"인 경우에도 항상 (모든 양초에 대해) false를 반환하는 이유는 무엇입니까? "? 표준 라이브러리 에 결함이 있는 것 같습니다. 파일의 전체 코드.

 Comment ( DoubleToString (ichi.TenkanSen( 0 ), 5 ));

유로 달러 디스플레이에서

파일:
Ich_1.mq5  3 kb
 
Graff :

"if(ichi.TenkanSen(i) < ichi.KijunSen(i))" 라는 표현이 "if(ichi.TenkanSen(i) > ichi.KijunSen(i))"인 경우에도 항상 (모든 양초에 대해) false를 반환하는 이유는 무엇입니까? "? 표준 라이브러리 에 결함이 있는 것 같습니다. 파일의 전체 코드

첫째, TerminalInfoInteger(TERMINAL_MAXBARS) - 이것은 불가능합니다.

rate_total로 대체


둘째, 예, 일종의 오류, m_data_total 항상 = 0입니다. 따라서 값이 없습니다.

 
sergeev :

첫째, TerminalInfoInteger(TERMINAL_MAXBARS) - 불가능합니다.

rate_total로 대체

for(int i=0; i<=rates_total-1; i++) 로 대체되었습니다. 본질적으로 아무것도 변경되지 않았습니다. 작동하지 않는 것처럼 작동하지 않습니다.
 
둘째, 예, 일종의 오류, m_data_total 항상 = 0입니다. 따라서 값이 없습니다.
 
sergeev :

둘째, 예, 일종의 오류, m_data_total 항상 = 0입니다. 따라서 값이 없습니다.
Comment( DoubleToString (ichi.TenkanSen(3),5)); 댓글의 1,2,3에 같은 내용이 항상 표시됩니다. 작동하도록 조정해야 할 사항을 알려주실 수 있습니까? 그렇지 않으면 공식 수정을 기다릴 방법이 없습니다.
 
Graff :
Comment(DoubleToString(ichi.TenkanSen(3),5)); 댓글의 1,2,3에 같은 내용이 항상 표시됩니다. 작동하도록 조정해야 할 사항을 알려주실 수 있습니까? 그렇지 않으면 공식 수정을 기다릴 방법이 없습니다.
이 클래스를 사용하지 마십시오. 일반 핸들을 가져 가라.
 
sergeev :
이 클래스를 사용하지 마십시오. 일반 핸들을 가져갑니다.

사용하기가 별로 불편하지 않습니다...

알겠습니다. 관심을 가져주셔서 감사합니다. 문제가 해결되기를 기다리고 있습니다.

 
Graff :

사용하기가 너무 불편...

알겠습니다. 관심을 가져주셔서 감사합니다. 문제가 해결되기를 기다리고 있습니다.

당신에게 편리하지 않습니까? :)

 int ich;

//+------------------------------------------------------------------+
int OnInit ()
  {
   ich= iIchimoku ( _Symbol , _Period , TenkanSen, KijunSen, SenkoSpan);
   return ( 0 );
  }
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
    IndicatorRelease (ich);
  }
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
   double ten[]; CopyBuffer (ich, 0 , 0 , rates_total, ten);
   double kij[]; CopyBuffer (ich, 1 , 0 , rates_total, kij);
   for ( int i= 0 ; i<rates_total; i++)
     {
       if (ten[i]<kij[i]) { up.Create( 0 , "Tenkan>Kijun" + IntegerToString (i), 0 ,time[i],low[i]); up.Color( clrLimeGreen ); }
       else { down.Create( 0 , "Tenkan<Kijun" + IntegerToString (i), 0 ,time[i],high[i]); down.Color( clrTomato ); }
     }
   return (rates_total);
  }
 
sergeev :

당신에게 편리하지 않습니까? :)


저는 프로그래머가 아니며 이 상황이 그리 편하지 않습니다.

그리고 그것은 의미가 있습니까

 CopyBuffer (ich, 1 , 0 , rates_total, kij);

rate_total을 BarsCalculated (ich)로 바꾸시겠습니까?

추신: 비밀이 아니라면 어느 도시에서 오셨습니까?

 
Graff :


알겠습니다. 관심을 가져주셔서 감사합니다. 문제가 해결되기를 기다리고 있습니다.

그건 그렇고, 추가 기능을 호출 할 필요가 없다고 확신합니까?

라이브러리에는 RefreshBufferResize 가 있습니다. 정상적인 기능에 필요한 것 같습니다.