번역의 어려움 :) - 페이지 4

 
Alexey Volchanskiy :

천만에요. 하지만 나는 게으른 고양이라고 썼다))

그렇기 때문에 매번 악마의 공을 뽑지 않고 주문에 대한 데이터를 클래스에 저장합니다.

순전히 질문에 관한 것입니다. 아마도 주문이 아닌 위치를 보고 싶었을 것입니다. 남... 다 다르게 했으면 좋았을텐데 생방송은 이렇습니다

나는 모든 경우를 위해 템플릿에 이러한 기능 중 40개를 가지고 있습니다. 주문에 대해 별도로, 위치에 대해 별도로. 글쎄, 그들과 함께 작업하는 것은 매우 빠르며 우리는이 고문에 필요한 모든 것을 사용합니다. 몇 분 안에 고문의 알고리즘을 확장하거나 다시 만들 수 있습니다. 그래서 하나의 파일 안에 함수를 사용하고 따로 연결할 필요가 없습니다.

네, 포지션을 보고 싶었고, 가능하다면 오더도 슈퍼가 될 것입니다)

Alexey, 야간 산책 후 시간과 욕망이 있다면 써주세요. 어떻게 보일지 보고 비유적으로 모든 것을 다시 쓸 것입니다.

고맙습니다!

//===================

PS 쓰면서 답을 주셨음)

(c) 코드 삽입 후 g ***를 삽입해야 하는 이유!!!!

댓글처럼 어떤 기능이 있는지 알아보기 위한 것입니다.

답변 감사합니다 계속 파고들겠습니다

 
Alexey Volchanskiy :

천만에요. 하지만 나는 게으른 고양이라고 썼다))

그렇기 때문에 매번 악마의 공을 뽑지 않고 주문에 대한 데이터를 클래스에 저장합니다.

순전히 질문에 관한 것입니다. 아마도 주문이 아닌 포지션을 보고 싶었을 것입니다. 남... 다 다르게 했으면 좋았을텐데 생방송은 이렇습니다

바보 사이트 다시 모든 것을 꽝 zaya ** lo, 빨간색으로 갈 것입니다 모든 것이 명확 거기

****************** 멍청이이이이이이이이이이이이이이이이이이이이이이이

코드를 삽입한 후 왜 g *** o를 삽입해야 합니까 !!!!

아니요, Alex, 그것은 완전히 옳지 않습니다. PositionSelect(Symbol())는 동일한 위치를 선택합니다. 이것은 그물에 좋습니다.

