Не открываются ордера:((

 

extern double lot=0.1;
extern double a=5;
extern double b=3;
extern double c=3;
extern double tp=50;
extern double sl=50;
extern int Period_MA1 = 20;
extern int Period_MA2 = 55;
int start()
{
int t;
int MA1;
int MA2;

double valSTOCH=0;

MA1=iMA(NULL,0,Period_MA1,0,MODE_SMA,PRICE_CLOSE,0);
MA2=iMA(NULL,0,Period_MA2,0,MODE_SMA,PRICE_CLOSE,0);
if((MA2<MA1)&&(iStochastic(NULL,0,a,b,c,MODE_SMA,0,MODE_MAIN,2)<=20)&&(iStochastic(NULL, 0,a,b,c,MODE_SMA,0,MODE_MAIN,1)>20))
{t=OrderSend (Symbol(),OP_BUY,lot,Ask,9,Ask-sl*0.001,Ask+tp*Point,NULL, 0,0,Red);
if (t<=0)
Print("Error #:", GetLastError());}


if((MA2>MA1)&&(iStochastic(NULL,0,a,b,c,MODE_SMA,0,MODE_MAIN,2)>=80)&&(iStochastic(NULL, 0,a,b,c,MODE_SMA,0,MODE_MAIN,1)<80))
{t=OrderSend (Symbol(),OP_SELL,lot,Bid,9,Bid+sl*0.001,Bid-tp*Point, NULL, 0,0,Blue);
if (t<=0)
Print("Error #:", GetLastError());}

return(0);
}

Сразу скажу что не программист, так что не корите((((

 

смотри свои условия входа:

if((MA2<MA1)&&(iStochastic(NULL,0,a,b,c,MODE_SMA,0,MODE_MAIN,2)<=20)&&(iStochastic(NULL, 0,a,b,c,MODE_SMA,0,MODE_MAIN,1)>20))

согласно твоим условия стохастик должен быть одновременно меньше или равен 20 И! больше 20. Это условие не выполняется. Вот и нет у тебя входов.

Ты наверно хотел поставить условие равенства 20? Значения стохастик дает в виде вещественных чисел(а не целых), поэтому лучше почитай про сравнение переменных типа double.

 
Luptator писал(а) >>

смотри свои условия входа:

if((MA2<MA1)&&(iStochastic(NULL,0,a,b,c,MODE_SMA,0,MODE_MAIN,2)<=20)&&(iStochastic(NULL, 0,a,b,c,MODE_SMA,0,MODE_MAIN,1)>20))

согласно твоим условия стохастик должен быть одновременно меньше или равен 20 И! больше 20. Это условие не выполняется. Вот и нет у тебя входов.

Ты наверно хотел поставить условие равенства 20? Значения стохастик дает в виде вещественных чисел(а не целых), поэтому лучше почитай про сравнение переменных типа double.

нет, смотри, там же одна 2 бара назад, а другая предыдущий бар, т.е. смысл что стохастик пересекает линию в 20.

 

Посмотри, - какие ошибки печатает журнал?

И ещё. Где именно не открывает. В тестере? Или НА СЧЕТЕ?

На каком тф ?

 
rid писал(а) >>

Посмотри, - какие ошибки печатает журнал?

И ещё. Где именно не открывает. В тестере? Или НА СЧЕТЕ?

На каком тф ?

Таймфрейм 1 час, валюта евро/дол, ошибок не печатает в итоге в резалте получается что прошел прогон, но сделок не открыл за месяц, хотя вручную видно не один раз что они должны быть!

 

А котиры какие ? 5 знаков ? или 4ре ?

И какой тейк и стоп... тот же что в коде ?