EA는 여러 쌍에서 실행되지 않으므로 도움이 필요합니다. - 페이지 3 12345 새 코멘트 Matt_Townsend 2016.12.12 21:14 #21 for ( int i= 0 ;i< OrdersTotal ();i++) { if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ; if ( OrderMagicNumber ()==MagicNumber && OrderSymbol ()== Symbol ()) continue ; //---Check Order Type if ( OrderType ()== OP_BUY ) { if (fastma < slowma) { if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE )) Print ( "Order Closed : " , OrderClosePrice ()); else Print ( "Error Closing order " , GetLastError ()); } } if ( OrderType ()== OP_SELL ) { if (fastma > slowma) { if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE )) Print ( "Order Closed : " , OrderClosePrice ()); else Print ( "Error Closing Order : " , GetLastError ()); } } } Sleep ( 300000 ); return ( 0 );} My Ea는 주문 열기 및 닫기를 중지하지 않습니다. 내 코드에서 무언가를 무시하는 것 같습니다. 내 닫기 주문 기능 에 문제가 있습니까? EA will not run EA function not working Opinion,suggestions _EA function honest_knave 2016.12.12 21:28 #22 Matt_Townsend : 내 주문 마감 기능 에 문제가 있습니까? 예 - 주문을 마감할 때 카운트다운해야 합니다. for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--) 여기에서 이유를 읽을 수 있습니다. Matt_Townsend 2016.12.12 21:50 #23 honest_knave : 예 - 주문을 마감할 때 카운트다운해야 합니다. for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--) 여기에서 이유를 읽을 수 있습니다. 그것은 여전히 거의 즉시 거래를 시작하고 닫는 것뿐입니다. 코드에 다른 문제가 있습니까? William Roeder 2016.12.12 21:56 #24 Matt_Townsend : 코드에 다른 문제가 있습니까? 변수를 인쇄하고 그 이유를 찾으십시오. Keith Watford 2016.12.13 03:12 #25 if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) continue; 왜 계속 하시겠습니까? if(OrderMagicNumber() != MagicNumber || OrderSymbol() != Symbol()) continue; 더 의미가있을 것입니다 Matt_Townsend 2016.12.13 03:27 #26 Keith Watford : if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) continue; 왜 계속 하시겠습니까? if(OrderMagicNumber() != MagicNumber || OrderSymbol() != Symbol()) continue; 더 의미가있을 것입니다 코드에 ||가 있으면 주문을 닫지 않지만 거기에 !=가 있으면 더 잘 작동합니다. Matt_Townsend 2016.12.13 03:37 #27 //+---------------------------------------------+ //|System start | //+---------------------------------------------+ int start(){ double fastma, slowma; int ticket, total; //---define Ma's fastma = iMA ( NULL , 0 , 5 , 0 , MODE_EMA , PRICE_CLOSE , 0 ); slowma = iMA ( NULL , 0 , 8 , 0 , MODE_SMA , PRICE_CLOSE , 0 ); total = OrdersTotal (); //---Start operations if (total < 1 ) { if (fastma > slowma) { ticket = OrderSend ( Symbol (), OP_BUY ,Lots, Ask , 10 , 0 , 0 , "" , 0 , 0 ,Blue); if (ticket > 0 ) { if ( OrderSelect (ticket, SELECT_BY_TICKET , MODE_TRADES )) Print ( "Buy order opened : " , OrderOpenPrice ()); } else Print ( "Error opening order : " , GetLastError ()); return ( 0 ); } if (fastma < slowma) { ticket = OrderSend ( Symbol (), OP_SELL ,Lots, Bid , 10 , 0 , 0 , "" , 0 , 0 ,Red); if (ticket > 0 ) { if ( OrderSelect (ticket, SELECT_BY_TICKET , MODE_TRADES )) Print ( "Sell order opened : " , OrderOpenPrice ()); } else Print ( "Error opening order : " , GetLastError ()); return ( 0 ); } return ( 0 ); } for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--) { if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ; if ( OrderMagicNumber ()!=MagicNumber && OrderSymbol ()!= Symbol ()) continue ; //---Check Order Type if ( OrderType ()== OP_BUY ) { if (fastma < slowma) { if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE )) Print ( "Order Closed : " , OrderClosePrice ()); else Print ( "Error Closing order " , GetLastError ()); } } if ( OrderType ()== OP_SELL ) { if (fastma > slowma) { if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE )) Print ( "Order Closed : " , OrderClosePrice ()); else Print ( "Error Closing Order : " , GetLastError ()); } } } Sleep ( 300000 ); return ( 0 );} 여기 내 코드가 현재 상태로 있습니다. 내가 설정한 모든 쌍에서 거래를 열 수 있지만 무작위로 열린 거래가 있는 특정 코드가 있습니다. 나는 코드를 기본적으로 어떤 쌍에 넣든 독립적으로 실행하려고 노력했지만 불행히도 코드는 다른 모든 거래가 닫힐 때까지 거래를 열지 않고 모든 쌍에 대한 거래를 열지 않습니다. 설정되어 있습니다. 어쨌든 프로그램이 그렇게 하도록 할 수 있습니까? 그것은 내가 원하는 방식으로 사고 팔 수 있습니다. EA will not run [Archive!] Any rookie question, Helping with a simple William Roeder 2016.12.13 14:46 #28 당신은 코딩 for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--) { if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ; if ( OrderMagicNumber ()!=MagicNumber || OrderSymbol ()!= Symbol ()) continue ; //---Check Order Type if ( OrderType ()== OP_BUY ) 쉽게 한 for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--) if ( OrderSelect (i, SELECT_BY_POS ) && OrderMagicNumber () == MagicNumber && OrderSymbol () == Symbol () ){ //---Check Order Type if ( OrderType ()== OP_BUY ) Matt_Townsend 2016.12.13 15:22 #29 whroeder1 : 당신은 코딩 for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--) { if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ; if ( OrderMagicNumber ()!=MagicNumber && OrderSymbol ()!= Symbol ()) continue ; //---Check Order Type if ( OrderType ()== OP_BUY ) 쉽게 한 for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--) if ( OrderSelect (i, SELECT_BY_POS ) && OrderMagicNumber () == MagicNumber && OrderSymbol () == Symbol () ){ //---Check Order Type if ( OrderType ()== OP_BUY ) 각 차트가 여전히 독립적으로 실행되고 있지 않습니다. 내가 할 수 있는 다른 작업이 있습니까? 그리고 코딩된 방식은 더 이상 거래를 마감하지 않습니다. Keith Watford 2016.12.14 03:43 #30 키스 왓포드 2016.12.14 03:10 | 122.155.43.228 금지 #4 KO total = OrdersTotal (); //---Start operations if (total <= 1 ) 열린 주문을 반복하고 EA의 매직 넘버와 차트 기호가 있는 거래만 계산합니다. 12345 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ;
if ( OrderMagicNumber ()==MagicNumber && OrderSymbol ()== Symbol ()) continue ;
//---Check Order Type
if ( OrderType ()== OP_BUY )
{
if (fastma < slowma)
{
if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE ))
Print ( "Order Closed : " , OrderClosePrice ());
else
Print ( "Error Closing order " , GetLastError ());
}
}
if ( OrderType ()== OP_SELL )
{
if (fastma > slowma)
{
if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE ))
Print ( "Order Closed : " , OrderClosePrice ());
else
Print ( "Error Closing Order : " , GetLastError ());
}
}
}
Sleep ( 300000 );
return ( 0 );
}
예 - 주문을 마감할 때 카운트다운해야 합니다.
예 - 주문을 마감할 때 카운트다운해야 합니다.
왜 계속 하시겠습니까?
왜 계속 하시겠습니까?
//|System start |
//+---------------------------------------------+
int start()
{
double fastma, slowma;
int ticket, total;
//---define Ma's
fastma = iMA ( NULL , 0 , 5 , 0 , MODE_EMA , PRICE_CLOSE , 0 );
slowma = iMA ( NULL , 0 , 8 , 0 , MODE_SMA , PRICE_CLOSE , 0 );
total = OrdersTotal ();
//---Start operations
if (total < 1 )
{
if (fastma > slowma)
{
ticket = OrderSend ( Symbol (), OP_BUY ,Lots, Ask , 10 , 0 , 0 , "" , 0 , 0 ,Blue);
if (ticket > 0 )
{
if ( OrderSelect (ticket, SELECT_BY_TICKET , MODE_TRADES ))
Print ( "Buy order opened : " , OrderOpenPrice ());
}
else
Print ( "Error opening order : " , GetLastError ());
return ( 0 );
}
if (fastma < slowma)
{
ticket = OrderSend ( Symbol (), OP_SELL ,Lots, Bid , 10 , 0 , 0 , "" , 0 , 0 ,Red);
if (ticket > 0 )
{
if ( OrderSelect (ticket, SELECT_BY_TICKET , MODE_TRADES ))
Print ( "Sell order opened : " , OrderOpenPrice ());
}
else
Print ( "Error opening order : " , GetLastError ());
return ( 0 );
}
return ( 0 );
}
for ( int i= OrdersTotal ()- 1 ;i>= 0 ;i--)
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ;
if ( OrderMagicNumber ()!=MagicNumber && OrderSymbol ()!= Symbol ()) continue ;
//---Check Order Type
if ( OrderType ()== OP_BUY )
{
if (fastma < slowma)
{
if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE ))
Print ( "Order Closed : " , OrderClosePrice ());
else
Print ( "Error Closing order " , GetLastError ());
}
}
if ( OrderType ()== OP_SELL )
{
if (fastma > slowma)
{
if ( OrderClose ( OrderTicket (),Lots, OrderClosePrice (), 10 , clrNONE ))
Print ( "Order Closed : " , OrderClosePrice ());
else
Print ( "Error Closing Order : " , GetLastError ());
}
}
}
Sleep ( 300000 );
return ( 0 );
}
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ;
if ( OrderMagicNumber ()!=MagicNumber || OrderSymbol ()!= Symbol ()) continue ;
//---Check Order Type
if ( OrderType ()== OP_BUY )
OrderSelect (i, SELECT_BY_POS )
&& OrderMagicNumber () == MagicNumber
&& OrderSymbol () == Symbol ()
){
//---Check Order Type
if ( OrderType ()== OP_BUY )
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )== false ) break ;
if ( OrderMagicNumber ()!=MagicNumber && OrderSymbol ()!= Symbol ()) continue ;
//---Check Order Type
if ( OrderType ()== OP_BUY )
OrderSelect (i, SELECT_BY_POS )
&& OrderMagicNumber () == MagicNumber
&& OrderSymbol () == Symbol ()
){
//---Check Order Type
if ( OrderType ()== OP_BUY )
각 차트가 여전히 독립적으로 실행되고 있지 않습니다. 내가 할 수 있는 다른 작업이 있습니까?
그리고 코딩된 방식은 더 이상 거래를 마감하지 않습니다.
total = OrdersTotal ();
//---Start operations
if (total <= 1 )