привожу код индикатора(подправленного и изменённого при помоши VININa - большое спасибо ему). Всё хорошо, вроде всё понятно....... Хотел немного переделать его. НИ КАК. Идея такая MACD снизу начинает расти (ВСЕ его значения Меньше значения N) вот тут и выставляется стрелка BAY, для SHEL соответственно наоборот. Попытался переделать торговые условия (поменял значения < на > не получилось). Рассуждал так, если MACD начинает расти (он отрицательный),то момент появления стрелки совпадает с торговым условием. Вроде правильно......НО СТРЕЛОК НЕМЕРЕНО ПОЯВИЛОСЬ........... Подскажите плз!!!!!!!!!!!!!!
Подскажите плиз! Все значения MACD содержатся в одномерном массиве MACD[], хочу партиями (каждые 10 элементов) проверить их на наличие максимум и минимумов, и нарисовать их в индюке. Вот код:
for(i=0; i<limit; i=i+10)
{
int k = i;
for(k=i; k<i+10; k++)
{
x10[k] = MACD[k];
}
int maxValueIdx=ArrayMaximum(x10);
int minValueIdx=ArrayMinimum(x10);
MAX[k] = maxValueIdx;
MIN[k] = minValueIdx;
}
Noterday писал(а)>> Подскажите плиз! Все значения MACD содержатся в одномерном массиве MACD[], хочу партиями (каждые 10 элементов) проверить их на наличие максимум и минимумов, и нарисовать их в индюке. Вот код: Почему не рисуется?
какова размерность массива x10 ?
10? Тогда надо так переписать:
for(i=0; i<limit; i+=10)
{
int k;
for(k=0; k<10; k++)
{
x10[k] = MACD[i+k];
}
int maxValueIdx=ArrayMaximum(x10);
int minValueIdx=ArrayMinimum(x10);
MAX[i] = maxValueIdx;
MIN[i] = minValueIdx;
}
и не понятно, что именно вы хотите получить в массивах MAX и MIN
Ситуация следующая, открываю ордер с помощью orderSend, 1 лот, закрываю c помощью orderClose, 0,5 лота.... он закрывает половину и открывает новый ордер с другим тикетом, как бы мне оперативно подхватить тикет вновь открытого ордера?
Xors писал(а)>> Ситуация следующая, открываю ордер с помощью orderSend, 1 лот, закрываю c помощью orderClose, 0,5 лота.... он закрывает половину и открывает новый ордер с другим тикетом, как бы мне оперативно подхватить тикет вновь открытого ордера?
никак. только поиск перебором среди открытых и отложенных ордеров.
Noterday писал(а)>> Подскажите плиз! Все значения MACD содержатся в одномерном массиве MACD[], хочу партиями (каждые 10 элементов) проверить их на наличие максимум и минимумов, и нарисовать их в индюке. Вот код: Почему не рисуется?
привожу код индикатора(подправленного и изменённого при помоши VININa - большое спасибо ему).
Всё хорошо, вроде всё понятно....... Хотел немного переделать его. НИ КАК. Идея такая MACD снизу начинает расти (ВСЕ его значения Меньше значения N) вот тут и выставляется стрелка BAY,
для SHEL соответственно наоборот. Попытался переделать торговые условия (поменял значения < на > не получилось). Рассуждал так, если MACD начинает расти (он отрицательный),то момент появления стрелки совпадает с торговым условием. Вроде правильно......НО СТРЕЛОК НЕМЕРЕНО ПОЯВИЛОСЬ...........
Подскажите плз!!!!!!!!!!!!!!
Есть МАКД с параметрами 9 и 12.
Верно ли, что он показывает разницу между МА с периодами 9 и 12? А то у меня какой-то разбег в цифрах.
Проверьте соответствие ma_method, applied_price в МА и МАКД.
Все значения MACD содержатся в одномерном массиве MACD[], хочу партиями (каждые 10 элементов) проверить их на наличие максимум и минимумов, и нарисовать их в индюке.
Вот код:
Почему не рисуется?
Подскажите плиз!
Все значения MACD содержатся в одномерном массиве MACD[], хочу партиями (каждые 10 элементов) проверить их на наличие максимум и минимумов, и нарисовать их в индюке.
Вот код:
Почему не рисуется?
и не понятно, что именно вы хотите получить в массивах MAX и MINкакова размерность массива x10 ?
10?
Тогда надо так переписать:
Ситуация следующая, открываю ордер с помощью orderSend, 1 лот, закрываю c помощью orderClose, 0,5 лота.... он закрывает половину и открывает новый ордер с другим тикетом, как бы мне оперативно подхватить тикет вновь открытого ордера?
никак.
только поиск перебором среди открытых и отложенных ордеров.
lots=UseLots();
if (lots==0) return(0);
i=OrderSend(Symbol(),OP_BUY,UseLots(),NormalizeDouble(Ask, Digits),slippage,Ask-StopLoss*Point,Ask+TakeProfit*Point,EA,magic,0,Blue);
lots=UseLots();
if (lots==0) return(0);
i=OrderSend(Symbol(),OP_SELL,UseLots(),NormalizeDouble(Bid, Digits),slippage,Bid+StopLoss*Point,Bid-TakeProfit*Point,EA,magic,0,Red);
Ошибка 4107 на 1 из 10 ордеров или на 3 из 25 по разному бывает ошибка в тестере
А величина slippage какова сообщи и какие котировки 5 или 4 знака после запятой.Проверьте соответствие ma_method, applied_price в МА и МАКД.
Уже. Там у МА вместо 12 было 120. То-то я изумлялась! :)
Подскажите плиз!
Все значения MACD содержатся в одномерном массиве MACD[], хочу партиями (каждые 10 элементов) проверить их на наличие максимум и минимумов, и нарисовать их в индюке.
Вот код:
Почему не рисуется?