mql5 언어의 특징, 미묘함 및 작업 방법 - 페이지 52

 
알렉세이 나보이코프 :
코드를 수정하십시오. 첫 번째 함수에 DealsNum 대신 숫자 5가 있습니다. 예, INT_MAX 를 확인하는 것은 의미가 없습니다.

수정했습니다 감사합니다. INT_MAX 확인 - 입력 매개변수가 없으면 EA가 느려지지 않고 낭비되는 HistorySelect가 호출되지 않습니다.

 
히스토리 테이블의 주문은 이루어진 시간(실행/취소되지 않음)으로 정렬됩니다. HistorySelect 를 호출 할 때 이것을 염두에 두십시오.
 
fxsaber :
히스토리 테이블의 주문은 이루어진 시간(실행/취소되지 않음)으로 정렬됩니다.HistorySelect 를 호출 할 때 이것을 염두에 두십시오.

여기에 거래 및 포지션이 어떻게 적용되는지 추가하여 완전한 그림이 되도록 하는 것이 좋습니다.

 
Artyom Trishkin :

여기에 거래 및 포지션이 어떻게 적용되는지 추가하여 완전한 그림이 되도록 하는 것이 좋습니다.

위치에는 방법이 없습니다. 그들은 역사에 없습니다. 트랜잭션의 경우 DEAL_TIME 한 번만 있습니다.

 
fxsaber :

위치에는 방법이 없습니다. 그들은 역사에 없습니다. 트랜잭션의 경우 DEAL_TIME 한 번만 있습니다.

예, 하지만 위치는 현재 목록에 있습니다.

 
Artyom Trishkin :

예, 하지만 위치는 현재 목록에 있습니다.

설명해주세요 이해가 안되요

 
fxsaber :

설명해주세요 이해가 안됩니다.

헤지 계정의 PositionsTotal()은 무엇을 반환합니까? 직위 수 . 그들은 같은 목록에 있습니다. 어떻게 정렬됩니까? 나는 이것에 대해 이야기했습니다.

 
Artyom Trishkin :

헤지 계정의 PositionsTotal()은 무엇을 반환합니까? 직위 수 . 그들은 같은 목록에 있습니다. 어떻게 정렬됩니까? 나는 이것에 대해 이야기했습니다.

이해했다. 나는 나 자신을 위해 이 순간을 명확히 하지 않았다. 왜냐하면. 필요할 수 있는 상황에 직면하지 않았습니다.

 

에이전트 작업 배치의 첫 번째 패스(예: 단일 테스터 실행 중)에서 Expert Advisor 시작과 첫 번째 NewTick 이벤트 사이의 시간은 몇 초가 걸릴 수 있습니다. 팩의 다음 패스에서 이 시간은 0입니다.

작업 일괄 처리의 마지막 단계 에이전트는 이전 작업보다 최대 10% 더 오래 수행합니다.

 
// Перемещение папки. Описание такое же, как у FileMove - https://www.mql5.com/ru/docs/files/filemove
bool FolderMove( const string FolderNameSrc, const string FolderNameDst, const int Common_Flag = 0, const int Mode_Flags = FILE_REWRITE )
{
  if (FolderNameSrc == FolderNameDst)
    return(false);

  string FileName;
  const long handle = ::FileFindFirst(FolderNameSrc + "\\*", FileName, Common_Flag);

  bool Res = false;

  if (handle != INVALID_HANDLE)
  {
    do
    {
      const string TmpFileNameSrc = FolderNameSrc + "\\" + FileName;
      const string TmpFileNameDst = FolderNameDst + "\\" + FileName;

      if (::FileIsExist(TmpFileNameSrc, Common_Flag))
        Res = ::FileMove(TmpFileNameSrc, Common_Flag, TmpFileNameDst, Mode_Flags);
      else
      {
        const string TmpFileNameSrc2 = ::StringSubstr(TmpFileNameSrc, 0, ::StringLen(TmpFileNameSrc) - 1);
        const string TmpFileNameDst2 = ::StringSubstr(TmpFileNameDst, 0, ::StringLen(TmpFileNameDst) - 1);

        if (!FolderMove(TmpFileNameSrc2, TmpFileNameDst2, Common_Flag, Mode_Flags))
          Res = ::FolderCreate(TmpFileNameDst2, Mode_Flags & FILE_COMMON);
      }
    }
    while (::FileFindNext(handle, FileName));

    ::FileFindClose(handle);
  }

  return(::FolderDelete(FolderNameSrc, Common_Flag) && Res);
}
Документация по MQL5: Файловые операции / FileMove
Документация по MQL5: Файловые операции / FileMove
  • www.mql5.com
Файловые операции / FileMove - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5