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

 
Nerd Trader # :

...


 
Nerd Trader # :
ide 설정에서 기능 사이에 미친 듯한 직사각형 삽입을 제거하는 방법은 무엇입니까?

나는 또한 이것을 완전히 중복했습니다.

 class cMy_class
  {
public :
   //Тут плюсуем
   int                Plus(
       int a,b //Это a и b
   ); //Возвращает результат плюсования
  };
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int cMy_class::Plus( int a,b)
  {
   return a+b;
  }
 
Nerd Trader # :
공백이 있으면 어쨌든 주석이 표시되지 않습니다.

이것이 그가 모든 것을 보는 방식이다

 /*******************Expert initialization function*******************/
int OnInit ()
 {
  trade.LogLevel(LOG_LEVEL_NO);
  trade.SetExpertMagicNumber( 1212 );
   return ( INIT_SUCCEEDED );
 } /******************************************************************/

/************************Expert tick function************************/
void OnTick ()
 {
   Comment ( "" , "\n" ,
//"p =  ", sizeP, "\n",
//"m =  ", sizeM, "\n",
//"summPlus =  ", DoubleToString(summPlus, 2), "\n",
//"summMinus =  ", DoubleToString(summMinus, 2), "\n",
//"profitStep =  ", DoubleToString(profitStep, 2),
           "\n"
         );
 } /******************************************************************/

/*********************TradeTransaction function**********************/
void OnTradeTransaction ( const MqlTradeTransaction & trans,
                         const MqlTradeRequest & request,
                         const MqlTradeResult & result)
 {
if (trans.type == TRADE_TRANSACTION_DEAL_ADD )
 {
심지어 기능의 시작과 끝이 보입니다.
 
Alexey Viktorov # :

이것이 그가 모든 것을 보는 방식이다

심지어 기능의 시작과 끝이 보입니다.

문제는 아무나 보는 것이 아니다.
주석 앞뒤에 빈 줄이 있는 경우:

이드 인서트



그러나이 모든 것이 특별히 중요하지는 않으며 다른 아이디어를 사용해야합니다.

 

안녕하세요!!!

포물선 으로 후행 중지 코드에서 오류를 찾는 데 도움을 주세요.

다음은 포물선에서 후행 정지 를 여는 명령입니다.

 //-------------------------------------------------------------------+  Команда на модификацию трейлинг стоп первых ордеров по параболику
   if (Update_Time != iTime ( Symbol (),TimeframesIndicators, 0 ))
      Update_Time = iTime ( Symbol (),TimeframesIndicators, 0 );
   if (CountTrade( 0 ) == 1 || CountTrade( 1 ) == 1 )
      ParabolicTrail();

포물선형 후행 정지 기능

 //+----------------------------------------------------------------------------+
//| Трейлинг стоп одиночных ордеров по параболику                              |
//+----------------------------------------------------------------------------+
void ParabolicTrail()
  {
   double PSAR = iSAR ( Symbol (),TimeframesIndicators, 0.02 , 0.2 , 0 );

   int Order_total = OrdersTotal ();
   for ( int i=Order_total- 1 ; i>= 0 ; i--)
     {
       if (! OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
         continue ; //если не получилось выделить ордер
       if (OrderSymbol() == Symbol () && OrderMagicNumber() == Magic && OrderProfit() > 0 && OrderStopLoss() != 0 && OrderType() < 2 )
        {
         if (OrderType() == OP_BUY)
           {
             if (PSAR < Ask && PSAR > OrderStopLoss())
              {
               if (OrderModify(OrderTicket(), OrderOpenPrice(), PSAR, OrderTakeProfit(), 0 ))
                 {
                   Print ( "Trailing Stop: Стоп Лосс ордера на покупку #" ,OrderTicket(), " перенесен на цену " , DoubleToString (PSAR, Digits ));
                 }
              }
           }
         else
             if (OrderType() == OP_SELL)
              {
               if (PSAR > Bid && PSAR < OrderStopLoss())
                 {
                   if (OrderModify(OrderTicket(), OrderOpenPrice(), PSAR, OrderTakeProfit(), 0 ))
                    {
                     Print ( "Trailing Stop: Стоп Лосс ордера на продажу #" ,OrderTicket(), " перенесен на цену " , DoubleToString (PSAR, Digits ));
                    }
                 }
              }
        }
     }
  }

로그에 오류가 없지만 트롤이 시작되지 않습니다.

감사해요!!!

 
EVGENII SHELIPOV 포물선 으로 후행 중지 코드에서 오류를 찾는 데 도움을 주세요.

다음은 포물선에서 후행 정지 를 여는 명령입니다.

포물선형 후행 정지 기능

로그에 오류가 없지만 트롤이 시작되지 않습니다.

감사해요!!!

오류가 없다고 확신하십니까?

그리고 당신의 조건에 그것은 불필요합니다

 if (OrderSymbol() == Symbol () && OrderMagicNumber() == Magic && OrderProfit() > 0 && OrderStopLoss() != 0 && OrderType() < 2 )
 

EVGENII SHELIPOV # :

로그에 오류가 없지만 트롤이 시작되지 않습니다.

감사해요!!!

이 시도

 //+----------------------------------------------------------------------------+
//| Трейлинг стоп одиночных ордеров по параболику                              |
//+----------------------------------------------------------------------------+
void ParabolicTrail()
  {
   double PSAR = iSAR ( Symbol (),TimeframesIndicators, 0.02 , 0.2 , 0 );

   int Order_total = OrdersTotal ();
   for ( int i=Order_total- 1 ; i>= 0 ; i--)
     {
       if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
        {
         if (OrderSymbol() == Symbol () && OrderMagicNumber() == Magic && OrderProfit() > 0 && OrderStopLoss() != 0 )
           {
             if (OrderType() == OP_BUY)
              {
               if (PSAR < Ask && PSAR > OrderStopLoss())
                 {
                   if (OrderModify(OrderTicket(), OrderOpenPrice(), PSAR, OrderTakeProfit(), 0 ))
                    {
                     Print ( "Trailing Stop: Стоп Лосс ордера на покупку #" ,OrderTicket(), " перенесен на цену " , DoubleToString (PSAR, Digits ));
                    }
                 }
              }
             if (OrderType() == OP_SELL)
              {
               if (PSAR > Bid && PSAR < OrderStopLoss())
                 {
                   if (OrderModify(OrderTicket(), OrderOpenPrice(), PSAR, OrderTakeProfit(), 0 ))
                    {
                     Print ( "Trailing Stop: Стоп Лосс ордера на продажу #" ,OrderTicket(), " перенесен на цену " , DoubleToString (PSAR, Digits ));
                    }
                 }
              }
           }
        }
     }
  }

어쨌든 MODE_STOPLEVEL 을 확인해야 합니다.

 
MakarFX # :
오류가 없다고 확신하십니까?

그리고 당신의 조건에 그것은 불필요합니다

아니요, 아직 시작되지 않습니다.

 
EVGENII SHELIPOV # :

아니요, 아직 시작되지 않습니다.

주문을 여는 기능을 보여줍니다
 
EVGENII SHELIPOV # :

아니요, 아직 시작되지 않습니다.

스크린샷으로 판단하면 이러한 조건이 충족되지 않습니다.

  OrderStopLoss() != 0