기고글 토론 "MQL5로 하는 트레이드 오퍼레이션 - 어렵지 않아요!" - 페이지 2

 
Valmars:
여전히 게시하기 전에 코드를 검토해야 합니다.

이 문제는 게시 당일에 이미 오래 전에 수정되었습니다.
 
Valmars:

이제 트레이딩 클래스가 충분히 안정화되었다는 데 동의합니다. 그런데 왜 트레이딩 클래스의 사용을 권장하면서 예제에는 CSymbolInfo 클래스의 메서드를 사용하는 대신 상품 속성을 가져오는 함수가 포함되어 있을까요? 일관성이 없어 보입니다.

무슨 뜻인지 명확히 설명해 주세요. 모든 곳에서 클래스를 작성하도록 호출하면 일부 초보자는 복잡하고 이해하기 어렵다고 느낄 수 있습니다.
 
Rosh:
이 문제는 게시 당일에 이미 오래 전에 수정되었습니다.
죄송합니다. 기사를 한 번에 열었지만 지금에서야 읽었습니다.
 
Rosh:
의미를 명확히 하세요. 모든 곳에서 클래스를 작성하도록 요청하면 일부 초보자는 복잡하고 이해하기 어렵다고 생각할 수 있습니다.

사실 위의 인용문에서'표준 라이브러리' 클래스를 사용하라고 촉구하는 것은 제가 아니라 동의하는 것일 뿐입니다. 물론 취향의 문제입니다.

약간 복잡한 EA에는 심볼 속성에 대한 참조가 많이 있으며 CSymbolInfo 클래스의 인스턴스를 한 번 생성하면 심볼 속성에 대한 참조와 프로그램 인식을 단순화할 수 있습니다. 제 의견입니다.

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 

이 질문을 어디에 해야 할지 몰라서 여기서 질문하기로 결정했는데 주제가 적합하다고 생각합니다.

매도 또는 매수 주문만 개설된 모든 주문을 한 번에 청산하려면 어떻게 해야 하나요?

 
nskforward:

이 질문을 어디에 해야 할지 몰라서 여기서 질문하기로 결정했는데 주제가 적절하다고 생각합니다.

매도 또는 매수를 위해 개설된 모든 주문을 한꺼번에 청산하려면 어떻게 해야 하나요?

메타트레이더 5에서는 각 상품에 대해 하나의 오픈 포지션만 있을 수 있습니다. 모든 상품에 대해 모든 포지션을 청산하라는 뜻인가요?
 

안녕하세요,
코드에서 BuyStop 기능을 사용하여 RTS-3.13 (RIH3) 선물을 거래할 때 오류가 계속 발생합니다:
10022 TRADE_RETCODE_INVALID_EXPIRATION - 유효하지 않은 주문 만료일

선물 RTS-3.13의 사양에는 주문 유형 - 취소할 때까지 유효하다고 명시되어 있습니다. 대기열에 있습니다.
다른 유형 ORDER_TIME_DAY, ORDER_TIME_SPECIFIED, ORDER_TIME_SPECIFIED_DAY를 사용하려고 시도했지만 오류가 사라지지 않습니다.


코드의 일부입니다:

   int    digits = (int)SymbolInfoInteger(Ticket,SYMBOL_DIGITS);// 소수점 이하 자릿수
   double point  = SymbolInfoDouble(Ticket,SYMBOL_POINT);       // para.
   double ask    = SymbolInfoDouble(Ticket,SYMBOL_ASK);         // 현재 구매 가격
   double price= 1000 * point;                                  // 정규화되지 않은 시초가
   price  = NormalizeDouble(price, digits);                     // 시초가 정규화
   //price = NormalizeDouble(ask + 1000, digits); // ????
   Print("digits=", IntegerToString(digits), " point=", DoubleToString (point, 0), " ask=", DoubleToString (ask, 0),
         " price=", DoubleToString (price, 0));    
