Разницу от цены и уровней сравнивайте. Меньшее - ближнее. Надеюсь понятно.
Yurixx: Ну я имел в виду, что когда покупаешь - ближайшее по направлению сделки будет 166.48.
meta-trader2007: Спасибо, понял. Как просортировать я понял - ArraySort, а, что бы выделить элемент из массива использовать ArrayInitialize или можно как-то проще? Вроде $Array[0], $Array[1]. Если по аналогии с пхп.
int start() { double Array[6]={166.85,165.98,166.48,166.25,165.65,167.37}; double price=166.30; ArraySort(Array); for (int x=0;x<6;x++) { if (Array[x]-price>0) break; } Print("Level = ",Array[x]); }Можно так, если я всё правильно понял.
Yurixx: Ну я имел в виду, что когда покупаешь - ближайшее по направлению сделки будет 166.48.
meta-trader2007: Спасибо, понял. Как просортировать я понял - ArraySort, а, что бы выделить элемент из массива использовать ArrayInitialize или можно как-то проще? Вроде $Array[0], $Array[1]. Если по аналогии с пхп.
Думаю через $Array[х]
Вот! Огромное всем спасибо! То, что надо! :)
int start() { double Array[6]={166.85,165.98,166.48,166.25,165.65,167.37}; double price=166.30; ArraySort(Array); for (int x=0;x<6;x++) { if (Array[x]-price>0) break; } Print("Level = ",Array[x]); }Можно так, если я всё правильно понял.
Никак не получается задать эррэй с переменными. Вот, помогите,
пож. разобраться! А то, что-то не могу найти в описании про это.
double pvtlvl1=iCustom(NULL,1440, "Pivot",0,0); double pvtlvl2=iCustom(NULL,1440, "Pivot",1,0); double pvtlvl3=iCustom(NULL,1440, "Pivot",2,0); double pvtlvl4=iCustom(NULL,1440, "Pivot",3,0); double pvtlvl5=iCustom(NULL,1440, "Pivot",4,0); double pvtlvl6=iCustom(NULL,1440, "Pivot",5,0); double pvtlvl7=iCustom(NULL,1440, "Pivot",6,0); double Pivot[7]={pvtlvl1,pvtlvl2,pvtlvl3,pvtlvl4,pvtlvl5,pvtlvl6,pvtlvl7};
Выдает:
'}' - comma or semicolon expected
'pvtlvl2' - variable already defined
'pvtlvl3' - variable already defined
'pvtlvl4' - variable already defined
'pvtlvl5' - variable already defined
'pvtlvl6' - variable already defined
Воспринимает только 1ый и последний. :(
double pvtlvl1=iCustom(NULL,1440, "Pivot",0,0); double pvtlvl2=iCustom(NULL,1440, "Pivot",1,0); double pvtlvl3=iCustom(NULL,1440, "Pivot",2,0); double pvtlvl4=iCustom(NULL,1440, "Pivot",3,0); double pvtlvl5=iCustom(NULL,1440, "Pivot",4,0); double pvtlvl6=iCustom(NULL,1440, "Pivot",5,0); double pvtlvl7=iCustom(NULL,1440, "Pivot",6,0); double Pivot; int array Pivot[7]={pvtlvl1,pvtlvl2,pvtlvl3,pvtlvl4,pvtlvl5,pvtlvl6,pvtlvl7};
'Pivot' - comma or semicolon expected (1198, 19)
:(
int start() { double Array[7]; double price=166.30; Array[0]=iCustom(NULL,1440, "Pivot",0,0); Array[1]=iCustom(NULL,1440, "Pivot",1,0); Array[2]=iCustom(NULL,1440, "Pivot",2,0); Array[3]=iCustom(NULL,1440, "Pivot",3,0); Array[4]=iCustom(NULL,1440, "Pivot",4,0); Array[5]=iCustom(NULL,1440, "Pivot",5,0); Array[6]=iCustom(NULL,1440, "Pivot",6,0); ArraySort(Array); for (int x=0;x<6;x++) { if (Array[x]-price>0) break; } Print("Level = ",Array[x]); }тогда так
Спасибо! :)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Все добрый день!
Вот тут такой еще вопросик появился в работе над советником.
Есть массив из 6 значений (уровни дневные). Вот сижу ломаю голову как бы сделать определение ближайшего уровня.
Например хочу купить по цене 166.30, есть уровень в 166.25 и 166.48, 166. 85
Как объяснить ему, что ближайший уровень 166.48?
Спасибо, Ред. :)