ТЕСТ СОВЕТНИКА, СТРАТЕГИИ

  • Автор темы Автор темы Sam
  • Дата начала Дата начала

Испытываете ли вы сложности, при тестировании стратегии в тестере МТ4?

  • Да

    Голосов: 317 73,0%
  • Нет

    Голосов: 117 27,0%

  • Всего проголосовало
    434

Ugar

Гуру форума
Уважаемые. Приложенный эксп ограничен по срокам ключом. Кто сможет - уберите пожалуйста ограничения. С уважением
С этим надо обратиться в больничку http://forexsystemsru.com/yazyk-programmirovaniya-mql4/65294-bol%60nichka-vol-2-a-83.html
 

foxksi

Новичок форума
Кстати по поводу выгрузки котировок из MT5 в MT4 вот полезное видео
и сам скрипт
 

Вложения

Последнее редактирование модератором:

e-partner

Местный знаток
Уважаемые. Приложенный эксп ограничен по срокам ключом. Кто сможет - уберите пожалуйста ограничения. С уважением
Вам в другую тему. В эту: http://forexsystemsru.com/yazyk-programmirovaniya-mql4/65294-bol`nichka-vol-2-a-84.html
Я за Вас там написал. Просто ждите ответа мне. Файл разместил ссылкой:
https://forexsystemsru.com/attachment.php?attachmentid=84264&d=1344786484
 

zipinter

Protester
Тиковые котировки от Dukas

Вот, нашел базу тиковых котировок от DukasCopy, причем есть разбивка EURUSD по годам, начиная с апреля 2007 _http://depositfiles.com/folders/RW9WK8S3K

Прикрепляю скрипт, который переформатирует тиковые данные в файлы истории любого TF для МТ4.

Если кто не сможет разобраться как "сшивать" файлы CSV, то задавайте вопрос - помогу, чем смогу

Всем профитов!
 

Вложения

Ugar

Гуру форума
Сокращение времени оптимизации

Многие сталкивались с тем что при запуске оптимизации тестер показывает нереальное количество часов до окончания процесса.
Генетический алгоритм может значительно сократить время, но не для всех систем он подходит.
Понятно, что чем больше частота процессора тем быстрее будет оптимизация. А вот многоядерность процессора никак не влияет на скорость. Терминал не умеет использовать несколько ядер. Но винда, по крайней мере 7, не плохо умеет раскидывать задачи по ядрам. Этим я и воспользовался. У меня древнючий 4х ядерный проц. Поставил 4 терминала. Все параметры оптимизации одинаковые кроме одной переменной. Её проходы я разделил на 4 и задал в разных терминалах.
Например, одна из переменных в советнике имеет диапазон 0-23 с шагом1. Я задал в одном терминале 0-5, в другом 6-11, в третьем 12-17, в четвёртом 18-23. По окончании оптимизации на всех терминалах, выбираю лучший проход среди 4х терминалов.
В итоге, с одним терминалом тестер грозился оптимизировать 350 часов при минимальной нагрузке на процессор. С 4 терминалами, все 4 ядра загружены на 100%, а время оптимизации сократилось до 90 часов. Это уже приемлемо.
 

zipinter

Protester
Объединение файлов CSV

Для того, чтобы объединить несколько файлов csv, необходимо в командной строке (cmd) перейти в папку, где расположены эти файлы. Например, если интересующие нас файлы находятся в директории диска С, то необходимая команда команда: "CD C:\".
Затем задать команду: "COPY *.CSV combinedfile.csv", где "combinedfile" - это произвольное имя конечного файла.

Всем профитов!
 

sochinik

Местный житель
Я корпил над темой получения качественных котировок около полугода, в настоящее время добиваюсь стабильно качества тестирования не ниже 90%,

Можно получать 99% с дукоса, но они не настолько уж хороши- считаю более качественно тестировать на котировках с подкачкой с МТ5

Не знаю причину удаления темы, где я предложил помощь в тестировании советников?

Неужели администрациия форума заинтересована, чтобы трейдеры сливали свои депозиты при работе с советниками?
 

NSerega

Администратор
Я корпил над темой получения качественных котировок около полугода, в настоящее время добиваюсь стабильно качества тестирования не ниже 90%,

Можно получать 99% с дукоса, но они не настолько уж хороши- считаю более качественно тестировать на котировках с подкачкой с МТ5

Не знаю причину удаления темы, где я предложил помощь в тестировании советников?

Неужели администрациия форума заинтересована, чтобы трейдеры сливали свои депозиты при работе с советниками?

Хватит флудить во всех ветках. Для начала внимательно прочтите правила, особенно где написано про неоднократное дублирование тем и сообщений. Дальнейший флуд с вашей стороны будет наказываться баном.
 

