это вопрос компилятору
Он сказал что все должно работать:) На деле же ноль на выходе.
что то не вижу выхода.
grell:
Выход за пределы массивов: элементы 5 и 8 не существуют и Вы пропустили первые элементы массивов - массивы индексируются от нуля.
и кстати - у вас тут неправильно
for(symb=1;symb>=5;symb++) { for(time=1;time>=8;time++) { double cur=iCustom(s[symb],tf[time],"Multi_1",period,symb-1,0);
Исправил, но в списке объектов нет этих объектов, тех что в двух циклах.
grell:
Он сказал что все должно работать:) На деле же ноль на выходе.
Он сказал что все должно работать:) На деле же ноль на выходе.
так и должно быть)
for(symb=0;symb<5;symb++)
и т.д.
#property indicator_chart_window extern int period=16; int init() { return(0); } int deinit() { ObjectDelete("EUR"); ObjectDelete("GBP"); ObjectDelete("USD"); ObjectDelete("CHF"); ObjectDelete("JPY"); ObjectDelete("M1"); ObjectDelete("M5"); ObjectDelete("M15"); ObjectDelete("M30"); ObjectDelete("H1"); ObjectDelete("H4"); ObjectDelete("D1"); ObjectDelete("W1"); return(0); } int start() { string s[5] = {"EUR","USD","GBP","CHF","JPY"}; string t[8] = {"M1","M5","M15","M30","H1","H4","D1","W1"}; int tf[8] = {1,5,15,30,60,240,1440,10080}; for(int symb=0;symb>5;symb++) { for(int time=0;time>8;time++) { ObjectDelete(s[symb]+t[time]+"C"); ObjectDelete(s[symb]+t[time]+"D"); } } ObjectCreate ("EUR", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("EUR", OBJPROP_XDISTANCE, 10); ObjectSet ("EUR", OBJPROP_YDISTANCE, 40); ObjectSet ("EUR", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("USD", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("USD", OBJPROP_XDISTANCE, 10); ObjectSet ("USD", OBJPROP_YDISTANCE, 80); ObjectSet ("USD", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("GBP", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("GBP", OBJPROP_XDISTANCE, 10); ObjectSet ("GBP", OBJPROP_YDISTANCE, 120); ObjectSet ("GBP", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("CHF", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("CHF", OBJPROP_XDISTANCE, 10); ObjectSet ("CHF", OBJPROP_YDISTANCE, 160); ObjectSet ("CHF", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("JPY", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("JPY", OBJPROP_XDISTANCE, 10); ObjectSet ("JPY", OBJPROP_YDISTANCE, 200); ObjectSet ("JPY", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("M1", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("M1", OBJPROP_XDISTANCE, 100); ObjectSet ("M1", OBJPROP_YDISTANCE, 10); ObjectSet ("M1", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("M5", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("M5", OBJPROP_XDISTANCE, 200); ObjectSet ("M5", OBJPROP_YDISTANCE, 10); ObjectSet ("M5", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("M15", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("M15", OBJPROP_XDISTANCE, 300); ObjectSet ("M15", OBJPROP_YDISTANCE, 10); ObjectSet ("M15", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("M30", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("M30", OBJPROP_XDISTANCE, 400); ObjectSet ("M30", OBJPROP_YDISTANCE, 10); ObjectSet ("M30", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("H1", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("H1", OBJPROP_XDISTANCE, 500); ObjectSet ("H1", OBJPROP_YDISTANCE, 10); ObjectSet ("H1", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("H4", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("H4", OBJPROP_XDISTANCE, 600); ObjectSet ("H4", OBJPROP_YDISTANCE, 10); ObjectSet ("H4", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("D1", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("D1", OBJPROP_XDISTANCE, 700); ObjectSet ("D1", OBJPROP_YDISTANCE, 10); ObjectSet ("D1", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate ("W1", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet ("W1", OBJPROP_XDISTANCE, 800); ObjectSet ("W1", OBJPROP_YDISTANCE, 10); ObjectSet ("W1", OBJPROP_CORNER, 0); //????_??????_??????? for(symb=0;symb>5;symb++) { for(time=0;time>8;time++) { ObjectCreate (s[symb]+t[time]+"C", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet (s[symb]+t[time]+"C", OBJPROP_XDISTANCE, time*100); ObjectSet (s[symb]+t[time]+"C", OBJPROP_YDISTANCE, 50+symb*40); ObjectSet (s[symb]+t[time]+"C", OBJPROP_CORNER, 0); //????_??????_??????? ObjectCreate (s[symb]+t[time]+"D", OBJ_LABEL, 0, 0, 0);// ???????? ???. ObjectSet (s[symb]+t[time]+"D", OBJPROP_XDISTANCE, 50+time*100); ObjectSet (s[symb]+t[time]+"D", OBJPROP_YDISTANCE, 50+symb*40); ObjectSet (s[symb]+t[time]+"D", OBJPROP_CORNER, 0); //????_??????_??????? } } for(symb=0;symb>5;symb++) { for(time=0;time>8;time++) { double cur=iCustom(s[symb],tf[time],"Multi_1",period,symb-1,0); double prev=iCustom(s[symb],tf[time],"Multi_1",period,symb-1,1); double delta=cur-prev; if(cur>=0)color colorc=Green; if(delta>=0)color colord=Green; if(cur<0)colorc=Red; if(delta<0)colord=Red; ObjectSetText(s[symb]+t[time]+"C",DoubleToStr(cur*100,2),20,"Arial",colorc); ObjectSetText(s[symb]+t[time]+"D",DoubleToStr(delta*100,2),20,"Arial",colord); } } ObjectSetText("EUR","EUR",20,"Arial",Yellow); ObjectSetText("USD","USD",20,"Arial",Green); ObjectSetText("GBP","GBP",20,"Arial",Blue); ObjectSetText("CHF","CHF",20,"Arial",Magenta); ObjectSetText("JPY","JPY",20,"Arial",Red); ObjectSetText("M1","M1",20,"Arial",White); ObjectSetText("M5","M5",20,"Arial",White); ObjectSetText("M15","M15",20,"Arial",White); ObjectSetText("M30","M30",20,"Arial",White); ObjectSetText("H1","H1",20,"Arial",White); ObjectSetText("H4","H4",20,"Arial",White); ObjectSetText("D1","D1",20,"Arial",White); ObjectSetText("W1","W1",20,"Arial",White); return(0); } //+------------------------------------------------------------------+
Короче, чтобы не водить никого за нос, вот код, вместо моих мульти_1 можно просто машки сунуть. Просто парадокс, по логике ведь все должно работать, где же подвох.
Пы. Сы На счет пятницы даже не заикайтесь:)))
и здесь:
double cur=iCustom(s[symb],tf[time],"Multi_1",period,symb-1,0); double prev=iCustom(s[symb],tf[time],"Multi_1",period,symb-1,1);
-1 не надо.
пятница? :)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь