코딩 도움말 - 페이지 733

 
tfi_markets :

안녕하세요 프로코더 여러분,

누군가가 도움이 될 수 있는지 궁금합니다.

내 EA가 매수 거래를 열고 추세 변화에 따라 기존 매도 거래를 닫고 싶습니다.

그것은 그것을하지만 이익을 취했을 때만. 포지션이 고정된 상태에서 추세가 변경될 때

열리면 StopLoss에서 실행됩니다. (그림 참조). 때로는 작동하고 때로는 작동하지 않습니다.

무엇을 개선할 수 있습니까?

if (trendNow!=trendPrev)
         if (trendNow> 0 && (NLD1>NLD2) && RSIfilter> 55 )
           {
            OpenBuy_  = true ;
            CloseSell_= true ;
           }
         else
         if (trendPrev> 0 && (NLD1<NLD2) && RSIfilter< 45 )
           {
            OpenSell_= true ;
            CloseBuy_= true ;  
          }
그 코드 부분은 결론을 내리기에 충분하지 않습니다.
 
mladen :
그 코드 부분은 결론을 내리기에 충분하지 않습니다.

안녕 믈라덴

제 문제를 봐주셔서 대단히 감사합니다.

아래에서 기존 판매 및 구매 주문을 마감하는 코드를 찾으십시오.

또한 추세가 올바른 방향을 가리키면 새 매수 또는 매도 주문 을 열어야 합니다...