나는 또한 짝을 이루지 않은 대괄호가있는 조각을 줄 것입니다. 모두가 여기에서 이해합니다.

     for (i = 0 ; i < PositionsTotal (); i++)
     {
       if ( PositionGetTicket (i) > 0 && PositionGetString ( POSITION_SYMBOL ) == Symbol() && PositionGetInteger ( POSITION_MAGIC ) == magic)
       {
         if ( PositionGetInteger ( POSITION_TYPE ) == POSITION_TYPE_BUY || PositionGetInteger ( POSITION_TYPE ) == POSITION_TYPE_SELL )
         {
 
Vitaly Muzichenko :

네, 포지션을 보고 싶었고, 가능하다면 오더도 슈퍼가 될 것입니다)


보류 중인 주문 의 경우 거의 동일합니다.

    for (i = 0 ; i < Orders Total (); i++)
     {
       if ( OrderGetTicket (i) > 0 && Order GetString ( POSITION_SYMBOL ) == Symbol() && Order GetInteger ( POSITION_MAGIC ) == magic)
       {
         if ( Order GetInteger ( POSITION_TYPE ) == POSITION_TYPE_BUY_STOP || Order GetInteger ( POSITION_TYPE ) == POSITION_TYPE_SELL _ STOP ) // или другие типы
         {
 
Alexey Viktorov :

보류 중인 주문 의 경우 거의 동일합니다.

도움을 주신 5개 코드 작성자에게 감사드립니다!
 
Vitaly Muzichenko :

Alexey, 질문:

절차적 스타일로 작성된 프로젝트를 번역하는 것은 얼마나 길고 어려운가요? 절차상 왜? - 나는 그것에 익숙합니다. 모든 경우에 하나의 템플릿이 있습니다. 나는 그 안에 조건에 대해 3-5 줄을 쓰고 모든 올빼미는 모든 디버깅을 통해 30 분 만에 준비됩니다.

수행원:

4와 같은 형태로 사용하기 위해 위치 열림 기능을 다시 작성할 수 있습니까? 나는 단지 그들의 이름과 사용에 몇 년 동안 익숙해지고 라이브러리를 연결할 필요가 없습니다.

글쎄, 그래픽을 열고 생성하기 위한 조건 블록:

아직 그래픽이 많이 남아서 어떻게든 5번에 한번 썼는데, .opu를 통해서 뭔가가 있는데 1번 포인트와 2번 포인트를 선택하는데 드는 시간과 대가가 있습니다. 네 번째에서는 ObjectSetInteger(0,nm,OBJPROP_TIME 1 , t1) 및 ObjectSetInteger(0,nm,OBJPROP_TIME 2 , t2)와 같지만 다섯 번째에서는 이 구성이 작동하지 않습니다(

답변에 미리 감사드립니다!

또 다른 프로젝트는 어제 재작성되었는데, 상당히 큰 Expert Advisor였습니다. 클라이언트에서는 몇 주 동안 많은 코드와 많은 매개변수를 위해 최적화되었습니다. 나는 그를 헤지와 함께 5로 전환하도록 설득했습니다. 클라우드에서 최적화할 수 있습니다. 그래서 오늘날 그는 끓는 물을 사용하여 그런 속도로 글을 씁니다. 이전에는 몇 주가 걸리던 모든 것이 몇 시간 만에 최적화되었습니다. 물론 클라우드에는 일반적으로 수천 명의 FA가 있습니다.

이제 질문에 대한 경험을 얻었습니다. 답변이 있습니다.

1. 따라서 절차적 스타일을 그대로 두십시오. OOP의 누구도 강제로 구동되지 않습니다.

2. MQL4와 5가지 기능의 대응에 대한 좋은 글이 있는데 거기에 테이블이 있다. https://www.mql5.com/en/articles/81

3. 그리고 여기 에 4, 5의 거래 기능 을 공유하는 라이브러리가 있습니다. 해보진 않았지만 흥미롭네요. https://www.mql5.com/ru/code/16006

Переход с MQL4 на MQL5
Переход с MQL4 на MQL5
  • 2010.05.11
  • Sergey Pavlov
  • www.mql5.com
Данная статья, построенная в форме справочника по функциям MQL4, призвана помочь переходу с MQL4 на MQL5. Для каждой функции языка MQL4 приведено описание и представлен способ ее реализации на MQL5, что позволит вам значительно ускорить перевод своих программ с MQL4 на MQL5. Для удобства функции разбиты на группы, как в документации по MQL4.
 

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

번역의 어려움 :)

비탈리 무지첸코 , 2016.08.15 21:00

동의한다 )

Alexey, 그런 다음 게임으로) 이 기능을 상위 5개에게 이전하세요.

 //===============================================================================================
//------------------------------- Возвращает количество позиций --------------------------------+
//===============================================================================================
int NumberOfPositions( string symb= "0" , int type=- 1 , int mg=- 1 ) {
 int kp= 0 ;
   if (symb== "0" ) { symb= Symbol ();}
   for ( int i= 0 ; i< OrdersTotal (); i++) {
   if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )) {
     if (( OrderSymbol ()==symb||symb== "" )&&(type< 0 || OrderType ()==type)&&(mg< 0 || OrderMagicNumber ()==mg)) {
     if ( OrderType ()== OP_BUY || OrderType ()== OP_SELL ) {
      kp++;
 }}}}
   return (kp);
 }

네 가지에서 사용하는 방법 - 당신은 알고 있습니다.

고맙습니다!


나는 번역에 대해 약간 다른 견해를 가지고 있다. VS에 "대체"가 없습니다. 한 줄만 추가하면 됩니다. MT5-Hedge에 대해 언급된 기능의 작업 코드

 // https://www.mql5.com/ru/code/16006
#include <MT4Orders.mqh>

//===============================================================================================
//------------------------------- Возвращает количество позиций --------------------------------+
//===============================================================================================
int NumberOfPositions( string symb= "0" , int type=- 1 , int mg=- 1 ) {
 int kp= 0 ;
   if (symb== "0" ) { symb= Symbol ();}
   for ( int i= 0 ; i< OrdersTotal (); i++) {
   if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )) {
     if (( OrderSymbol ()==symb||symb== "" )&&(type< 0 || OrderType ()==type)&&(mg< 0 || OrderMagicNumber ()==mg)) {
     if ( OrderType ()== OP_BUY || OrderType ()== OP_SELL ) {
      kp++;
 }}}}
   return (kp);
 }

