EA doesn't starts. Strategy loaded and initialized but nothing else... Maybe somebody knows how change it?
int start() { double ABUY=0; double ASELL=0; double BBUY=0; double BSELL=0; double point = MarketInfo(Symbol(),MODE_POINT); double expiration=CurTime()+PERIOD_D1*60; int n; int total= OrdersTotal(); for( n=0; n<total; n++ ){ // count how many open orders we have if( OrderSelect(n,SELECT_BY_POS,MODE_TRADES) ) continue; if( OrderSymbol()==Symbol() ) continue; if( OrderMagicNumber()== 1 && OrderType()== OP_BUY ){ //check if this order exists ABUY=2; // it's a BUY order //if order exists - change variable } else if( OrderMagicNumber()== 1 && OrderType()== OP_BUYSTOP ){ ABUY=1; // it's a BUY pending order } else if( OrderMagicNumber()== 2 && OrderType()== OP_SELL ){ //check if another order exists ASELL=2; // it's a SELL order //if this order exists - change variable } else if( OrderMagicNumber()== 2 && OrderType()== OP_SELLSTOP ){ ASELL=1; // it's a SELL pending order } else if( OrderMagicNumber()== 3 && OrderType()== OP_BUY ){ //etc....... BBUY=2; // it's a BUY order } else if( OrderMagicNumber()== 3 && OrderType()== OP_BUYSTOP ){ BBUY=1; // it's a BUY pending order } else if( OrderMagicNumber()== 4 && OrderType()== OP_SELL ){ BSELL=2; // it's a SELL order } else if( OrderMagicNumber()== 4 && OrderType()== OP_SELLSTOP ){ BSELL=1; // it's a SELL pending order } } if ( ABUY== 2 ) { if ( ASELL>0 ) { OrderDelete(OrderMagicNumber()== 2 ); OrderDelete(OrderMagicNumber()== 6 ); OrderSend(Symbol(),OP_SELLSTOP,0.2,Bid-30*point,4,Ask-62*point,Ask-2*point,"HA SELL",6,expiration,Green); } else if ( BBUY== 0 && BSELL== 0 ) { OrderDelete(OrderMagicNumber()== 7 ); OrderDelete(OrderMagicNumber()== 8 ); OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"B BUY",3,expiration,Blue); OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"B SELL",4,expiration,Green); } } else if ( ASELL == 2 ) { if ( ABUY>0 ) { OrderDelete(OrderMagicNumber()== 1 ); OrderDelete(OrderMagicNumber()== 5 ); OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+28*point,4,Bid+60*point,Bid,"HA BUY",5,expiration,Blue); } else if ( BBUY== 0 && BSELL== 0 ) { OrderDelete(OrderMagicNumber()== 7 ); OrderDelete(OrderMagicNumber()== 8 ); OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"B BUY",3,expiration,Blue); OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"B SELL",4,expiration,Green); } } //----------------- return (0); }
qjol:
Thank you. The && signs should be without another ().
Have a good day:)
A theme is closed.
Ok. so now this is compiling wright but ea doesn't start real.
What I need to use, to start this program automaticly when strategy is switched on.
int start() { double ABUY=0; double ASELL=0; double BBUY=0; double BSELL=0; double point = MarketInfo(Symbol(),MODE_POINT); double expiration=CurTime()+PERIOD_D1*60; int n; int total= OrdersTotal(); for( n=0; n<total; n++ ){ // count how many open orders we have if( OrderSelect(n,SELECT_BY_POS,MODE_TRADES) ) continue; if( OrderSymbol()==Symbol() ) continue; if( OrderMagicNumber()== 1 && OrderType()== OP_BUY ){ //check if this order exists ABUY=2; // it's a BUY order //if order exists - change variable } else if( OrderMagicNumber()== 1 && OrderType()== OP_BUYSTOP ){ ABUY=1; // it's a BUY pending order } else if( OrderMagicNumber()== 2 && OrderType()== OP_SELL ){ //check if another order exists ASELL=2; // it's a SELL order //if this order exists - change variable } else if( OrderMagicNumber()== 2 && OrderType()== OP_SELLSTOP ){ ASELL=1; // it's a SELL pending order } else if( OrderMagicNumber()== 3 && OrderType()== OP_BUY ){ //etc....... BBUY=2; // it's a BUY order } else if( OrderMagicNumber()== 3 && OrderType()== OP_BUYSTOP ){ BBUY=1; // it's a BUY pending order } else if( OrderMagicNumber()== 4 && OrderType()== OP_SELL ){ BSELL=2; // it's a SELL order } else if( OrderMagicNumber()== 4 && OrderType()== OP_SELLSTOP ){ BSELL=1; // it's a SELL pending order }
else { OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"A BUY",1,expiration,Blue); OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"A SELL",2,expiration,Green); } } if ( ABUY== 2 ) { if ( ASELL>0 ) { OrderDelete(OrderMagicNumber()== 2 ); OrderDelete(OrderMagicNumber()== 6 ); OrderSend(Symbol(),OP_SELLSTOP,0.2,Bid-30*point,4,Ask-62*point,Ask-2*point,"HA SELL",6,expiration,Green); } else if ( BBUY== 0 && BSELL== 0 ) { OrderDelete(OrderMagicNumber()== 7 ); OrderDelete(OrderMagicNumber()== 8 ); OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"B BUY",3,expiration,Blue); OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"B SELL",4,expiration,Green); } } else if ( ASELL == 2 ) { if ( ABUY>0 ) { OrderDelete(OrderMagicNumber()== 1 ); OrderDelete(OrderMagicNumber()== 5 ); OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+28*point,4,Bid+60*point,Bid,"HA BUY",5,expiration,Blue); } else if ( BBUY== 0 && BSELL== 0 ) { OrderDelete(OrderMagicNumber()== 7 ); OrderDelete(OrderMagicNumber()== 8 ); OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"B BUY",3,expiration,Blue); OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"B SELL",4,expiration,Green); } } //----------------- return (0); }
BorysekPL:
Thank you. The && signs should be without another ().
Have a good day:)
A theme is closed.
u can do with or without () as u like but if u do with () u have to do it with another one for the if
if ( (OrderMagicNumber()== 1) && (OrderType()== OP_BUYSTOP ) )
qjol:
u can do with or without () as u like but if u do with () u have to do it with another one for the if
Thanks, I remeber that:)
Maybe you know also how initialize my strategy to run on every tick?

