Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Уже не знаю... как люди (трейдеры) доходят до Чемпионатов MQL4 имея весьма убогую тестовую систему в лице MT4???????
Товарищи давайте не будем уходить от темы?
От темы никто и не уходил. Но уметь пользоваться тестером - сродни искусству. Мало написать советник, нужно еще поверить его результатам. И не только поверить. Но и иметь обоснованную оценку для этого. Если знать недостатки тестер и умело их использовать. То всегда можно сделать грааль, и наоборот используя его достоинства сделать вполне рабочую машинку (учитывая недостатки конечно)
Товарищи давайте не будем уходить от темы?
Темы нет, т.к. Вы ее не задали. Есть только холивар и его желательно модераторам вовремя прикрыть.
Если у Вас есть конкретный вопрос, то для этого существует специальная ветка: https://www.mql5.com/ru/forum/134688
Товарищи давайте не будем уходить от темы?
Так вам о высоких материях потрещать? Так бы сразу и сказал.
Или конкретизируйте тему, или выкладывайте советника и конечную цель, или удачи в разгребании флуда.
И от статей воротить нос не надо. Это не 5ка :)
Повторяю просьбу. В противном случае в отсутствие конструктива ветка будет снесена.
Есть советник. Вот скрин работы тестера:
Временной фильтр не отражает работы на тестере!
void NoiseFilter() {
int NoiseTime;
double NoiseClosePrice;
double NoiseOpenPrice;
int CloseBecauseNoise;
double NoiseNewPrice;
int trade = OrdersTotal() - 1;
for (int i = trade; i >= 0; i--) {
if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (WriteDebugLog) Print("NoiseFilter: OrderSelect() error = ", GetLastError());
} else {
if (OrderMagicNumber() == MagicNumber) {
if (OrderType() <= OP_SELL) {
if (OrderSymbol() == Symbol()) {
NoiseTime = WaitTime - OrderOpenTime();
if (NoiseTime > NoiseFilter_a) {
NoiseClosePrice = NormalizeDouble(OrderClosePrice(), Digits);
NoiseOpenPrice = NormalizeDouble(OrderOpenPrice(), Digits);
CloseBecauseNoise = 0;
if (OrderType() == OP_BUY) NoiseNewPrice = NoiseClosePrice - NoiseOpenPrice;
else NoiseNewPrice = NoiseOpenPrice - NoiseClosePrice;
if (NoiseTime < NoiseFilter_b && NoiseNewPrice >= NoiseFilter_f) CloseBecauseNoise = 1;
else {
if (NoiseTime > NoiseFilter_b && NoiseTime < NoiseFilter_c && NoiseNewPrice >= NoiseFilter_g) CloseBecauseNoise = 2;
else {
if (NoiseTime > NoiseFilter_c && NoiseTime < NoiseFilter_d && NoiseNewPrice >= NoiseFilter_h) CloseBecauseNoise = 3;
else {
if (NoiseTime > NoiseFilter_d && NoiseTime < NoiseFilter_e && NoiseNewPrice >= NoiseFilter_i) CloseBecauseNoise = 4;
else
if (NoiseTime > NoiseFilter_e && NoiseNewPrice >= NoiseFilter_j) CloseBecauseNoise = 5;
}
}
}
if (CloseBecauseNoise != 0)
{
CloseOrder(OrderTicket(), OrderLots(), OrderType(), SP);
Print(" --- Order closed NoiseFilter! ---");
}
}
}
}
}
}
}
}