MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1846

 
Tretyakov Rostyslav # :

어디 전문가라고!?

내가 설명한다. '전문가라 부른다'는 것은 내가 모르는 것을 당신이 알고 있다는 뜻이다. 그것은 나에게 흥미로웠고 아마도 내가 정말로 놓친 것이 있고 당신이 내 메시지를 보완할 것입니다. 그러나 슬프게도 당신은 새로운 말을 하지 않았습니다. 그리고 당신은 "자신을 일반 텍스트의 전문가라고 불렀습니다"가 아닙니다!

...или опять приступ?

체보이?! 모든 친숙함을 다룰 수 있을 뿐만 아니라. 당신은 모든 사람을 "당신"이라고 부르고 또한 대담자를 개인적으로 알지 못하고 그의 이름이 아닌 대화 상대를 부를 수 있습니다. 그래서 너도 내 주소에 그런 말도 안되는 글을 써. Rostik (나는 당신에게 같은 방식으로 말함), 누가 당신을 키웠습니까? 과하다고 생각하지 않습니까?!

위의 메시지로 판단하면 공격을받은 것은 당신이었습니다 ... 그리고 나는 당신의 양육에 분노했습니다! 나는 당신이 적어도 조금 합리적이라고 생각했습니다 ...

 
Tretyakov Rostyslav # :
3개의 EMA 또는 MACD 또는 ATR의 평균을 먼저 시도하십시오.

처럼? 3개의 EMA와 같습니까? 이것을 발견하지 못했습니다.

 
Andrey Sokolov # :

그들이 "나에게 해줘"를 의미하는 "help to do"라고 쓸 때 놀랄 것이 없습니다. Ava의 고양이와 함께 이전의 동일한 질문자는 명확한 질문에 대해 무례하다고 비난하기 시작했습니다.

물론, 그가 당신을 무례하다고 비난한 이유는 모르겠지만, 분명히 캐주얼하지 않은 것 같습니다(당신의 메시지로 판단할 때) ...

 
그들은 모든 것을 왜곡하고 왜곡하고 요약했습니다. Rostik과 Andrey! 서로 의사 소통합니다. 당신은 서로 자격이 있습니다.
 
Mihail Matkovskij # :

내가 설명한다. '전문가라 부른다'는 것은 내가 모르는 것을 당신이 알고 있다는 뜻이다. 그것은 나에게 흥미로웠고 아마도 내가 정말로 놓친 것이 있고 당신이 내 메시지를 보완할 것입니다. 그러나 슬프게도 당신은 새로운 말을 하지 않았습니다. 그리고 당신은 "자신을 일반 텍스트의 전문가라고 불렀습니다"가 아닙니다!

체보이?! 모든 친숙함을 다룰 수 있을 뿐만 아니라. 당신은 모든 사람을 "당신"이라고 부르고 또한 대담자를 개인적으로 알지 못하고 그의 이름이 아닌 대화 상대를 부를 수 있습니다. 그래서 당신은 내 주소에 그런 말도 안되는 글을 씁니다. Rostik (나는 당신에게 같은 방식으로 말함), 누가 당신을 키웠습니까? 과하다고 생각하지 않습니까?!

위의 메시지로 판단하면 공격을받은 것은 당신이었습니다 ... 그리고 나는 당신의 양육에 분노했습니다! 나는 당신이 적어도 조금 적절하다고 생각했습니다 ...

나는 전문가라고 불리지 않았고, 더욱이 그래서 나는 당신이 모르는 것을 알고 있다고 쓰지 않았습니다!

게다가 당신은 이 분야에서 나보다 훨씬 더 많이 알고 있기 때문입니다. 저는 프로그래머가 아니며 MQL4에 대한 태도는 아마추어적입니다.

친숙함은 내가 틀릴 수도 있지만 불만이없고 나이가 많아서 바뀌는 것은 없습니다.

그리고 그 공격을 희생시키면서, 당신은 반복적으로 이 스레드에서 일을 정리하기 시작했습니다.

 
Порт-моне тв # :

처럼? 3개의 EMA와 같습니까? 이것을 발견하지 못했습니다.

예로서:

         Label1Buffer[i]= iMA (Symbol_1, _Period , 1 , 0 , MODE_SMA , PRICE_CLOSE ,i);
         Label2Buffer[i]= iMA (Symbol_2, _Period , 1 , 0 , MODE_SMA , PRICE_CLOSE ,i);
         Label3Buffer[i]= iMA (Symbol_3, _Period , 1 , 0 , MODE_SMA , PRICE_CLOSE ,i);
         Label4Buffer[i]=(Label1Buffer[i]+Label2Buffer[i]+Label3Buffer[i])/ 3 ;
 

