Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
мне нужно первую МА оставить без сдвига а вторую сдвинуть на 15 баров назад и при условии когда они пересекуться выполнить условие.
как нистранно но даже так не срабатывает сигнал........
double per=iMA(NULL,0,14,0,MODE_SMMA,0,0);
double per1=iMA(NULL,0,14,0,MODE_SMMA,0,0);
if(per==per1)
{
........
}
double per=iMA(NULL,0,14,0,MODE_SMMA,0,0);
double per1=iMA(NULL,0,14,0,MODE_SMMA,0,0);
if(per==per1)
{
........
}
Так заработало..........а как же сделать со сдвигом?
double per=iMA(NULL,0,14,0,MODE_SMMA,0,0);
double per1=iMA(NULL,0,14,0,MODE_SMMA,0,0);
if(per==per1)
Э, учиться и учиться ка завещал великий Ленин.
Ну для начала что вы хотите сравнить два числа с плавающей точкой типа double, да они никогда равны не будут.
Можно найти сближение с заданной точностью, к примеру
if (MathAbs(per-per1)<0.001) //Извиняюсь за мой французский, возможно эту конструкцию можно сделать изящнее.
Для нахождения истинного пересечения нужно сравнивать значения с текущего и предыдущего интервалов
if ((per>per_prev)&&(per1<per1_prev) ||(per<per_prev)&&(per1>per1_prev)) //Что-то вроде вот такого, хотя не ручаюсь за правильность, но концепция именно такая.
примерно вот так?
double per_0=iMA(NULL,0,14,-15,MODE_SMMA,0,0);
double per1_0=iMA(NULL,0,24,0,MODE_SMMA,0,0);
double per_1=iMA(NULL,0,14,-15,MODE_SMMA,0,1);
double per1_1=iMA(NULL,0,24,0,MODE_SMMA,0,1);
if(per_1<per1_1 && per_0>per1_0)
{
if (MathAbs(per-per1)<0.001)
{
if ((per>per_prev)&&(per1<per1_prev) ||(per<per_prev)&&(per1>per1_prev))
{
............
}
}
}
если нет то поправьте пожалуйста.
примерно вот так?
Накиньте на график ваши машки и посмотрите, могут они пересекаться на 0 или 1 баре?
Даже страшно представить что это будет показывать)
На самом деле никогда не понимал попыток сдвинуть машку назад. Сдвигайте ее вперед. И в любом случае не стоит рассматривать пересечения на 0 баре, на нем машка ходит туда сюда, будут ложные срабатывания. (ну если она строится не по ценам OPEN конечно)
Даже страшно представить что это будет показывать)
На самом деле никогда не понимал попыток сдвинуть машку назад. Сдвигайте ее вперед. И в любом случае не стоит рассматривать пересечения на 0 баре, на нем машка ходит туда сюда, будут ложные срабатывания. (ну если она строится не по ценам OPEN конечно)
Немного подредактировал сдвиг машек
Чтоб не представлять, установи машки и посмотри.
Отстающая машка может пересечь обычную только на СВОЕМ нулевом баре. Для обычной это будет -15
А логику действий зачем обсуждать? Хозяин-барин