//+------------------------------------------------------------------+
//| Signal Exit Buy / Exit Sell)                                          
//| Iterate through open tickets
//+------------------------------------------------------------------+

   for ( int i= 0 ; i<Total; i++)
     {
      dummyResult= OrderSelect (i, SELECT_BY_POS , MODE_TRADES );
       if ( OrderType ()<= OP_SELL && OrderSymbol ()== Symbol ())
        {
         if ( OrderType ()== OP_BUY && OrderMagicNumber ()==MagicNumber)
           {

             for ( int z= OrdersTotal ()- 1 ; z>= 0 ; z--)
              {
               if ( OrderSelect (z, SELECT_BY_POS , MODE_TRADES ) && OrderMagicNumber ()==MagicNumber && OrderSymbol ()== Symbol ())
                 {
                   if ( OrderType ()== OP_BUY )
                     buy_ticket= OrderTicket ();
                   else
                   if ( OrderType ()== OP_SELL )
                     sell_ticket= OrderTicket ();
                 }

// Close BUY

               if (CloseBuy_== true && buy_ticket!= 0 )
                 {
                  dummyResult= OrderClose ( OrderTicket (), OrderLots (), Bid ,Slippage*PipMultiplier,MediumSeaGreen);
                   if (EachTickMode) TickCheck = True ;
                   if (!EachTickMode) BarCount = Bars ;
                   Print ( "Error closing Buy #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());

// Open new Sell Order 

if (trendPrev> 0  && (NLD1<NLD2) && RSIfilter< 45 ) OpenSell_= true ;                

 }


// Close SELL
               if (CloseSell_== true && sell_ticket!= 0 )
                 {
                  dummyResult= OrderClose ( OrderTicket (), OrderLots (), Ask ,Slippage*PipMultiplier,DarkOrange);
                   if (EachTickMode) TickCheck = True ;
                   if (!EachTickMode) BarCount = Bars ;
                   Print ( "Error closing Sell #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());


// Open new Buy Order                

if (trendNow> 0  && (NLD1>NLD2) && RSIfilter> 55 ) OpenBuy_  = true

 

}
              }
 
tfi_markets :

안녕 믈라덴

제 문제를 봐주셔서 대단히 감사합니다.

아래에서 기존 판매 및 구매 주문을 마감하는 코드를 찾으십시오.

또한 추세가 올바른 방향을 가리키면 새 매수 또는 매도 주문을 열어야 합니다...

//+------------------------------------------------------------------+
//| Signal Exit Buy / Exit Sell)                                          
//| Iterate through open tickets
//+------------------------------------------------------------------+

   for ( int i= 0 ; i<Total; i++)
     {
      dummyResult= OrderSelect (i, SELECT_BY_POS , MODE_TRADES );
       if ( OrderType ()<= OP_SELL && OrderSymbol ()== Symbol ())
        {
         if ( OrderType ()== OP_BUY && OrderMagicNumber ()==MagicNumber)
           {

             for ( int z= OrdersTotal ()- 1 ; z>= 0 ; z--)
              {
               if ( OrderSelect (z, SELECT_BY_POS , MODE_TRADES ) && OrderMagicNumber ()==MagicNumber && OrderSymbol ()== Symbol ())
                 {
                   if ( OrderType ()== OP_BUY )
                     buy_ticket= OrderTicket ();
                   else
                   if ( OrderType ()== OP_SELL )
                     sell_ticket= OrderTicket ();
                 }

// Close BUY

               if (CloseBuy_== true && buy_ticket!= 0 )
                 {
                  dummyResult= OrderClose ( OrderTicket (), OrderLots (), Bid ,Slippage*PipMultiplier,MediumSeaGreen);
                   if (EachTickMode) TickCheck = True ;
                   if (!EachTickMode) BarCount = Bars ;
                   Print ( "Error closing Buy #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());

// Open new Sell Order 

if (trendPrev> 0  && (NLD1<NLD2) && RSIfilter< 45 ) OpenSell_= true ;                

 }


// Close SELL
               if (CloseSell_== true && sell_ticket!= 0 )
                 {
                  dummyResult= OrderClose ( OrderTicket (), OrderLots (), Ask ,Slippage*PipMultiplier,DarkOrange);
                   if (EachTickMode) TickCheck = True ;
                   if (!EachTickMode) BarCount = Bars ;
                   Print ( "Error closing Sell #" ,( string ) OrderTicket (), " Error code " ,( string ) GetLastError ());


// Open new Buy Order                

if (trendNow> 0  && (NLD1>NLD2) && RSIfilter> 55 ) OpenBuy_  = true

 

}
              }
루프 내에서 루프를 사용하는 이유는 무엇입니까? 그럴 필요가 전혀 없습니다. 그것을 제거하고 코드가 단순화되면 모든 것이 더 쉽게 정리될 것입니다.
 
pls는 이 지표의 EA를 만드는 데 도움을 줄 사람이 필요합니다.
 
mladen :
루프 내에서 루프를 사용하는 이유는 무엇입니까? 그럴 필요가 전혀 없습니다. 그것을 제거하고 코드가 단순화되면 모든 것이 더 쉽게 정리될 것입니다.

안녕 믈라덴

그에 따라 코드를 수정했는데 지금이 더 나은 것 같습니까?

좀 봐주시겠어요? 이 코드는 아직 테스트되지 않은 의사 상태입니다.

미리 감사합니다!

//+-------------------------------------------------------------------------+
//| Signal close Buy / close Sell / Open new BUY or SELL order when possible    

int PositionIndex;    
int TotalNumberOfOrders;  
TotalNumberOfOrders = OrdersTotal (); // store number of Orders in the variable

for (PositionIndex = TotalNumberOfOrders - 1 ; PositionIndex >= 0 ; PositionIndex --) // for loop to loop through all Orders . .   COUNT DOWN TO ZERO !
   {
   if (! OrderSelect (PositionIndex, SELECT_BY_POS , MODE_TRADES )) continue ; // if the OrderSelect fails advance the loop to the next PositionIndex
  
if ( OrderMagicNumber () == MagicNumber   // does the Order's Magic Number match our EA's magic number ?
   && OrderSymbol () == Symbol ()         // does the Order's Symbol match the Symbol our EA is working on ?
   && ( OrderType () == OP_BUY            // is the Order a Buy Order ?
   ||  OrderType () == OP_SELL ))       // or is it a Sell Order ?
  
 if (! OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (), Slippage*PipMultiplier,DarkOrange )) //try to close the order
   Print ( "Order Close failed, order number: " , OrderTicket (), " Error: " , GetLastError ());  //if the Order Close failed print some helpful information
              
      if (trendNow> 0 && (NLD1>NLD2) && RSIfilter> 52 ) // Check if new entry condition is given
           {
            OpenBuy_= true ;
             }
         else
      if (trendPrev> 0 && (NLD1<NLD2) && RSIfilter< 42 )
           {
            OpenSell_= true ;
              }
   } // end of For loop        
  
 
tfi_markets :

안녕 믈라덴

그에 따라 코드를 수정했는데 지금이 더 나은 것 같습니까?

좀 봐주시겠어요? 이 코드는 아직 테스트되지 않은 의사 상태입니다.

미리 감사합니다!

//+-------------------------------------------------------------------------+
//| Signal close Buy / close Sell / Open new BUY or SELL order when possible    

int PositionIndex;    
int TotalNumberOfOrders;  
TotalNumberOfOrders = OrdersTotal (); // store number of Orders in the variable

for (PositionIndex = TotalNumberOfOrders - 1 ; PositionIndex >= 0 ; PositionIndex --) // for loop to loop through all Orders . .   COUNT DOWN TO ZERO !
   {
   if (! OrderSelect (PositionIndex, SELECT_BY_POS , MODE_TRADES )) continue ; // if the OrderSelect fails advance the loop to the next PositionIndex
  
if ( OrderMagicNumber () == MagicNumber   // does the Order's Magic Number match our EA's magic number ?
   && OrderSymbol () == Symbol ()         // does the Order's Symbol match the Symbol our EA is working on ?
   && ( OrderType () == OP_BUY            // is the Order a Buy Order ?
   ||  OrderType () == OP_SELL ))       // or is it a Sell Order ?
  
 if (! OrderClose ( OrderTicket (), OrderLots (), OrderClosePrice (), Slippage*PipMultiplier,DarkOrange )) //try to close the order
   Print ( "Order Close failed, order number: " , OrderTicket (), " Error: " , GetLastError ());  //if the Order Close failed print some helpful information
              
      if (trendNow> 0 && (NLD1>NLD2) && RSIfilter> 52 ) // Check if new entry condition is given
           {
            OpenBuy_= true ;
             }
         else
      if (trendPrev> 0 && (NLD1<NLD2) && RSIfilter< 42 )
           {
            OpenSell_= true ;
              }
   } // end of For loop        
  
네. 훨씬 낫다 :)
 

음티와나

다음은 15개의 경고가 남은 B&S의 EA입니다. 누군가가 세계 선언문을 지우는 방법을 말해 줄 수 있다면   "'trailingprofit'의 선언은 62행의 전역 선언을 숨깁니다.   mnt-구매자판매자 EA v1.00.mq4               915          53” 내가 정리하겠습니다.

나는 또한 그것을 실행하기 위해 몇 개의 파일이 필요합니다.

2016.12.17 16:01:35.347 2016.11.01 00:47   'C:\FXPrograms\Tallinex\MQL4\indicators\4BARS-MTF-BBH 1.06.ex4' 파일을 열 수 없습니다. [2]

2016.12.17 16:01:29.815 2016.11.01 00:17   'C:\FXPrograms\Tallinex\MQL4\indicators\BullBearHelper 1.00.ex4' 파일을 열 수 없습니다. [2]

2016.12.17 16:01:29.815 2016.11.01 00:17   'C:\FXPrograms\Tallinex\MQL4\indicators\AdaptiveLaguerreFilter.ex4' 파일을 열 수 없습니다. [2]

그리고 "사면 방향선"

알려줘요

레이

 
traderduke :

상인

관심을 가져 주셔서 감사합니다. 인디 패키지가 첨부되어 있습니다. 실제로 전체 시스템은 FF(http://www.tradingsystemforex.com/ideas-for-expert-advisors/4662-buyers-sellers-ea.html)에서 제공됩니다.

gspe가 작업하고 있었지만 전체 EA 프레임이 "funyoo"에서 가져온 것 같아요. 샘플/모델 프레임으로 EA 코드를 사용하여 새 EA를 생성하는 데만 관심이 있습니다. 나머지 전략은 내 추측에 따라 완전하지 않습니다 , 우리는 그것보다 더 잘 형성할 수 있습니다, 우리는 지금 100배 더 나은 지표를 가지고 있습니다 :)

문안 인사

파일:
package.zip  59 kb
 
traderduke :
그리고 (.....hide global 선언)의 앞에 "t"를 추가하면 모든 경고가 제거되지만 정확하지 않습니까? ..... 스레드(https://www.forex-tsd.com/forum/debates-discussions/18543-ea-not-working-under-build-610)와 긴 2페이지 크로스에서 이 팁을 얻었습니다. 대화/논쟁 사이

"crsnapebtinternetcom " 및 MLADEN ..... 그런 다음 테스트하고 작동했지만 일부 인증이 필요합니다. :)

문안 인사

 
mntiwana :

상인

관심을 가져 주셔서 감사합니다. 인디 패키지가 첨부되어 있습니다. 실제로 전체 시스템은 FF(http://www.tradingsystemforex.com/ideas-for-expert-advisors/4662-buyers-sellers-ea.html)에서 제공됩니다.

gspe가 작업하고 있었지만 전체 EA 프레임이 "funyoo"에서 가져온 것 같아요. 샘플/모델 프레임으로 EA 코드를 사용하여 새 EA를 생성하는 데만 관심이 있습니다. 나머지 전략은 내 추측에 따라 완전하지 않습니다 , 우리는 그것보다 더 잘 형성할 수 있습니다, 우리는 지금 100배 더 나은 지표를 가지고 있습니다 :)

문안 인사

얘들아

Funyoos EA는 일반적으로 백 테스트에서 마틴게일을 사용할 때 좋은 결과를 보였습니다. 나는 그것들을 사용할 때 매우 조심할 것이다