Tretyakov Rostyslav # :

친숙함은 내가 틀릴 수도 있지만 불만이없고 나이가 많아서 바뀌는 것은 없습니다.

글쎄, 나는 개인적으로 과대망상으로 고통받지 않기 때문에 불평하지 않았다. 원하시면 저를 "너"라고 부르셔도 됩니다. 그러나 그것이 외부에서 어떻게 보이는지 스스로 생각하십시오 ... 나는 처음에 당신을 "당신"이라고 불렀습니다. 그것이 쓸모 없다는 것을 깨달았을 때까지 ... 나머지는 또한 당신이 그들을 어떻게 대했는지 신경 쓰지 않습니다. 그러나 당신과 마찬가지로 당신의 의사 소통 문화는 모두 동일합니다 ...

그리고 공격을 희생시키면서, 당신은 이 스레드에서 반복적으로 일을 정리하기 시작했습니다.

누군가와 정리를 하고 싶다면 이 사이트나 이 포럼이 아닌 여기에 없을 것입니다! 여기에서 저는 프로그래밍과 거래에 대해 독점적으로 의사 소통합니다. 그리고 나는 이미 이것에 대해 여러 번 이야기했습니다. 누가 문제를 해결하는지 스스로 생각해보십시오. ..이 "공격"은 무엇입니까? MQL 인수 대신 이것은 무엇입니까?!
 
Mihail Matkovskij # :



나도브라니히. 내가 당신을 축복하자.
 
좋은 오후입니다. 저는 근처에 있는 별도의 스레드에서 제 질문에 대한 커뮤니티의 의견에 여전히 관심이 있습니다. MT4 테스터가 수익을 잘못 계산해서 작동하지 않는게 사실인가요?
 

오늘의 좋은 시간 !!!!

다음 질문에 대한 귀하의 의견이 궁금합니다.

다음은 그리드 EA 코드의 일부입니다.

 //+----------------------------------------------------------------------------+
//| Калькуляция сетки ордеров                                                  |
//+----------------------------------------------------------------------------+
double CalculiteProfit()
  {
   double oProfit = 0 ;
   for ( int i = OrdersTotal ()- 1 ; i>= 0 ; i--)
     {
       if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
        {
         if (OrderSymbol() == Symbol () && OrderMagicNumber() == Magic)
           {
             if (OrderType() == OP_BUY || OrderType() == OP_SELL)
              {
               oProfit += OrderProfit();
              }
           }
        }
     }
   return (oProfit + GetOrderSwap() + GetOrderCommission());
  }
 //-------------------------------------------------------------------+  Команда на закрытие сетки ордеров
   if ((CountTrade( 0 ) > 1 && CalculiteProfit() >= 0 && OrderGroupCloseSignal()== 0 )||(CountTrade( 1 ) > 1 && CalculiteProfit() >= 0 && OrderGroupCloseSignal()== 1 ))
     {
      ClosseAll();
     }
 //+----------------------------------------------------------------------------+
//| Закрытие сетки ордеров при заданной команде                                |
//+----------------------------------------------------------------------------+
void ClosseAll()
  {
   for ( int i = OrdersTotal ()- 1 ; i>= 0 ; i--)
     {
       if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
        {
         if (OrderSymbol() == Symbol () && OrderMagicNumber() == Magic)
           {
             if (OrderType() == OP_BUY)
              {
               if (!OrderClose(OrderTicket(), OrderLots(), Bid, slip))
                   Print ( "Не удалось закрыть ордера на покупку!" );
              }
             if (OrderType() == OP_SELL)
              {
               if (!OrderClose(OrderTicket(), OrderLots(), Ask, slip))
                   Print ( "Не удалось закрыть ордер на продажу!" );
              }
           }
        }
     }
  }

이러한 코드 조각의 논리는 원칙적으로 주문이 브로커의 터미널에서 평균화되지 않고 사용자의 컴퓨터에서 평균화되는 주문 그리드가 열리는 것과 같습니다.

다음 상황이 발생하고 전체 주문 그리드의 이익이 0보다 크고 특정 표시기 신호가 나타나면 열린 주문 그리드에 대한 지속적인 계산이 있습니다. 전체 주문 그리드가 닫힙니다.

Expert Advisor는 데모 계정에서 완벽하게 작동하고 실제 계정 테스터에서 완벽하게 작동하지만 실제 계정에서는 기적이 발생합니다. 수익성 있는 주문만 전체 그리드에서 마감됩니다. 로그에 오류가 없습니다.

문제는 이러한 상황에 직면한 사람이 누구인지 또는 브로커의 부엌에서 코드 부정확성 문제가 무엇입니까 ????