기고글 토론 "Expert Advisor 작성시 MQL5 Standard Trade Class 라이브러리 사용" - 페이지 3 1234 새 코멘트 Yedelkin 2011.02.26 18:24 #21 COrderInfo 클래스에도 줄이 있습니다.return(FormatType(str,Type())); ... FormatType(type,Type()) ... if(m_type==Type() && m_state==State() && 그러나 클래스에는 Type() 함수가 없습니다. Yedelkin 2011.02.26 19:10 #22 이 문서의 섹션 1.4에서는 설명에 따라 활성 대기 주문과 함께 작동하도록 설계된 COrderInfo 클래스의 기능을 제공합니다."이 클래스를 사용하여 보류 중인 주문의 속성을 가져오려면 먼저 총 주문 수를 요청하고 주문 티켓별로 선택하는 것이 좋습니다."//지정한 기간 동안의 모든 과거 주문을 선택합니다. if (HistorySelect(0,TimeCurrent())) // 모든 주문 { // 총 주문 수 가져오기 int o_total = OrdersTotal(); } 그러나 HistorySelect() 함수가"거래 및 주문 내역", 즉 과거 주문을 쿼리하도록 설계된 경우총 활성 대기 주문 수를 쿼리할 때 이 함수를 사용하는 이유는 무엇인가요? Yedelkin 2011.02.26 19:26 #23 Yedelkin: 주문 정보 클래스에서 ... 그러나 클래스에는 Type() 함수가 없습니다.CDealInfo 및 CPositionInfo 클래스에서도 같은 상황입니다. Yedelkin 2011.02.26 21:42 #24 누군가 설명해 주시겠어요? 다음은 CDealInfo 클래스의 코드 조각입니다://+------------------------------------------------------------------+ //|DealInfo.mqh | //+------------------------------------------------------------------+ #include <Object.mqh> #include "SymbolInfo.mqh" //+------------------------------------------------------------------+ //| 클래스 CDealInfo.| //| 약속: 히스토리 거래 정보에 액세스할 수 있는 클래스입니다. //| CObject 클래스에서 파생됩니다.| //+------------------------------------------------------------------+ class CDealInfo : public CObject { ... public: ... //--- 문자열 위치 속성에 대한 빠른 액세스 메서드 string Symbol() const; ... }; ... //+------------------------------------------------------------------+ //| 속성 값 "DEAL_SYMBOL." || 가져옵니다. //| INPUT: no.| //| OUTPUT: 속성 값 "DEAL_SYMBOL". || //|| REMARK: no.| //+------------------------------------------------------------------+ string CDealInfo::Symbol() const { return(HistoryDealGetString(m_ticket,DEAL_SYMBOL)); // 바보같이 반환 } ... //+------------------------------------------------------------------+ //| 거래 매개변수를 텍스트로 변환합니다. //| INPUT:str - 수신 문자열,| //| 거래 - 클래스 인스턴스에 대한 포인터. //| 출력: 형식이 지정된 문자열.| //|| REMARK: no.| //+------------------------------------------------------------------+ string CDealInfo::FormatDeal(string& str) const { string type,volume,price,date; CSymbolInfo symbol; //--- 설정 symbol.Name(Symbol()); int digits=symbol.Digits(); //--- 거래에 대한 설명을 작성합니다. switch(Type()) { ... } //--- 결과를 반환합니다. return(str); } ... //+------------------------------------------------------------------+ CDealInfo::FormatDeal(문자열& str) 함수에는 이 줄이 포함되어 있습니다: symbol.Name(Symbol()); 차례로 Symbol() 함수는 CDealInfo 클래스 자체와 클라이언트 터미널의 표준 함수 모두에 정의되어 있습니다. symbol.Name() 함수에 인자로 전달되는 함수는 무엇인가요? 어떤 규칙에 의해? Mykola Demko 2011.02.26 22:37 #25 Yedelkin:누군가 설명해 주시겠어요? 다음은 CDealInfo 클래스의 코드 조각입니다: CDealInfo::FormatDeal(문자열& str) 함수에는 이 줄이 포함되어 있습니다: 차례로 Symbol() 함수는 CDealInfo 클래스 자체와 클라이언트 터미널의 표준 함수 모두에 정의되어 있습니다. symbol.Name() 함수에 인자로 전달되는 함수는 무엇인가요? 어떤 규칙에 의해?변수 범위와 동일한 규칙이 여기에도 적용됩니다. 변수가 전역 및 로컬 수준에서 하나의 이름으로 선언된 경우 로컬 범위 내에서는 이름이 로컬 변수를 가리키고 외부에서는 전역 변수를 가리킵니다.클래스 내에서 표준 함수가 오버로드되면 오버로드 본문은 클래스 자체에서 호출되고 표준 함수의 본문은 전역 수준에서 호출됩니다. 오버로드된 함수의 본문은 클래스 포인터를 통해 전역 수준에서 호출할 수 있습니다. Yedelkin 2011.02.26 22:49 #26 Urain:변수 범위와 동일한 규칙이 여기에도 적용됩니다. 변수가 전역 및 로컬 수준에서 동일한 이름으로 선언된 경우 로컬 범위 내에서는 이름이 로컬 변수를 가리키고, 외부에서는 전역 변수를 가리킵니다. 클래스 내에서 표준 함수가 오버로드되면 오버로드 본문은 클래스 자체에서 호출되고 표준 함수의 본문은 전역 수준에서 호출됩니다. 오버로드된 함수의 본문은 클래스 포인터를 통해 전역 수준에서 호출할 수 있습니다. 정말 감사합니다! 명확하고 이해하기 쉽습니다! investeo 2012.01.01 15:12 #27 심도 있는 기사를 작성해 주신 사무엘님께 감사드립니다. 정말 감사합니다. Tonny Obare 2013.01.16 07:22 #28 이해하기 쉽고 멋진 [삭제] 2016.01.17 17:57 #29 아주 좋은 기사입니다! 참고 자료로 활용하고 있습니다. Amy Liu 2017.01.04 07:52 #30 1.4장에서는 주문 내역을 사용하여 주문 정보를 설명하는데 맞나요? 1234 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
COrderInfo 클래스에도 줄이 있습니다.
return(FormatType(str,Type())); ... FormatType(type,Type()) ... if(m_type==Type() && m_state==State() &&
그러나 클래스에는 Type() 함수가 없습니다.
이 문서의 섹션 1.4에서는 설명에 따라 활성 대기 주문과 함께 작동하도록 설계된 COrderInfo 클래스의 기능을 제공합니다."이 클래스를 사용하여 보류 중인 주문의 속성을 가져오려면 먼저 총 주문 수를 요청하고 주문 티켓별로 선택하는 것이 좋습니다."
그러나 HistorySelect() 함수가"거래 및 주문 내역", 즉 과거 주문을 쿼리하도록 설계된 경우총 활성 대기 주문 수를 쿼리할 때 이 함수를 사용하는 이유는 무엇인가요?주문 정보 클래스에서 ...
그러나 클래스에는 Type() 함수가 없습니다.
누군가 설명해 주시겠어요? 다음은 CDealInfo 클래스의 코드 조각입니다:
CDealInfo::FormatDeal(문자열& str) 함수에는 이 줄이 포함되어 있습니다:
symbol.Name(Symbol());
차례로 Symbol() 함수는 CDealInfo 클래스 자체와 클라이언트 터미널의 표준 함수 모두에 정의되어 있습니다. symbol.Name() 함수에 인자로 전달되는 함수는 무엇인가요? 어떤 규칙에 의해?누군가 설명해 주시겠어요? 다음은 CDealInfo 클래스의 코드 조각입니다:
CDealInfo::FormatDeal(문자열& str) 함수에는 이 줄이 포함되어 있습니다:
차례로 Symbol() 함수는 CDealInfo 클래스 자체와 클라이언트 터미널의 표준 함수 모두에 정의되어 있습니다. symbol.Name() 함수에 인자로 전달되는 함수는 무엇인가요? 어떤 규칙에 의해?변수 범위와 동일한 규칙이 여기에도 적용됩니다. 변수가 전역 및 로컬 수준에서 하나의 이름으로 선언된 경우 로컬 범위 내에서는 이름이 로컬 변수를 가리키고 외부에서는 전역 변수를 가리킵니다.
클래스 내에서 표준 함수가 오버로드되면 오버로드 본문은 클래스 자체에서 호출되고 표준 함수의 본문은 전역 수준에서 호출됩니다. 오버로드된 함수의 본문은 클래스 포인터를 통해 전역 수준에서 호출할 수 있습니다.
변수 범위와 동일한 규칙이 여기에도 적용됩니다. 변수가 전역 및 로컬 수준에서 동일한 이름으로 선언된 경우 로컬 범위 내에서는 이름이 로컬 변수를 가리키고, 외부에서는 전역 변수를 가리킵니다.
클래스 내에서 표준 함수가 오버로드되면 오버로드 본문은 클래스 자체에서 호출되고 표준 함수의 본문은 전역 수준에서 호출됩니다. 오버로드된 함수의 본문은 클래스 포인터를 통해 전역 수준에서 호출할 수 있습니다.