sochinik

Местный житель
При тестирование советника 2Sides_Stoch столкнулся с необычным явлением. если за 2011 год, советник даёт прибыль более 1000%, то за 2012 год, только увеличение в 2- 2.5 раза, самое интересное, что торговля получается в тестере нерегулярная,Сегодня собираюсь очистить все котировки и загрузить всё заново, или это связано с тем что в 2012 году очень часто происходила смена "билда " мт4, у меня былда такая проблемма , что на каком то билде советник не тестировался, пока я его не перезаписал заново( так как простая компиляция результатов не дала) Может кто то сталкивался с подобными проблемами?
 

ansol

Местный знаток
Использует ли тестер уровень стопаут?
Есть счет со стопаутом 100% (злобно!) Будет ли тестер автоматом рубить убыточные сделки при уровне 100% также, как это происходит в реале.
Переменная AccountStopoutLevel() = 100, т.е. сова видит этот параметр.
 

zipinter

Protester
Будет видеть, конечно. Все подобные параметры, заданные брокером, тестером учитываются.

Всем профитов!
 

ansol

Местный знаток
Будет видеть, конечно. Все подобные параметры, заданные брокером, тестером учитываются.

Всем профитов!

По итогам теста выдает очень большую просадку - 72%, а закрытий по стопауту не видно, что и вызывает подозрения нехорошие, будто бы он до нуля ждет.

Еще в журнале тестера есть такая ошибка:
2013.01.31 17:14:58 2013.01.25 16:20 EA-ZZ EURUSD,H1: error(4059): function is not allowed in testing mode Lots=-0.02 close EURUSD

Какая-то функция не работает в тестере, а какая?
У меня было подозрение на
OrderCommission()
OrderSwap()
но их удаление из кода не помогает. Ошибка все равно есть.
Вообщем, что-то не работает, судя по тексту ошибки, поэтому проверяю все подряд. :-)
 

zipinter

Protester
Да, эта ошибка говорит, что функция заблокирована для работы в тестере. Найди в коде "IsTesting( )" и посмотри - какие действия связаны с этой проверкой состояния.

Всем профитов!
 

ansol

Местный знаток
Поскольку я сам пишу, то это нетрудно найти:
PHP:
Expand Collapse Copy
         if(IsTesting() || IsOptimization()) 
            {
             PairIndex=1;
             iPairReal=1;
             Pair[0]=Symbol();
             }
Т.е. задаются начальные параметры, которые не могут быть вычислены в тестере.
Дальше, все как обычно.
Стрчку выдает кажись вот это:
PHP:
Expand Collapse Copy
Print("error(",err1,"): ",ErrorDescription(err1)," Lots=",dLot2," close ",sSymbol);
Т.е. встроенная функция ErrorDescription не работает.
В следующий раз буду в операторе print что-нибудь нецензурное писать, чтобы сразу догадаться, что это мой комментарий, а не сам тестер сочиняет :-)
Но по стопауту явное не то. Не может быть такой просадки при заданном стопауте.
 

ansol

Местный знаток
Может кто сталкивался:
Вызывается из советника индикатор (например, ATR), который в реале виден в отдельном окне. Так вот, если тестер запустить в режиме визуализации, то по окончании теста появляются все индюки, использованные в тесте. (!)
Трабла в том, что индюки по стратегии вызываются с разными параметрами и в конце теста они появляются все скопом (!)
Т.е. при тесте за месяц может появиться 60 окон ATR или на основном графике 60 МАшек с разными периодами...
Короче, ни хрена в окне графика не видно, удалять индюки можно только по штучно, нет опции "выделить все".
Это как-то лечится? :-(
 

ansol

Местный знаток
P.S. таймфрейм один и тот же, конечно (речть же про МТ4), разные периоды у индюков
 

ansol

Местный знаток
Ха! Спасибо! Счас проверим! Интересно, как это в хелпе искать было? Счас-то, конечно, сразу описание выпало, только неясно, сколько действует этот флаг? Тоже счас проверю. Просто у меня несколько таких строчек, перемежаемых "if", можно ли в пределах одной подпрограммы одной строчкой в начале обойтись? Или несколько раз все-таки флаг устанавливать через HideTestIndicators?
 

ansol

Местный знаток
Ну вот, проверил. Поставил HideTestIndicators(true) в самом начале подпрограммы сразу после объявления локальных переменных - все отлично сработало! Еще раз спасибо!
Так хоть посмотреть спокойно сделки на графике можно, т.к. сначала прогоняю на максимальной скорости, а потом спокойно разглядываю, что откуда и почему :-)
 
Верх