//--- 모든 준비가 완료되었습니다. 서버에 보류 중인 Buy Stop 주문을 보냅니다. 
   if(!m_Trade.BuyStop(1, price, Ticket))
     {
      Print("BuyStop() 메서드가 실패했습니다. 반환 코드="", m_Trade.ResultRetcode(),
            ". 코드 설명: ",m_Trade.ResultRetcodeDescription());
     }
   else
     {
      Print("BuyStop() 메서드가 성공적으로 실행되었습니다. 반환 코드="",m_Trade.ResultRetcode(),
            " (",m_Trade.ResultRetcodeDescription(),")");
     }

항목의 전략 테스터 로그에서 :

2012.12.18 19:44:59   digits=0 point=1 ask=151830 price=1000
2012.12.18 19:44:59   failed buy stop 1.00 RTS-3.13 at 1000 [Invalid expiration]
2012.12.18 19:44:59   CTrade::OrderSend: buy stop 1.00 RTS-3.13 at 1000 [invalid expiration]
2012.12.18 19:44:59   Метод BuyStop() потерпел неудачу. Код возврата=10022. Описание кода: invalid expiration

무엇이 문제일까요?
메일 nfo52^mail.ru, ICQ UIN : 4002787, 스카이프 : osipov52로 답장 해 주시면 감사하겠습니다.

감사합니다.

Win7 64 회, MT5, 데모 계정 DB Otkrytie.

 
Nikos52:

안녕하세요,
코드에서 BuyStop 기능을 사용하여 RTS-3.13 (RIH3) 선물을 거래할 때 오류가 계속 발생합니다:
10022 TRADE_RETCODE_INVALID_EXPIRATION - 유효하지 않은 주문 만료일

선물 RTS-3.13 사양에는 주문 유형 - 취소할 때까지 유효라고 명시되어 있습니다. 대기열에 있습니다.
다른 유형 ORDER_TIME_DAY, ORDER_TIME_SPECIFIED, ORDER_TIME_SPECIFIED_DAY를 사용하려고 시도했지만 오류가 사라지지 않습니다.


코드의 일부입니다:

항목의 전략 테스터 로그에서 :

무엇이 문제일까요?
메일 nfo52^mail.ru, ICQ UIN : 4002787, 스카이프 : osipov52로 답장 해 주시면 감사하겠습니다.

감사합니다.

Win7 64 razr., MT5 , 데모 계정 DB 검색.

RTS-3.13 오크리티 데모에서 비슷한 문제가 발생하여 모든 것을 시도했습니다(지정가 주문은 심볼 프로필에 기록된 대로 ORD_TIME_SPECIFIED_DAY로 설정되어 있음) !!!!. 매수-스톱 주문은 시장에서 수동으로 완벽하게 열립니다. 이것은 터미널 결함이므로 개발자에게 편지를 보내야합니다.
 
네, 이보다 더 간단할 수는 없습니다! 그들은 거기에서 많은 것을 지혜롭게 해냈지만 표준 라이브러리를 사용하고, 그것들이 없다면 말하자면 처음부터???? MQl4에서 전문가 어드바이저를 프로그래밍하는 가장 쉽고 빠른 방법!!!! mql4의 내 EA는 70 줄이 걸리고 mql5에서 다시 작성했는데 198!!!!!!으로 밝혀졌습니다. 따라서 "간단한"이라는 단어가 들어간 제목은 적절하지 않습니다.
Как использовать торговые классы Стандартной библиотеки при написании советника
Как использовать торговые классы Стандартной библиотеки при написании советника
  • 2010.11.10
  • Samuel
  • www.mql5.com
В статье рассказывается о том, как использовать основной функционал торговых классов Стандартной библиотеки при написании советников, в которых применяется открытие, закрытие и модификация позиции, проверка свободной маржи перед размещением торговых ордеров, размещение и удаление отложенных ордеров. Показано, как использовать торговые классы для получения свойств ордеров и сделок.
 
zlodei:
...내 mql4 EA는 70줄이 필요해서 mql5로 다시 작성했더니 198!!!!!!. 따라서 "단순"이라는 단어가 들어간 제목은 적절하지 않습니다.
EA 아이디어가 복잡하지 않은 경우입니다. 임호, 아이디어가 복잡할수록 MQL4와 MQL5의 코드 줄 수 차이가 후자에 더 유리할 것입니다. 그래서 나는 그렇게 범주화하지 않을 것입니다....