Доброе утро, не мог бы кто-нибудь помочь мне сделать этот тестер, мой код и картинку того, что я действительно хотел бы, я был бы очень признателен с вашей помощью.
Что в твоем понимании тестер?
Renato Jose:
моя попытка
Это просто объекты на графике, а какой функционал?
Доброе утро, не мог бы кто-нибудь помочь мне сделать этот тестер, мой код и картинку того, что я действительно хотел бы, я был бы очень признателен с вашей помощью.
моя попытка
Я бы хотел что-то подобное
А так?
static double nWin = 1.00; static double nLoss = 1.00; if(close[i-TExpiration]>Buffer1[i]&&i>1){nWin+=nWin+1;} else{nLoss+=nLoss+1;} if(close[i-TExpiration]<Buffer2[i]&&i>1){nWin+=nWin+1;} else{nLoss+=nLoss+1;} ObjectCreate("Name", OBJ_LABEL,0,0,0);// Creating obj
большое спасибо за сотрудничество, но бесконечный цикл продолжается, следует что-то более пояснительное, чем я бы хотел
Нужно правильно составить логическое выражение
Не уверен, но возможно так
static double nWin = 1.00; static double nLoss = 1.00; if(close[i-TExpiration]>Buffer1[i]&&i>1){nWin+=nWin+1;} else{nLoss+=nLoss+1;} if(close[i-TExpiration]<Buffer2[i]&&i>1){nWin-=nWin+1;} else{nLoss-=nLoss+1;} ObjectCreate("Name", OBJ_LABEL,0,0,0);// Creating obj
Пробуйте сами
Нужно правильно составить логическое выражение
Не уверен, но возможно так
Пробуйте сами
есть проблема, он дает бесконечный цикл, и я не знаю, как ее решить, я хотел бы сохранить историю в счетчике, а затем добавить то, что в настоящее время
есть проблема, он дает бесконечный цикл, и я не знаю, как ее решить, я хотел бы сохранить историю в счетчике, а затем добавить то, что в настоящее время
Прописать перед началом цикла условие. Я не вижу смысла добавления данных онлайн, это-же тестер, пусть прогоняет все данные что уже есть и на этом успокаивается, ну хотя-бы до закрытия бара
Прописать перед началом цикла условие. Я не вижу смысла добавления данных онлайн, это-же тестер, пусть прогоняет все данные что уже есть и на этом успокаивается, ну хотя-бы до закрытия бара
что-то вроде этого?
Я думаю, это некоторая деталь, которую нужно решить
for (int i = Bars-1; i<6; i--) { if(Buffer1[i]>0 && Buffer1[i]!=EMPTY_VALUE && Close[i-5]>Buffer1[i]) { nVit=nVit+1; } else { nDer=nDer+1; } if(close[i+5]<Buffer2[i]&&i>1) { nVit=nVit+1; } else { nDer=nDer+1; } if(Buffer2[i]>0 && Buffer2[i]!=EMPTY_VALUE && Close[i-5]<Buffer2[i]) { nVit=nVit+1; } else { nDer=nDer+1; } }
но где бы я разрезал бесконечный цикл? потому что они добавляют все для победы и бесконечно добавляют в каждом тике все стрелки (буферы), содержащиеся на экране
Можно так, работа только на открытии нового бара:
int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { //--- if(rates_total - prev_calculated == 0) return(rates_total); ...
Можно так, работа только на открытии нового бара:
Тогда уж так
if(rates_total == prev_calculated) return(rates_total);
Зачем лишние вычисления ;)
Можно так, работа только на открытии нового бара:
Еще раз спасибо, завтра я сделаю еще несколько тестов со всем, что вы мне прошли, и обновлю, если это неправильно или неправильно. еще раз спасибо
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Доброе утро, не мог бы кто-нибудь помочь мне сделать этот тестер, мой код и картинку того, что я действительно хотел бы, я был бы очень признателен с вашей помощью.
моя попытка
Я бы хотел что-то подобное