[ARCHIVE] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 3. - 페이지 230

 

여보세요,

쌍의 창에서 이익을 보여주는 지표/스크립트를 찾고 있습니다. 저것들. 3-5 쌍이 거래 될 때 증가 또는 잠금이있는 경우 그 중 하나의 이익을 신속하게 계산하기가 매우 어렵습니다.

누구든지 조언 할 수 있다면 매우 감사하겠습니다.

 
영혼이 원하는 모든 것.
자본 및 균형 지표
 
고맙습니다! :)
 
PapaYozh :


아마도 signal_MACD() 함수를 수정하십시오.

글쎄, 그녀는 여전히 뭔가를 반환합니다.


나는 그것이 false 대신 true를 반환하기를 원하지만 그것을 수행하는 방법을 모릅니다 =(말해주세요 plz... 한 번 기억하고 다시 묻지 않을 것입니다)
 

여기에 스크립트가 있습니다 ... true를 반환하는 방법은 무엇입니까?

 bool signal_MACD() 
  { 
     bool signal_MACD = false; 
     double tmp = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); 
     for ( int i= 1 ;i<= 5 ;i++) 
    { 
       if ( NormalizeDouble ( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 )*tmp, 4 )< 0.0 ) 
       { 
          signal_MACD = true; 
           break ; 
       } 
    } 
  } 
 
CLAIN :

여기에 스크립트가 있습니다 ... true를 반환하는 방법은 무엇입니까?


 bool signal_MACD() 
  { 
     double tmp = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); 
     for ( int i= 1 ;i<= 5 ;i++) 
    { 
       if ( NormalizeDouble ( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 )*tmp, 4 )< 0.0 ) 
       { 
          return(true); 
       } 
    } 
    return (false);
  } 
 
w_ersoc :

여보세요,

쌍의 창에서 이익을 보여주는 지표/스크립트를 찾고 있습니다. 저것들. 3-5 쌍이 거래 될 때 증가 또는 잠금이있는 경우 그 중 하나의 이익을 신속하게 계산하기가 매우 어렵습니다.

누구든지 조언 할 수 있다면 매우 감사하겠습니다.

 double CurrentProfit() {   // Функция считает текущий профит/лосс для одной валютной пары
     double Profit= 0 ; 
     for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--){
       if (! OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) continue ;
       if ( OrderSymbol ()!= Symbol ()) continue ;
       if ( OrderMagicNumber ()!=Magic) continue ;
       if ( OrderType ()> 1 ) continue ;
      Profit+= OrderProfit ();
    } 
 return (Profit);} 

   double Profit(){           // функция считает суммарный профит/лосс закрытых позиций для одной валютной пары
   double Profit= 0 ; 
   for ( int i= 0 ; i< OrdersHistoryTotal (); i++){
     if (! OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)) continue ;
     if ( OrderSymbol ()!= Symbol ()) continue ;
     if ( OrderMagicNumber ()!=Magic) continue ;
     if ( OrderType ()> 1 ) continue ;
     Profit+= OrderProfit ()+ OrderSwap ()+ OrderCommission ();
   }      
 return (Profit);} 
 

시작 기능에서 다음을 붙여넣습니다.

     Comment ( "\n" , 
       "\n" ,     
       "\n" , "     Profit                               " , Profit(),
       "\n" , "     CurProfit                          " , CurrentProfit(), 
       "\n" );   
 
CLAIN :

여기에 스크립트가 있습니다 ... true를 반환하는 방법은 무엇입니까?


 bool signal_MACD() 
  { 
     bool signal_MACD = false; 
     double tmp = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); 
     for ( int i= 1 ;i<= 5 ;i++) 
    { 
       if ( NormalizeDouble ( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 )*tmp, 4 )< 0.0 ) 
       { 
          signal_MACD = true; 
           break ; 
       } 
    } 
     return (signal_MACD);
  } 
 
CLAIN :

나는 그것이 false 대신 true를 반환하기를 원하지만 그것을 수행하는 방법을 모릅니다 =(말해주세요 plz... 한 번 기억하고 다시 묻지 않을 것입니다)


함수 내부의 변수는 변수일 뿐입니다.

그리고 이름이 무엇인지는 중요하지 않습니다.

따라서 함수가 값을 반환해야 하는 경우 해당 값을 명시적으로 반환해야 합니다.

 return ( ... );
사유: