Скачать MetaTrader 5

Помогите пожалуста начинающему

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Запустили испанскую и португальскую версии сайта. Оцени сам!
akula
115
akula 2010.09.23 09:49 

Подскажите где ошибка!!!

Файлы:
1.mq4 3 kb
Aleksandr Chugunov
4816
Aleksandr Chugunov 2010.09.23 12:16  
Регистр смените в заголовке
Андрей
1890
Андрей 2010.09.23 12:44  
AlexSTAL:
Регистр смените в заголовке

да уж

double MAA;
double MAB;
double ADA;
double ADB;


ADA=iAD(NULL,0,shift);
ADB=iAD(NULL,0,shift-1);
MAA=iMAOnArray(ADA,0,MA_Period,MA_shift,MODE_SMA,shift); <-- iMAOnArray хочет double var[];- массив то есть. и я думаю с ArraySetAsSeries(var, true)
MAB=iMAOnArray(ADB,0,MA_Period,MA_shift,MODE_SMA,shift-1); 

 В общем ищите себе пример работающий. 

Nikolaj
305
Nikolaj 2010.09.23 14:17  
akula:

Подскажите где ошибка!!!

Файлы:
1_3.mq4 2 kb
akula
115
akula 2010.09.23 18:11  
nikost 23.09.2010 16:17
akula:

Подскажите где ошибка!!!

Спасиба Nikost а как сечас скользащию вычесть?
Nikolaj
305
Nikolaj 2010.09.23 19:42  
akula:
nikost 23.09.2010 16:17
akula:

Подскажите где ошибка!!!

Спасиба Nikost а как сечас скользащию вычесть?
Файлы:
1_5.mq4 3 kb
akula
115
akula 2010.09.23 21:42  

nikost 23.09.2010 21:42

akula:
nikost 23.09.2010 16:17
akula:

Подскажите где ошибка!!!

Спасиба Nikost а как сечас скользащию вычесть?

Бальшое спасибо Nikost что возишся со мной!!!

есть неплохая стратегия, нужно чтобы скользящая от AD росла, ATR тоже верх, StanDev рост(от скользящей AD), а сам сигнал на BUY когда идёт пересичение линии 100 в CCI тоже от AD

if(ADA[i]<ADA[i+1] && ADA[i+1]>ADA[i+2]) а почему так неработает if(ADA[i]<ADA[i-1])
val1[i]=Low[i]-5*Point;

if(ADA[i]>ADA[i+1] && ADA[i+1]<ADA[i+2])
val2[i]=High[i]+5*Point;
i--;

Файлы:
1_5a1q.mq4 3 kb
Nikolaj
305
Nikolaj 2010.09.24 06:01  

в загдавик темы нужно писять не прописными буквами.

это правило на форумк.

с ССИ я запутался,еси не правильно переставь.

Nikolaj
305
Nikolaj 2010.09.24 06:23  

if(counted_bars<0) return(-1);

i=Bars-counted_bars -1;
while(i>=0)
{
AD[i]=iAD(NULL,0,i);
ATR[i]=iATR(NULL,0,ATR_period,i);
i--;
}
i=Bars-counted_bars -1;
while(i>=0)
{
MA[i]=iMAOnArray(AD,0,MA_period,0,MODE_SMA,i);
SD[i]=iStdDevOnArray(AD,0,SD_period,0,MODE_SMA,i);
CCI[i]=iCCIOnArray(AD,0,CCI_period,i);


if(MA[i]>MA[i+1] && SD[i]>SD[i+1] && CCI[i+1]< 100.0 && CCI[i]> 100.0 && ATR[i]>ATR[i+1])
val1[i]=Low[i]-(High[i+1]-Low[i+1])/2.0;

if(MA[i]<MA[i+1] && SD[i]>SD[i+1] && CCI[i+1]> -100.0 && CCI[i]< -100.0 && ATR[i]>ATR[i+1])
val2[i]=High[i]+(High[i+1]-Low[i+1])/2.0;
i--;
}
return(0);
}
//+------------------------------------------------------------------+

Nikolaj
305
Nikolaj 2010.09.24 06:50  

ещё варант -

период = 5

АТР_период = 14

if(counted_bars<0) return(-1);

i=Bars-counted_bars -1;
while(i>=0)
{
AD[i]=iAD(NULL,0,i);
ATR[i]=iATR(NULL,0,ATR_period,i);
i--;
}
i=Bars-counted_bars -1;
while(i>=0)
{
MA[i]=iMAOnArray(AD,0,period,0,MODE_SMA,i);
SD[i]=iStdDevOnArray(AD,0,period,0,MODE_SMA,i);
CCI[i]=iCCIOnArray(AD,0,period,i);
double Range=MathAbs(Close[i+1]+Close[i+2]-Open[i+1]-Open[i+2])/2.0;

if(MA[i]>MA[i+1] && SD[i]>SD[i+1] && CCI[i+1]< 100.0 && CCI[i]> 100.0 && ATR[i]>ATR[i+1])
val1[i]=Low[i]-Range;

if(MA[i]<MA[i+1] && SD[i]>SD[i+1] && CCI[i+1]> -100.0 && CCI[i]< -100.0 && ATR[i]>ATR[i+1])
val2[i]=High[i]+Range;
i--;
}
return(0);
}
//+------------------------------------------------------------------+

akula
115
akula 2010.09.24 08:53  

Спасиба ищё рас Коля, ты действительно хорошый специалист!

1) double Range=MathAbs(Close[i+1]+Close[i+2]-Open[i+1]-Open[i+2])/2.0; ----а ета функция усредняет?

2)я ищё не пробовал функцию (или || ) с нею можна в одну сторону создать два разных сигнала?

123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий