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

 
Interesting :

작동, 3개의 DC에서 테스트됨(DC에서 거래되는 모든 상품의 열거)

이렇게 시도

   for ( int li= 0 ; li< SymbolsTotal (true); li++)
  {
   PrintFormat ( SymbolName (li,true));
  } 
OnTick으로 인해 이것은 단지 예일 뿐입니다.
 
ddd06 :

그래서 그것에 대해 사실과 작동하지 않는 연설!

   for ( int li= 0 ; li< SymbolsTotal (false); li++)
  {
   PrintFormat ( "%s" , SymbolName (li,false));
  }
이것이 올바른 방법입니다. 기능을 사용하여 정보를 표시 하기 때문에
 PrintFormat(....) не путать с Print(.......)
 
sergey1294 :
이것이 올바른 방법입니다. 기능을 사용하여 정보를 표시하기 때문에
감사합니다. 이해하지 못했을 뿐인데 질문은 여전히 열려 있습니다. :)
 
ddd06 :
감사합니다. 이해하지 못했을 뿐인데 질문은 여전히 열려 있습니다. :)

실제 인용문(실제, 데모 및 아마도 참가자)에서 이 코드는 잘 작동합니다. 3개의 터미널에서 확인했습니다(초기화 중에 호출됨)

   for ( int li= 0 ; li< SymbolsTotal (true); li++)
  {
  // PrintFormat ( SymbolName ( li, true )) ;
  //Так конечно правильней, но первый вариант тоже проходит за милую душу...
  PrintFormat ( "%s" , SymbolName (li, true ));
  } 

그것은 시장 개요에 15 쌍을 보여줍니다.


정상적인 테스트 중에는 "선택된 모든 문자 ... " 아마도 모든 문자를 표시할 것입니다(그러나 한 번에 하나씩 변경).


추신

간단히 말해서 테스터에는 전문가가 거래하는 고유한 기호 목록(다중 통화인 경우)이 있어야 하고 DC에 표시된 목록과 비교해야 합니다.

 

확실히 멋지긴 한데, 제 생각에는 이것이 결점 이라고 생각합니다.

양해 해 주셔서 감사합니다.

흥미롭게도, 첫 번째 게시물에서는 지금까지 아무도 답변하지 않았습니다. 아마도 그들이 쓸 수 있을 것입니다. 다음 빌드에서 수정할 것입니다.

 

기록의 주문 및 거래 수가 반환되지 않습니다.

 TerminalInfoInteger ( TERMINAL_BUILD ) 279
 void OnStart ()
  {
     Print ( "+---------------------------------------------------------+" );    
     Print ( "PositionsTotal() " , PositionsTotal ());
     Print ( "HistoryDealsTotal() " , HistoryDealsTotal ());
     Print ( "OrdersTotal() " , OrdersTotal ());
     Print ( "HistoryOrdersTotal() " , HistoryOrdersTotal ());    
  }

인쇄물

주문 내역

 
Urain :

기록의 주문 및 거래 수가 반환되지 않습니다.


먼저 다음 함수를 사용하여 기록을 로드해야 합니다.

 HistorySelect ( 0 , TimeCurrent ())
 
Valmars :

먼저 다음 함수를 사용하여 기록을 로드해야 합니다.


예, 감사합니다. 모든 것이 작동합니다. 설명서를 더 피울게요:o)

사용자와 어드바이저의 흐름이 분리되어 있다고 생각할 수 없었습니다.

역사가 전시되어 있기 때문에 고문이 읽어야 할 것 같았습니다.

그러나 터미널이 고문을 위한 자체 공간을 만드는 것이 더 정확할 것입니다.

정보 선택이 명백히 고유한 형식으로 훨씬 빠르고,

많은 사람들이 mql-4에서 히스토리가 주기적으로 로드되는 버퍼로 이와 유사한 것을 구현했습니다.

 
Urain :

예, 감사합니다. 모든 것이 작동합니다. 설명서를 더 피울게요:o)

사용자와 어드바이저의 흐름이 분리되어 있다고 생각할 수 없었습니다.

역사가 전시되어 있기 때문에 고문이 읽어야 할 것 같았습니다.

그러나 터미널이 고문을 위한 자체 공간을 만드는 것이 더 정확할 것입니다.

정보 선택이 명백히 고유한 형식으로 훨씬 빠르고,

많은 사람들이 기록이 주기적으로 로드되는 버퍼로 mql-4에서 이와 유사한 것을 구현했습니다.


불행히도 스크립트, Expert Advisors 및 터미널을 위한 공간은 공유됩니다. 예를 들어 마지막 날(일)에 대한 히스토리를 터미널에서 호출한 다음 위의 기능을 스크립트인 어드바이저에서 실행하면 이를 확인할 수 있습니다. 그리고 단말기의 히스토리도 '전체 히스토리'로 변경된 것을 확인할 수 있습니다. 이것이 터미널의 단점이라고 생각합니다. 여러 스크립트, 전문가가 있고 각각 고유한 기록을 요청한다고 상상해 보십시오. 터미널의 기록이 (시각적으로) 점프하지만 필요합니까? 결국 Expert Advisors의 작업과 상관없이 현재 상태를 표시하려면 'History' 탭이 필요합니다.

또한, 터미널의 히스토리는 종종 지연으로 업데이트됩니다. i. 거래가 이루어지고 포지션이 마감되지만 '내역' 탭에 나타나지 않습니다. 일단 이야기가 업데이트되기를 특별히 기다렸습니다. 분 경과.... 기다리지 않았습니다... '내역' 탭에서 내역을 요청하는 컨텍스트 명령이나 내역을 요청하는 스크립트를 실행한 후에만 나타납니다.

 
ddd06 :

확실히 멋지긴 한데, 제 생각에는 이것이 결점 이라고 생각합니다.

정리해주셔서 감사합니다.

흥미롭게도, 첫 번째 게시물에서는 지금까지 아무도 답변하지 않았습니다. 아마도 그들이 쓸 수 있을 것입니다. 다음 빌드에서 수정할 것입니다.

결함은 형식 문자열을 명시적으로 사용하지 않고 PrintFormat 을 사용하고 있다는 것입니다.

다음 빌드에서 무엇을 수정해야 합니까?

Документация по MQL5: Общие функции / Print
Документация по MQL5: Общие функции / Print
  • www.mql5.com
Общие функции / Print - Документация по MQL5