extern int Period_MA=51;
extern int Period_FMA=83;
int init(){}
int start()
{
double MA;
double FMA;
MA=iMA(NULL,0,Period_MA,10,MODE_EMA,PRICE_MEDIAN,0);
FMA=iMA(NULL,0,Period_FMA,13,MODE_EMA,PRICE_MEDIAN,0);
if(FMA-MA==5)
{
OrderSend(Symbol(),OP_BUY,0.1,Ask,2,Bid-30*Point,Bid+30*Point);
Alert(GetLastError());
}
if(FMA-MA==-5)
{
OrderSend(Symbol(),OP_SELL,0.1,Bid,2,Bid-30*Point,Bid+30*Point);
Alert(GetLastError());
}
return(0);
}
типо так
extern int Period_MA=51;
extern int Period_FMA=83;
int init(){}
int start()
{
double MA;
double FMA;
MA=iMA(NULL,0,Period_MA,10,MODE_EMA,PRICE_MEDIAN,0);
FMA=iMA(NULL,0,Period_FMA,13,MODE_EMA,PRICE_MEDIAN,0);
if(FMA-MA==5)
{
OrderSend(Symbol(),OP_BUY,0.1,Ask,2,Bid-30*Point,Bid+30*Point);
Alert(GetLastError());
}
if(FMA-MA==-5)
{
OrderSend(Symbol(),OP_SELL,0.1,Bid,2,Bid-30*Point,Bid+30*Point);
Alert(GetLastError());
}
return(0);
}
типо так
Попробовал... Видаёт ешё дополнительно 10 ошибок =(((
Попробуй так
extern int Period_MA=51; extern int Period_FMA=83; int init(){} int start() { double MA; double FMA; MA=iMA(NULL,0,Period_MA,10,MODE_EMA,PRICE_MEDIAN,0); FMA=iMA(NULL,0,Period_FMA,13,MODE_EMA,PRICE_MEDIAN,0); if((FMA-MA)>=5) { ticket=OrderSend(Symbol(),0,1,Ask,2,Bid- 30*Point,Ask+30*Point,NULL,1111,0,CLR_NONE); Alert(GetLastError()); } if((FMA-MA)<=-5) { OrderSend(Symbol(),OP_SELL,0.1,Bid,2,Bid-30*Point,Bid+30*Point); Alert(GetLastError()); } return(0); }
Ошибка могла быть аот здесь :
вместо if(FMA-MA==5)
я сделал if((FMA-MA)>=5) - соотв. для бай и селл аналогично
Если оставить, как было ранее, то позиции никогда не откроются.
Подумай сам, - почему...
Попробуй так
Ошибка могла быть аот здесь :
вместо if(FMA-MA==5)
я сделал if((FMA-MA)>=5) - соотв. для бай и селл аналогично
Если оставить, как было ранее, то позиции никогда не откроются.
Подумай сам, - почему...
Понял, покорнейше благодарю, хорошо когда есть такие люди, которые тыкнут пальцем где ошибка, всё оказалось проще чем выглядело. =)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Доброго времени суток, помогите испарвить ошибку...
При компиляции видаёт такую ошибку.
'extern' - semicolon expected C:\Program Files\Real Trader 4\experts\EMA FIRST.mq4 (10, 2)
Вот код советника:
int init()
extern int Period_MA=51;
extern int Period_FMA=83;
int start()
{
double MA;
double FMA;
MA=iMA(NULL,0,Period_MA,10,MODE_EMA,PRICE_MEDIAN,0);
FMA=iMA(NULL,0,Period_FMA,13,MODE_EMA,PRICE_MEDIAN,0);
if(FMA-MA==5)
{
OrderSend(Symbol,OP_BUY,0.1,Ask,2,Bid-30*Point,Bid+30*Point);
Alert(GetLastError);
}
else(FMA-MA==-5)
{
OrderSend(Symbol,OP_SELL,0.1,Bid,2,Bid-30*Point,Bid+30*Point);
Alert(GetLastError);
}
return(0);
}