초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 803

 

간단한 질문입니다.

이대로 사이클을 종료할 수 있습니까? 아니면 이 단순함이 공짜가 아닌가?

 while ( 1 )
{
 .........
 if (............ ) return ;
 ..........
}
 

질문 하나 더.

MqlTick 구조 가 있으며 필드가 있습니다.

          시간_msc ; // 마지막 가격 업데이트 시간(밀리초)

내가 이해하는 한 time_msc 는 1970년 이후의 밀리초 수를 저장합니다.

매개변수가 있는 CopyTick 함수가 있습니다.

  울롱              from=0 , // 틱이 요청된 날짜

도움말에는 "틱이 요청된 날짜입니다. 1970년 1월 1일부터 밀리초로 지정됨"이라고 나와 있습니다.

주의 질문입니다.

MqlTick 구조와 CopyTick 함수 매개변수에서 서로 다른 데이터 유형이 사용되는 이유는 무엇입니까? 결국 1970년부터 시간이 여기 저기에 저장되어 있습니다.

 
pivomoe :

질문 하나 더.

MqlTick 구조 가 있으며 필드가 있습니다.

          시간_msc ; // 마지막 가격 업데이트 시간(밀리초)

내가 이해하는 한 time_msc 는 1970년 이후의 밀리초 수를 저장합니다.

매개변수가 있는 CopyTick 함수가 있습니다.

  울롱              from=0 , // 틱이 요청된 날짜

도움말에는 "틱이 요청된 날짜입니다. 1970년 1월 1일부터 밀리초로 지정됨"이라고 나와 있습니다.

주의 질문입니다.

MqlTick 구조와 CopyTick 함수 매개변수에서 서로 다른 데이터 유형이 사용되는 이유는 무엇입니까? 결국 1970년부터 시간이 여기 저기에 저장되어 있습니다.

ulong - 부호 없는 long 유형

 
나도 알아 한 경우에는 서명된 유형을 사용하고 다른 경우에는 서명하지 않은 유형을 사용하는 이유는 무엇입니까? 사례는 비슷합니다.
 
pivomoe :

간단한 질문입니다.

이렇게 루프를 종료할 수 있습니까? 아니면 이 단순함이 공짜가 아닌가?

무슨 걱정? 조건별 실행 완료. 루프를 종료해야 하는 경우에만 반환하지 않고 중단합니다.

 
Alexey Viktorov :

무슨 걱정? 조건별 실행 완료. 루프를 종료해야 하는 경우에만 반환하지 않고 중단합니다.

returnom 루프에서 그런 종료 후 메모리 소비를 이해하지 못합니까?
 
pivomoe :
returnom 루프에서 그런 종료 후 메모리 소비를 이해하지 못합니까?

왜 그럴까요? 헛소리로 머리를 채우지 마십시오. 이 출력은 빠르게 작동합니다.

 

마켓을 통해 다운받은 무료 유틸리티(지표)를 단말기에서 어떻게 거부할 수 있나요? 삭제는 도움이 되지 않습니다. 오랫동안 제거되었지만 제품 업데이트에 대한 메시지를 지속적으로 받습니다.

 

여러분, 상황을 이해하도록 도와주세요. 테스터에 고문이 있고 모든 것이 오류와 문제 없이 진행되며 데모 계정 에서도 문제가 없으며 시장에서 고문을 로드할 때 Autotester는 다음과 같이 씁니다.

2016.04.01 00:00:12 즉시 매도 실패 0.10 EURUSD at 1.13780 sl: 1.14030 tp: 1.13030 [유효하지 않은 거래량]
2016.04.01 00:00:24 즉시 매도 실패 0.10 EURUSD at 1.13779 sl: 1.14029 tp: 1.13029 [유효하지 않은 거래량]
2016.04.01 00:00:59 즉시 매도 실패 0.10 EURUSD at 1.13782 sl: 1.14032 tp: 1.13032 [유효하지 않은 거래량]
2016.04.01 00:01:00 즉시 매도 실패 0.10 EURUSD at 1.13793 sl: 1.14043 tp: 1.13043 [유효하지 않은 거래량]
2016.04.01 00:01:08 즉시 매도 실패 0.10 EURUSD at 1.13783 sl: 1.14033 tp: 1.13033 [유효하지 않은 거래량]
2016.04.01 00:01:17 즉시 매도 실패 0.10 EURUSD at 1.13784 sl: 1.14034 tp: 1.13034 [유효하지 않은 거래량]
2016.04.01 00:01:25 즉시 매도 실패 0.10 EURUSD at 1.13774 sl: 1.14024 tp: 1.13024 [유효하지 않은 거래량]
2016.04.01 00:01:34 즉시 매도 실패 0.10 EURUSD at 1.13776 sl: 1.14026 tp: 1.13026 [유효하지 않은 거래량]
2016.04.01 00:01:59 즉시 매도 실패 0.10 EURUSD at 1.13778 sl: 1.14028 tp: 1.13028 [유효하지 않은 거래량]
2016.04.01 00:02:00 즉시 매도 실패 0.10 EURUSD at 1.13778 sl: 1.14028 tp: 1.13028 [유효하지 않은 거래량]
2016.04.01 00:02:08 즉시 매도 실패 0.10 EURUSD at 1.13776 sl: 1.14 026 tp: 1.13026 [유효하지 않은 거래량]

아래의 기능 코드:

OpenPos( NormalizeDouble (Lot, 2 ), NormalizeDouble ( Bid , _Digits ), NormalizeDouble (_sl, _Digits ), NormalizeDouble (_tp, _Digits ), ORDER_TYPE_SELL ,MagicSell,Comm);
 void OpenPos( const double volume, const double price, const double stop, const double take, const ENUM_ORDER_TYPE o_type, const int magic, const string coment= NULL )
{
   MqlTradeRequest request={ 0 };
   MqlTradeResult result={ 0 };
   
   string t=(o_type== ORDER_TYPE_BUY )? "Buy" : "Sell" ;
   
   ZeroMemory (request);
   ZeroMemory (result);
   
   request.action= TRADE_ACTION_DEAL ;
   request.symbol= Symbol ();
   request.volume=volume;
   request.type=o_type;
   request.magic=magic;
   request.price=price;
   request.sl=stop;
   request.tp=take;
   request.comment=coment;
   
   if (IsFillingTypeAllowed( Symbol (), SYMBOL_FILLING_FOK ))
      request.type_filling= ORDER_FILLING_FOK ;
   else if (IsFillingTypeAllowed( Symbol (), SYMBOL_FILLING_IOC ))
      request.type_filling= ORDER_FILLING_IOC ;
   else
      request.type_filling= ORDER_FILLING_RETURN ;
   
   if (! OrderSend (request,result))
       PrintFormat ( "Can't open position %s error %i" ,t, GetLastError ());
}
 
Andrii Djola :

여러분, 상황을 이해하도록 도와주세요. 테스터에 고문이 있고 모든 것이 오류와 문제 없이 진행되며 데모 계정 에서도 문제가 없으며 시장에서 고문을 로드할 때 Autotester는 다음과 같이 씁니다.

OrderCheck의 결과와 전체 구조를 인쇄합니다. OrderSend와 동일합니다.

10개의 다른 거래 서버에서 데모 계정을 엽니다. 그리고 거기에서 코드를 시도하십시오. 마켓에서 확인할 때 재현되는 거래 서버의 일부 기능이 고려되지 않는 경우가 대부분입니다.+

그리고 LastError를 인쇄하는 것을 잊지 마십시오. 이 모든 것을 함께하면 오류의 원인을 매우 빠르게 이해할 수 있습니다.

사유: