라이브러리: MT4Orders 퀵리포트 - 페이지 8

 
Edgar Akhmadeev #:

물론 그래픽 파일 관리자는 아마추어를 위한 것입니다. 습관의 문제입니다. 저는 텍스트 기반 NortonCommander에서 플러그인이 많은 FarCommander로 전환한 적이 있습니다.

DOS에서 NC 아날로그를 즐겁게 사용했습니다. 그러나 FAR은 이유도 모른 채 즉시 끔찍한 혐오감을 불러 일으켰습니다. 나는 열정없이 TC를 시도했습니다 (펌핑 된 버전, 아무것도 조정하지 않았습니다)-그것은 완벽하게 작동했습니다.

저는 아직도 NC를 잘 기억하고 FAR은 떨리는 마음으로 기억합니다. 제가 만난 모든 프로그래머는 FAR만 사용하지만요.

 
fxsaber #:

TotalCommander에서는 키 하나만 누르면 소스를 비교합니다. 모든 인코딩을 다른 인코딩과 쉽게 비교할 수 있습니다.

예, 로컬에서도 사용합니다. 하지만 더 편리한 소프트웨어와 타사 서비스가 있습니다. 모든 곳에서 인코딩이 "중요하지 않은" 것은 아닙니다.

 

업데이트: 몇 가지 사항이 추가되었습니다.

1) 턴오버 차트가 매수, 매도 및 그 금액에 대한 손익 차트로 대체되었습니다. 이렇게 하면 전략이 강세인지 약세인지 이해할 수 있습니다. 수익성이 없는 경우 거래 방향 중 하나를 끄기로 결정할 수 있습니다.


2) 시간 및 요일별 수익 및 손실 그래프.

MQ 테스터와 달리 수익과 손실은 발생 시점이 아닌 거래 진입 시점을 기준으로 표시됩니다. 따라서 특정 시간대의 진입은 대부분 수익성이 없다는 것을 더 쉽게 이해할 수 있으며 해당 시간대의 진입은 간단히 해제할 수 있습니다.
또한 구매 및 판매에 대한 차트도 제공됩니다.


이러한 차트를 클릭하면 시간 및 날짜별로 정확한 금액이 표시된 표를 볼 수 있습니다. 입력에서 시간 및 요일을 비활성화하는 데 사용할 수 있는 확인란도 있어 차트와 테이블이 다시 작성되고 추가 테스트 없이 결과를 평가할 수 있습니다. Fxsaber의 BestInterval과 유사하지만 더 거칠고(1시간 단계) 자동화가 없습니다. 단계를 줄이기 위해 M10 간격이 추가되었습니다.

이 차트에서 짧은 테스트 기간 동안 시간별 또는 일별 수익의 일부 폭발을 볼 수 있습니다. 위 차트에서 테스트는 5개월 동안의 상승 추세입니다. 따라서 매수는 이익이고 매도는 손실입니다. 테스트를 1년 이상으로 늘리면 양방향으로 몇 가지 큰 추세가 지나가면 모든 것이 고르게 번지고 일반적으로 수익성이 떨어지므로 무언가를 끄고 수익에 큰 변화를 가져올 수 없을 것입니다.

다음은 1 년 동안 테스트와 동일한 전략이 된 것입니다 (거의 모든 것을 꺼야 함).

따라서 전략의 기초가 될 것 같지는 않습니다.

BestInterval
BestInterval
  • www.mql5.com
Вычисление лучшего интервала торговли.
 

코드를 다음과 같이 변경하는 것이 좋습니다.

// void QuickReport(string file_name, bool is_open_file_in_browser=true, int virtual_number=0, bool hide_account_and_name=false, bool common_path=false, bool fileANSI=true){//
bool QuickReport(string file_name, bool is_open_file_in_browser=true, bool hide_account_and_name=false, bool common_path=false, bool fileANSI=true){//
// ....
    #ifdef __VIRTUAL__
      FileWrite(f,"VIRTUAL_ID="+(string)VIRTUAL::GetNumber(VIRTUAL::GetHandle()) + " " + VIRTUAL::GetID() +";");
    #else // #ifdef __VIRTUAL__
      FileWrite(f,"VIRTUAL_ID=0;");
    #endif // #ifdef __VIRTUAL__ #else
// ....
   return(f!=INVALID_HANDLE);
}


그런 다음 헤더의 예제입니다.

 for (int v = 1 ; v <= VIRTUAL::Total(); v++)
   _VI(v, QuickReport("report_"+(string)v, true));
 
Forester #:

업데이트: 몇 가지 사항이 추가되었습니다.

CustomReport에 보고서 유형을 선택할 수 있는 기능이 추가되었습니다. 이를 통해 백테스트/신호를 살펴볼 수 있어 편리합니다.

Возможности анализа не только своей торговой истории.
Возможности анализа не только своей торговой истории.
  • 2022.07.11
  • www.mql5.com
Семейство терминалов MetaTrader позволяет штатно визуализировать историю торговли открытого счета, бэктестов и Сигналов (мониторинг огромного числа торговых счетов). Ниже пойдет речь об использовании
 
fxsaber #:

코드를 다음과 같이 변경할 것을 제안합니다.

