Да, пожалуйста.
Думаю, может от дукаса лучше ставить и не заморачиваться? Что скажете об их котировках? Отличия будут серьезные, если использовать фикс стоп и тейк по 10 - 15 пунктов и более?
[Обсуждение] Тестирование/оптимизация советников: общие вопросы📌
От lucksis, 9 августа, 2011 в Общие вопросы
Да, пожалуйста.
Думаю, может от дукаса лучше ставить и не заморачиваться? Что скажете об их котировках? Отличия будут серьезные, если использовать фикс стоп и тейк по 10 - 15 пунктов и более?
Есть опыт тестов ночных скальперов.
Пример CADCHF
Дукаскопи котировки ночник зарабатывает.
RVD и FxOpen котировки ночник сливает.
_http://www.ex.ua/653183949769 собранные котировки 11 08 2014 - 24 09 2014
Спасибо.
Добавлено: 30-10-2014 21:15:03
Если за последние месяцы поставить котировки этих брокеров, а за более ранние периоды до этого момента поставить котировки дукаса, они будут состыковаться?
Спасибо.
Добавлено: 30-10-2014 21:15:03
Если за последние месяцы поставить котировки этих брокеров, а за более ранние периоды до этого момента поставить котировки дукаса, они будут состыковаться?
Касается только скальперов -
тестим на дукасе, значит и бота делаем под Дукас
тестим на RVD и торгуем на RVD
и т.д.
Что - то лепить из разных источников не стоит.
Для скальперов актуальны котировки за последний год, глубже в историю не надо.
Добрый день всем.Иногда бывает,что советник(и) перестает тестироваться.Что за это время происходило в компьютере - это смена советника в тестере на другой и все.После этого не тестируется.В журнале сообщения : no ticks genereted и current spread 47 , 46, 48 used.Где -то читал ,что нужно зачистить структуру(возможно в моем случае это выход),но не знаю что это где и как зачищать надо.Может кто сталкивался с подобной проблемой?
Здравствуйте.
При написании советника столкнулся со странным явлением: советник в тестере и на реале по разному работает.
По стратегии мне нужно использовать данные индикатора более высокого таймфрейма.
Если советник работает на М5, то я должен брать данные для индикатора iFractals для М15.
В тестере стратегий всё отлично работает.
При работе на реальном счете в нужный момент (когда появляются условия открытия ордеров) не доступны актуальные данные, т.е. iFractals выдает мне устаревшие данные: не видит какой-то промежуток времени. Размер этого промежутка больше чем допустимый и не постоянный: от часа до суток - не могу понять от чего зависит.
Команда "RefreshRates();" не помогает.
Менял индикатор на другой: ZigZag. Не помогло. Т.е. дело не в индикаторе.
Вопрос: как заставить вовремя обновляться данные на старшем таймфрейме, что-бы индикаторы возвращали правильные данные?
Кусок кода:
int Used_PERIOD = Period(); // период графика
int Used_PERIOD0 = PERIOD_M15; // период более высокого таймфрейма
int Dim_Size1 = 9; // количество элементов в массиве
datetime M2_Time[9];
double M2_Price[9];
int Flag2_Max[9];
int num = 0;
int i = 0;
double ZZ, ZZ1, ZZ2;
RefreshRates(); //
while (num {
ZZ1 = iFractals(h_Symbol, Used_PERIOD0, MODE_UPPER, i);
ZZ2 = iFractals(h_Symbol, Used_PERIOD0, MODE_LOWER, i);
ZZ = NULL;
if (ZZ1 != NULL ) { ZZ = ZZ1; Flag_M = 1; }
else
if (ZZ2 != NULL ) { ZZ = ZZ2; Flag_M = -1; }
if( ZZ != NULL )
{
M2_Price[num] = ZZ;
M2_Time[num] = iTime( h_Symbol, Used_PERIOD0, i);
Flag2_Max[num] = Flag_M;
num++;
}
i++;
}
//вывод на экран времени 1-го доступного бара индикатора
misli( "obj_3", "T0= "+TimeToStr(M2_Time[0],TIME_DATE|TIME_MINUTES|TIME_SECONDS), Red );
Скрин терминала во вложении.
Временно нашел кривое решение: дополнительно открыл графики с М15 для нужных валютных пар - но это не удобно и не правильно.
Помогите плиз.
Не пробовали открыть дополнительную вкладку старшего ТФ и индюка туда кинуть?
В своих совах стараюсь не использовать индюки с других ТФ - пересчитываю на текущий.
Не пробовали открыть дополнительную вкладку старшего ТФ и индюка туда кинуть?
В своих совах стараюсь не использовать индюки с других ТФ - пересчитываю на текущий.
Да, я так и сделал. Это помогло. Но как я написал выше в конце своего поста: это неудобно и неправильно, так если много валютных пар и разных таймфреймов то количество окон умножается на 2.
Над пересчетом с маленького ТФ на больший таких индикаторов как iFractals или ZigZag не задумывался - нужно подумать как это реализовать. А это возможно?
Неужели нет более простого решения :(
Возможно. Геморрой, конечно, но зато будет работать как часы.
Над пересчетом с маленького ТФ на больший таких индикаторов как iFractals или ZigZag не задумывался - нужно подумать как это реализовать. А это возможно?
Неужели нет более простого решения :(
Можно сделать индюк пересчитывающий ТФ и натравить его на все используемые пары, но это тоже не просто...
Не пробовали открыть дополнительную вкладку старшего ТФ и индюка туда кинуть?
Погорячился я с выводами. Этот метод улучшает работу, но не дает 100% гарантии. Всё равно случаются сбои.
Вывожу время открытия последнего бара по старшему таймфрейму:
TimeToStr((datetime)SeriesInfoInteger(h_Symbol,Used_PERIOD0,SERIES_LASTBAR_DATE),TIME_DATE|TIME_MINUTES|TIME_SECONDS).
И вижу, что оно со временем не меняется :(
Бывалые, как заставить принудительно обновить данные на таймфрейме, отличном от того где висит эксперт?
Добавлено: 08-01-2015 21:55:42
Нашел решение.
Помогло вот это:
//+-------------------------------------------------------------------------------------+
//| Получение времени открытия бара таймфрейма, отличного от текущего |
//+-------------------------------------------------------------------------------------+
datetime GetTime(int tf, int index)
{
int cnt = 0; // Счетчик обращений к таймсерии
while (cnt {
datetime res = iTime(NULL, tf, index); // Получаем время открытия нужного..
// ..бара
if (GetLastError() != 4066) // Если после обращения к таймсерии не
break; // ..возникла ошибка "Запрошенные..
// ..исторические данные в состоянии..
// ..обновления", то выходим из цикла
Comment("Ожидаются данные для бара ", index,
" таймфрейма ", TFToString(tf), "...");
cnt++; // Иначе увеличиваем счетчик обращений
Sleep(1000); // ..и делаем паузу в 1 сек
}
Comment("");
if (cnt return(res); // ..вернем содержимое res
else // Иначе вернем ошибку
return(-1);
}
Пока GetTime(tf, 0) не вернет мне значение > 0, индикаторы с другим таймфреймом не считаю.
Изменено 9 января, 2015 пользователем BlackWizard0
Зарание извентиляюсь, возможно, не в тот раздел пишу. Есть такая мысль для обсуждения. Начинающие трейдеры и профессионалы постоянно занимаются тестированием советников. Для тестов нужен VPS, я не знаю как кто к этому подходит, возможно, для некоторых, это не особо удобно, в основном для начинающих. Не сочтите за рекламу, но есть такой сервис копирования Share4you. Там по идеи можно копировать и без VPS. Просто пополнить счет хоть на несколько долларов на центовик и копировать не вкладываясь в VPS.
Что я предлагаю? Я предлагаю создать в теме опрос и выставлять в кандидаты советников, победителей я буду ставить на свой VPS (по мере своих финансовых возможностей и здравого смысла) для тестирования и подключать к Share4you. В дальнейшем, если я буду получать достаточно комиссионных от Share4you, хотя я пока сомневаюсь в этом) будут опросы по включению в кандидаты на копирование платных сигналов на MQL5. У кого какие мысли по этому поводу?
Зарание извентиляюсь, возможно, не в тот раздел пишу. Есть такая мысль для обсуждения. Начинающие трейдеры и профессионалы постоянно занимаются тестированием советников. Для тестов нужен VPS, я не знаю как кто к этому подходит, возможно, для некоторых, это не особо удобно, в основном для начинающих. Не сочтите за рекламу, но есть такой сервис копирования Share4you. Там по идеи можно копировать и без VPS. Просто пополнить счет хоть на несколько долларов на центовик и копировать не вкладываясь в VPS.
Что я предлагаю? Я предлагаю создать в теме опрос и выставлять в кандидаты советников, победителей я буду ставить на свой VPS (по мере своих финансовых возможностей и здравого смысла) для тестирования и подключать к Share4you. В дальнейшем, если я буду получать достаточно комиссионных от Share4you, хотя я пока сомневаюсь в этом) будут опросы по включению в кандидаты на копирование платных сигналов на MQL5. У кого какие мысли по этому поводу?
Мысль такая - читай темы, общайся с людьми, всё придёт, но всё надо делать самому.
Самые живые темы с советниками и есть то что тебе нужно, дерзай.
Ничего у тебя не получиться.
Привет.
Имею возможность тестировать автоматические стратегии для MT4 в качестве 99% (включая renko, median и range bars).
Для этого используется тиковая дата и специальный платный софт. Tick Data Suite.
Пишите в личку. Срочность не гарантирую, по мере сил и времени. Бесплатно.
Изменено 27 февраля, 2015 пользователем Virtikus
Коллеги, хотелось бы узнать ваше мнение, советы, по поводу оптимизации обычных советников, не мартингейлов, усреднителей.
Точнее, по поводу выбора качества котировок тем создано очень много, а вот тем, как отбирать из кучи оптимизированных параметров - маловато. Кто как сортирует эту кучу информации?
Лично я забиваю все данные в Ексель, и настраиваю сортировку вначале по Прибыльности, потом по коэффициенту, равному соотношению общей прибыли к максимальной просадке. Но с каждым разок убеждаюсь, что способ не идеален. Делитесь мнением.
Приветствую всех!
Имеет ли значение для мартина качество моделирования? 90 или 99%. Если мартин работает на 30 мин
90 от 99% процентов отличается тем, что 90% это минутные свечи графику а 99% это свечи сделанные по тикам. Поэтому надо смотреть на стратегию открытия/закрытия ордеров. Если важна точная детализация или цели/стопы очень маленькие то надо делать 99% процентное моделирование. Мартин на это не влияет.
90 от 99% процентов отличается тем, что 90% это минутные свечи графику а 99% это свечи сделанные по тикам. Поэтому надо смотреть на стратегию открытия/закрытия ордеров. Если важна точная детализация или цели/стопы очень маленькие то надо делать 99% процентное моделирование. Мартин на это не влияет.
Ок, спасибо. Я помню в какой то из веток про сетку ответ видел, но в последний момент засомневался и решил еще раз спросить)
Добрый день, тестируется советник на м 5, в коде следующая функция :double SMA45=iMA(NULL,60,45,0,MODE_EMA,PRICE_CLOSE,0);, принтом вывожу, всегда показывает значение 0, при тестировании на Н1 , расчет выполняется как надо, в чем подвох? неужели нельзя тестировать на одном тф а значения получать с другого? котировки загружены от м 1 до н 1.в этом же советнике, через icustom получаются данные с другого индикатора по м5.Спасибо.
читай хелп, описание функции:
double iMA(
string symbol, // имя символа
int timeframe, // таймфрейм
int ma_period, // период
int ma_shift, // сдвиг средней
int ma_method, // метод усреднения
int applied_price, // тип цены
int shift // сдвиг
);
второй параметр: Период. Может быть одним из значений перечисления ENUM_TIMEFRAMES. 0 означает период текущего графика.
т.е для того, чтобы использовать эту функцию на разных тф, нужно поставить вместо 60 нуль.
double SMA45=iMA(NULL,0,45,0,MODE_EMA,PRICE_CLOSE,0)
[
читай хелп, описание функции:
double iMA(
string symbol, // имя символа
int timeframe, // таймфрейм
int ma_period, // период
int ma_shift, // сдвиг средней
int ma_method, // метод усреднения
int applied_price, // тип цены
int shift // сдвиг
);
второй параметр: Период. Может быть одним из значений перечисления ENUM_TIMEFRAMES. 0 означает период текущего графика.
т.е для того, чтобы использовать эту функцию на разных тф, нужно поставить вместо 60 нуль.
double SMA45=iMA(NULL,0,45,0,MODE_EMA,PRICE_CLOSE,0)
Дак в том и дело , что текущий график у меня м 5, а мне нужно вычислить значения на н1 , если поставить 0 то будет считать по м5. разве не так ?
После загрузки Н1 истории надо перегрузить МТ (бывает не скидывает в базу)
Для МА можно не увеличивать ТФ с 5 до 60, а на текущем М5 увеличить период кратно, т.е. 45 * 60/5 = 45 * 12 = 540 - получится то-же самое...
Я вообще не рекомендую в ботах использовать в расчётах данные с другого ТФ - МТ сам отказывается обновлять базу...
Изменено 16 мая, 2015 пользователем 0ll
После загрузки Н1 истории надо перегрузить МТ (бывает не скидывает в базу)
Для МА можно не увеличивать ТФ с 5 до 60, а на текущем М5 увеличить период кратно, т.е. 45 * 60/5 = 45 * 12 = 540 - получится то-же самое...
МТ ребутал, файлы хистори на месте. спасибо за идею с увеличением периода МА!
Здравствуйте,
Недавно начал пользоваться МТ4 и накидал туда много советников. У каждого прописал свой маджик дабы знать какие сделки кто открыл. Теперь вопрос.
Я могу добавит поле маджик номеров в истории чтобы сортировать по ним сделки?
Если нет
Я могу их вывести в Коментарии чтобы сортировать по ним?
Если нет
Можно ли сделать выгрузку в эксель с этими номерами?
Пробовал сделать обычную выгрузку в эксель. Номеров там не оказалось.
Попробовал вот такой советник:
_https://www.mql5.com/en/code/10555
Но файл csv не создается.
Кто что может посоветовать?
Здравствуйте,
Недавно начал пользоваться МТ4 и накидал туда много советников. У каждого прописал свой маджик дабы знать какие сделки кто открыл. Теперь вопрос.
Я могу добавит поле маджик номеров в истории чтобы сортировать по ним сделки?
Если нет
Я могу их вывести в Коментарии чтобы сортировать по ним?
Если нет
Можно ли сделать выгрузку в эксель с этими номерами?
Пробовал сделать обычную выгрузку в эксель. Номеров там не оказалось.
Попробовал вот такой советник:
_https://www.mql5.com/en/code/10555
Но файл csv не создается.
Кто что может посоветовать?
Магики видны только из советника/скрипта/индюка. Если есть возможность меняйте комментарий и в ехеле сортируйте по комментарию. если такой возможности нет, то здесь в разделе информационных индикаторов найдёте индюк который выводит на экран стату по всем магикам на счёте.
Изменено 25 июля, 2015 пользователем Pavel888
Написал советника. Тестирую его в стандартной MT4, подгрузил архивы котировок, выставил ТФ и т.д.
Результаты тестов все время отличаются, бывает очень сильно, до 25%!
1 раз тестирую без визуализации.
2 раз тестирую с визуализацией.
3 раз тестирую с визуализацией и применением своего шаблона.
(все остальные настройки одинаковые)
Все три раза разные цифры! Более того. Если начать повторять тесты, то цифры опять будут другие, даже если все параметры одинаковые!
Почему так и как исправить?
Для публикации сообщений создайте учётную запись или авторизуйтесь
Перейти к списку тем