You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
int start() {
double ABUY=0;}
else {
OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"A BUY",1,expiration,Blue);
OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"A SELL",2,expiration,Green);
}
}
if ( ABUY== 2 ) {
if ( ASELL>0 ) {
OrderDelete(OrderMagicNumber()== 2 );
OrderDelete(OrderMagicNumber()== 6 );
OrderSend(Symbol(),OP_SELLSTOP,0.2,Bid-30*point,4,Ask-62*point,Ask-2*point,"HA SELL",6,expiration,Green);
}
else if ( BBUY== 0 ) && ( BSELL== 0 ) {
OrderDelete(OrderMagicNumber()== 7 );
OrderDelete(OrderMagicNumber()== 8 );
OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"B BUY",3,expiration,Blue);
OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"B SELL",4,expiration,Green);
}
}
else if ( ASELL == 2 ) {
if ( ABUY>0 ) {
OrderDelete(OrderMagicNumber()== 1 );
OrderDelete(OrderMagicNumber()== 5 );
OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+28*point,4,Bid+60*point,Bid,"HA BUY",5,expiration,Blue);
}
else if ( BBUY== 0 ) && ( BSELL== 0 ) {
OrderDelete(OrderMagicNumber()== 7 );
OrderDelete(OrderMagicNumber()== 8 );
OrderSend(Symbol(),OP_BUYSTOP,0.1,Ask+6*point,4,Bid-52*point,Bid+20*point,"B BUY",3,expiration,Blue);
OrderSend(Symbol(),OP_SELLSTOP,0.1,Bid-8*point,4,Ask+50*point,Ask-22*point,"B SELL",4,expiration,Green);
}
}
//-----------------
return (0);
}