코드는 즉시 크로스 플랫폼이 되었습니다.

마찬가지로 MT5 테스터에서 다른 사람의 MT4 Expert Advisors를 시작 합니다 .

 
fxsaber :

나는 번역에 대해 약간 다른 견해를 가지고 있다. VS에 "대체"가 없습니다. 한 줄만 추가하면 됩니다. MT5-Hedge에 대해 언급된 기능의 작업 코드

코드는 즉시 크로스 플랫폼이 되었습니다.

마찬가지로 MT5 테스터에서 다른 사람의 MT4 Expert Advisors를 시작 합니다 .

시원한! 어제 번역 속도를 위해 CTrade를 사용했는데 아직 라이브러리를 보지 않았습니다. 그러나 나는 확실히 볼 것입니다.
 
Alexey Volchanskiy :
시원한! 어제 번역 속도를 위해 CTrade를 사용했는데 아직 라이브러리를 보지 않았습니다. 그러나 나는 확실히 볼 것입니다.

MT4Orders.mqh가 작동하지 않았습니다. 이미 사용 하고 있는 표준 라이브러리 와 충돌합니다. 아마도 깨끗한 슬레이트가 필요할 것입니다.

'::' - unexpected token Trade.mqh       126     22
'::' - unexpected token Trade.mqh       1477    14
'MqlTradeResult' - identifier already used      Trade.mqh       1477    55
see previous declaration of '           0       0
'&' - semicolon expected        Trade.mqh       1477    70
'if' - expressions are not allowed on a global scope    Trade.mqh       1483    4
'else' - expressions are not allowed on a global scope  Trade.mqh       1485    4
'if' - expressions are not allowed on a global scope    Trade.mqh       1488    4
'else' - expressions are not allowed on a global scope  Trade.mqh       1493    4
'return' - expressions are not allowed on a global scope        Trade.mqh       1499    4
')' - expressions are not allowed on a global scope     Trade.mqh       1500    3
declaration of 'action' hides global declaration in file 'Trade.mqh' at line 1480       DealInfo.mqh    244     55

**

 
Alexey Volchanskiy :

MT4Orders.mqh가 작동하지 않았습니다. 이미 사용 하고 있는 표준 라이브러리 와 충돌합니다. 아마도 깨끗한 슬레이트가 필요할 것입니다.

**

 #include <MT4Orders.mqh> // если есть #include <Trade/Trade.mqh>, вставить эту строчку ПОСЛЕ
 

질문 - MQL5에서 직위의 커미션을 찾는 방법은 무엇입니까?

MQL4에서 나는 이것을했다

 double oProfit = OrderProfit () + OrderSwap () + OrderCommission (); // MQL4

그리고 MQL5에는 수수료가 없습니다. 이렇게만 나옵니다.

 double oProfit = PositionGetDouble ( POSITION_PROFIT ) + PositionGetDouble ( POSITION_SWAP );

주문 속성을 보니 수수료도 없습니다. 그리고 무엇을 해야 할까요?