그런 다음 헤더의 예제입니다.

나는 그것을했다

    #ifdef __VIRTUAL__
      FileWrite(f,"VIRTUAL_ID='"+(string)virtual_number+" " + VIRTUAL::GetID() +"';");
    #else // #ifdef __VIRTUAL__
      FileWrite(f,"VIRTUAL_ID='"+(string)virtual_number+" ';");
    #endif // #ifdef __VIRTUAL__ #else

...
return(f!=INVALID_HANDLE);
}

이전 버전과의 호환성을 위해 함수 호출은 변경하지 않고 그대로 두어 작업 코드가 손상되지 않도록 했습니다. 즉, 가상화 번호는 이전과 마찬가지로 virtual_number 변수에서 가져오고 함수는 자체적으로 VIRTUAL::GetID()를 추가합니다.

 
fxsaber #:

코드를 다음과 같이 변경할 것을 제안합니다.


그런 다음 헤더의 예제입니다.

새로운 변형을 만들었습니다.

bool QuickReport(string file_name, bool is_open_file_in_browser=true, int virtual_number=-1, bool hide_account_and_name=false, bool common_path=false, bool fileANSI=true){
    #ifdef __VIRTUAL__
      FileWrite(f,"VIRTUAL_ID='"+(string)(virtual_number<0?VIRTUAL::GetNumber(VIRTUAL::GetHandle()):virtual_number)+" " + VIRTUAL::GetID() +"';");
    #else // #ifdef __VIRTUAL__
      FileWrite(f,"VIRTUAL_ID='"+(string)(virtual_number<0?0:virtual_number)+" ';");
    #endif // #ifdef __VIRTUAL__ #else
...
return(f!=INVALID_HANDLE);
}

virtual_number - 가상 테스터 번호 (-1 - 자동으로 결정됨, 0 - MT5 테스터, >0 - 가상 테스터)

이제 기본적으로(가상 번호를 지정하지 않은 경우) 이 예제에서와 같이

QuickReport("report_"+(string)v, true))

를 입력하면 가상 번호가 자동으로 정의됩니다.
virtual_number가 지정되어 있고 >=0이면 가상 번호가 표시됩니다.

 
업데이트. 필터 추가.

주문 필터링.

다양한 매개변수별로 주문을 표시하기 위해 많은 필터가 추가되었습니다.


매수, 매도, 매수 제한, 매도 제한, 매수 중지, 매도 중지, 잔고 - 보고서에서 모든 유형의 주문을 제거할 수 있습니다.
기호 - 사용된 상품의 전체 목록을 표시하며 필요한 상품만 선택할 수 있습니다.
매직 - 지정된 매직이 있는 주문만 표시할 수 있습니다
최소 랏, 최대 랏 - 필요한 랏이 있는 주문을 선택할 수 있습니다
마이너스 슬리피지 - 개시 주문 또는 청산 주문에 대해 마이너스 슬리피지가 있는 주문을 별도로 표시할 수 있습니다
스왑 - 스왑이 있는 주문을 표시합니다 >. 0
최소 길이 시간 - 지정한 시간보다 긴 기간의 주문(일, 시간, 분, 초 단위로 지정)
최대 길이 시간 - 지정한 시간보다 짧은 기간의 주문
개시 시간 - 지정한 날짜의 주문 개시 시간
마감 시간 - 지정한 날짜의 주문 마감 시간
TP, SL - TP 또는 SL 트리거로 종료된 주문
이익, 손실 - 이익 또는 손실 주문(수수료 및 스왑은 포함되지 않으며 최종 수익이 마이너스가 될 수 있음)
거부 - 체결되지 않은 주문

재설정 버튼을 사용하면 필터를 기본값으로 재설정하고 필터링 없이 모든 주문을 표시할 수 있습니다.


체결된 MT5 대기 주문

이 주문/포지션의 발동 원인이 된 지정가 주문은 위의 같은 줄에 진한 파란색으로 표시됩니다. 지정가 주문이 체결된 시간, 주문이 체결되기까지 걸린 시간, 지정가 주문 유형(매수 제한, 매도 제한, 매수 중지 또는 매도 중지)이 표시됩니다. 이 정보는 MT5 단말기 또는 테스터에만 표시되며 가상 테스터 또는 MT4는 이 정보를 제공하지 않습니다.

 
Forester #:

MT5 지정가 주문 체결

이 주문/포지션의 발동 원인이 된 지정가 주문은 위의 같은 줄에 진한 파란색으로 표시됩니다. 지정가 주문 설정 시간, 주문 설정부터 발동까지 걸린 시간, 지정가 주문 유형(매수 제한, 매도 제한, 매수 중지 또는 매도 중지)이 지정됩니다.

이 정보는 표시되지 않도록 설정하세요. 아무 소용이 없습니다. 특히 주문이 체결 전에 수정된 경우 더욱 그렇습니다.
 
fxsaber #:
이 정보를 표시하지 않도록 선택해 주세요. 아무 소용이 없습니다. 특히 주문이 실행 전에 수정된 경우에는 더욱 그렇습니다.
기본적으로 숨겨져 있습니다. define ORDER_PARENT에 의해 활성화됩니다.