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

 
AlexInRush :

안녕하세요!

Forts에서 한 잔의 주문을 교환하는 로봇을 어떻게 디버깅할 수 있습니까? 실행 에뮬레이션 모드에서 유리 기록을 재생하거나 실제 데이터로 작업하기 위한 도구가 있습니까? 인쇄 및 주석을 사용하여 실생활에서 디버깅하는 것 외에는 생각할 수 없습니다. 때로는 저렴하지 않습니다.(

시장에 있습니다. 코드 베이스에서는 그렇지 않은 것 같습니다.

 
Stanislav Korotky :

시장에 있습니다. 코드 베이스에서는 그렇지 않은 것 같습니다.

좋은 오후, 스타니슬라프.

OrderBook History Library에 대한 설명을 알게 되었습니다. 모든 것을 올바르게 이해했다면 이 라이브러리를 로봇에 연결할 때 주문서의 표준 이벤트를 에뮬레이터의 이벤트로 바꿀 수 있습니다. 전략 테스터 에서 플레이할 때 DOM 기록의 번역은 테스터의 틱 기록과 동기화됩니다. 각각의 실행 에뮬레이션은 테스터의 틱 기록에 따라 평소와 같습니다. 모든 것을 올바르게 이해했다면 이것이 내가 찾고 있던 것 같습니다. 감사합니다. 시도하겠습니다!

 
AlexInRush :

좋은 오후, 스타니슬라프.

OrderBook History Library에 대한 설명을 알게 되었습니다. 모든 것을 올바르게 이해했다면 이 라이브러리를 로봇에 연결할 때 주문서의 표준 이벤트를 에뮬레이터의 이벤트로 바꿀 수 있습니다. 전략 테스터 에서 플레이할 때 DOM 기록의 번역은 테스터의 틱 기록과 동기화됩니다. 각각의 실행 에뮬레이션은 테스터의 틱 기록에 따라 평소와 같습니다. 모든 것을 올바르게 이해했다면 이것이 내가 찾고 있던 것 같습니다. 감사합니다. 시도하겠습니다!

포럼에서 제품을 언급하거나 논의할 수 없습니다. 제품에 대한 질문은 개인적으로 작성하십시오.

 

그래픽 리소스를 생성하면서 이상한 점을 발견했습니다! MQL5로 작성된 동일한 코드 변형은 훌륭하게 작동하지만 MQL4에서는 전혀 작동하지 않습니다! 모든 것이 완전히 동일하고 단순해 보입니다.

     string path= "::Images\\AAA.bmp" ;
     string path1= "\\Images\\AAA.bmp" ;

     if (! ResourceCreate (path,path1))
     {
       Print ( __FUNCTION__ + ", Error=" + string ( GetLastError ()));
       return ( false );
     }

결과적으로 Metatrader 4 의 차트에 표시기를 설치할 때 다음과 같은 이점이 있습니다.

개는 어디에 묻혔습니까?

Документация по MQL5: Операции с графиками / ChartIndicatorAdd
Документация по MQL5: Операции с графиками / ChartIndicatorAdd
  • www.mql5.com
//| Expert initialization function                                   |                                                                                       ); "Внимание! %s: Попробуем добавить индикатор MACD(%s/%s) на график %s/%s. Получим ошибку 4114"                         subwindow...
 
Nikolay Kositsin :

그래픽 리소스를 생성하면서 이상한 점을 발견했습니다! MQL5로 작성된 동일한 코드 변형은 훌륭하게 작동하지만 MQL4에서는 전혀 작동하지 않습니다! 모든 것이 완전히 동일하고 단순해 보입니다.

결과적으로 Metatrader 4 의 차트에 표시기를 설치할 때 다음과 같은 이점이 있습니다.

개는 어디에 묻혔습니까?

예, MT4에서는 작동하지 않습니다.
그러나 반면에 이 더 짧은 구조는 MT5와 MT4 모두에서 작동합니다.

 #resource   "\\Images\\AAA.bmp"
string path= "::Images\\AAA.bmp" ;

uint bmp[], w,h;
ResourceReadImage (path,bmp,w,h);

파일:
Morph.mq4  9 kb
iCanvas.mqh  49 kb
Images.zip  731 kb
 
Nikolai Semko :

예, MT4에서는 작동하지 않습니다.
그러나 반면에 이 더 짧은 구조는 MT5와 MT4 모두에서 작동합니다.


감사합니다. 그러나 이러한 구성은 컴파일할 때만 이미지를 로드하지만 직장에서 컴파일된 파일로 로드해야 합니다. 그렇다면 MQL4 의 ResourceCreate() 함수 는 어떤 식으로든 작동하지 않습니까? 혼란스러운 상황에 처한 개발자들이 코드를 추가하는 것을 잊은 것은 아닐까?

Документация по MQL5: Общие функции / ResourceCreate
Документация по MQL5: Общие функции / ResourceCreate
  • www.mql5.com
[in]  Относительный путь к файлу, содержащему данные для ресурса. Если путь начинается с обратной косой черты "\" (пишется "\\"), то файл ищется относительно папки Если второй вариант функции вызывается для...
 
이 주제와 관련이 없는 댓글은 " MQL4 MT4 MetaTrader 4 초보자의 질문 "으로 이동되었습니다.
 
Nikolay Kositsin :

감사합니다. 그러나 이러한 구성은 컴파일할 때만 이미지를 로드하지만 직장에서 컴파일된 파일로 로드해야 합니다. 그렇다면 MQL4 의 ResourceCreate() 함수 는 어떤 식으로든 작동하지 않습니까? 혼란스러운 상황에 처한 개발자들이 코드를 추가하는 것을 잊은 것은 아닐까?

아마도.
결국 ResourceReadImage는 비교적 최근에 수정되었습니다.
 
오류 메시지 없음:
 class B {
enum E { function };
         void function() {} // нормально ???
         void g() { function(); }
};

그래서 다음이 있습니다:

 class A {
public :
         void function() {}
};
class B : public A {
enum E { function };
         void g() { function(); } // Error: ')' - expression expected
};

그리고 근본적인 차이점은 무엇입니까?

 
삼항 연산자로 컴파일 실패
연산자 ?의 컴파일 오류 :

 interface A{};
class B: public A{};
class C: public A{};
void OnStart ( void )
  {
   A* x=( true )? new B : new C; //invalid cast operation
  }


어떠한 제안?
왜요?