Al.exe.in Опубликовано 1 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 1 марта, 2016 (изменено) Помогите пожалуйста разобраться в следующем вопросе. Опираясь на источник статьи с tradelikeapro согласно инструкциям получил тиковую историю котировок, с целью достигнуть качество моделирования 99%, теперь терминал тестит в оффлайне, результата теста советника отличается от результата тестирования по базовым котировкам ДЦ, но тем не менее показывает n\a , при этом ошибок рассогласования графиков 0. В чем дело, почему не показывает 99%, это формальный недочет? Или возможна серьезная ошибка в моих действиях?UPdate:Вопрос снят, в моем случае дело было в том, что процесс формирования котировок происходил в выходные дни, ко всему прочему спред составил 40 пунктов, сегодня перезапустил скрипт CSV2FXT и все стало работать корректно, качество моделирования 99%. Изменено 1 марта, 2016 пользователем Al.exe.in Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 1 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 1 марта, 2016 Al.exe.in качество моделирования будет 99 если патчить терминал или запускать его через тикстори. Если делаете тесты для себя, то это не важно, главное смотрите в журнале надпись:TestGenerator: file "C:\Users\...\tester\history\EURUSD5_0.fxt" is read-onlyэта запись означает, что файл существует и он только для чтения, МТ не может его пересоздать - это нам и нужно.Спред можно задать любой при генерации тиковой истории, но в последних билдах терминала, при тесте можно задать желаемый спред - тест будет идти со спредом, заданным в окошечке. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 1 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 1 марта, 2016 Al.exe.in качество моделирования будет 99 если патчить терминал или запускать его через тикстори. Если делаете тесты для себя, то это не важно, главное смотрите в журнале надпись:TestGenerator: file "C:Users... esterhistoryEURUSD5_0.fxt" is read-onlyэта запись означает, что файл существует и он только для чтения, МТ не может его пересоздать - это нам и нужно.Спред можно задать любой при генерации тиковой истории, но в последних билдах терминала, при тесте можно задать желаемый спред - тест будет идти со спредом, заданным в окошечке. Это при условии, что человек пользуется TickStory, а не TickDataSuite. Также показателем использования котировок 99% является полностью заполненная зеленая полоска в результатах тестирования, когда для 90% и ниже она не до конца полная и имеет вставки красного цвета Спойлер Кстати в 950 билде при тестировании спред вообще не учитывается. Нужно переключить модель тестирования "туда/сюда" (подробнее писал есть в тебе TickStory). 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Al.exe.in Опубликовано 2 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 2 марта, 2016 (изменено) Спасибо за исчерпывающий ответ! Все действительно так как Вы говорите. Тем не мнее заметил существенное влияние спреда на результаты тестирования. Все сводится к тому что тестирование даже при качественной тиковой истории даст иной результат нежели в реальном времени, ведь моделирование задает статический спред, а в реальной ситуации спред зачастую плавает и иногда достигает внушительных размеров. Как таковой истории спредов нет, насколько мне известно, однако нетрудно реализовать собственный индикатор, который покажет все его "прелести". Если тестируемая система рассчитана на takeprofit малого размера или использует трейлинг, то имеет смысл добавлять условие проверки размера спреда, управляя допустимым значением через внешню переменную, но в таком случае ряд сигналов системы будут проигнорированы. Все сводится к тому что результат даже самого качественного моделирование может значительно отличаться от результата работы системы в реальном времени. Однако пагубное влияние спреда снижается, если система ориентирована на стопы и тейки больших размеров.Rever27, А какой метод лучше? Готовить терминал к тестированию с помощью TickStory или TickDataSuite? update:Почитал статью на tradelikeapro про альтернативный метод получения качества моделирования 99% с помощью TickStory и сделал беглый вывод, что основной минус TDS заключается в ее коротком триале и платной версии. Разумеется за неделю не натестируешся. Изменено 2 марта, 2016 пользователем Al.exe.in Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 2 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 2 марта, 2016 Rever27, А какой метод лучше? Готовить терминал к тестированию с помощью TickStory или TickDataSuite? TickDataSuite на форуме вроде бы вообще не разбирается, хотя программа тоже заслуживает внимания. Скорее всего из-за ее ежемесячной доплаты к приобретенной покупке. А Русский народ не любит платить никогда ни за что.По заявлению авторов они берут данные объемов и каким то "чудом дивным" вытаскивают из них показатели спреда, что был в тот период. Проверить это я не вижу возможности. Так же у них есть свое "ноу хау" - стресс тест на преобразовании спреда и виртуального проскальзывания. Я давно изучал этот процесс, ставил на тест 30% вероятности изменения стандартных показателей рынка, но у меня получалась такая каша и куча сливов, что я сделал вывод - фишка сырая и использовать ее толку 0. (на тот момент).По поводу котировок Дукастов - они качаются идентично у обоих программ обоими методами, если настройки пары указать одинаковые.Сравнивал 1 месяц реальной торговли на ECN с тестом обоих программ на этом периоде - Результаты тестов немного отличаются, причину этому я не нашел. Но в сумме, общая картина на 90% отобразила все те сделки, что были на реале. Ибо это занимало просто уйму времени - более точные тесты я поленился делать - остановился на TickStory и радуюсь жизни. 4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Genry_05 Опубликовано 5 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 5 марта, 2016 (изменено) Уважаемые, Коллеги!Все мы, и программисты и трейдеры, оставили годы жизни в ожидании результатов оптимизации.Думаю пришло время предложить Разработчику MQL расширить возможности Тестера стратегий и вырвать "души трейдеров из лап Тестера Стратегий" =))Я открыл тему " Тестер стратегий, повторная оптимизация" на Форуме MQL5. Думаю, мнениепользователей MT4\MT5 по этому вопросу должно быть учтено. Добавлено: 05-03-2016 10:00:50Суть моих предложений изложена в пока в двух постах, вот они:1. Genry 2016.03.03 16:09 RU Уважаемые разработчики!Хочу предложить дополнительный функционал для Тестера Стратегий. Суть предложения такова: добавить возможность выбора повторной оптимизациина ранее полученных результатах тестирования. Т.е. последовательность подбора параметров такова:1. определяем параметры оптимизации и интервал для оптимизации, например: с 1 января 2015 года по 31 декабря 2015 года;2. проводим оптимизацию и получаем результаты которые видим в разделе "Результаты оптимизации" , например: 10 496 вариантов. Сохраняемрезультаты тестирования в файл при необходимости.3. устанавливаем флаг 4. выбираем новый интервал для тестирования, например: с 1 июня 2008 года по 3 марта 2016 года;5. запускаем тестирование на новом интервале, но параметры для тестирования берутся из ранее полученных результатов, т.е. 10 496 вариантов.При необходимости, загружаем параметры из ранее сохраненного файла.Данный подход позволит достаточно быстро оценивать ранее полученные результаты оптимизации и существенно сократит человеко-часы затрачиваемые на этот процесс.С уважением, Genry.----------------------------------------------------------Коллеги, спасибо за отклик!Думаю что предложение "сделать проще" для начала будет оптимальным. Если разложить по этапам процесс тестирования, то он выглядит так:1. Выбираем параметры оптимизации - здесь трейдер в меру своего понимания советника эти параметры отметит.2. Далее выбор диапазона истории для оптимизации, это важный момент и на него влияет ряд факторов:а) скорость работы советника, если алгоритм "тяжелый" - то трейдер будет уменьшать диапазон тестирования чтобы получить полезный результат за разумное время;б) выбор диапазона графика, который содержит нужные варианты движения цены - различные комбинации тренда и флета. На глубину истории для выбора такого интервала обычно влияет пункт а)По результатам мы получаем первичный список параметров. Вот этот список параметров мы повторно проверяем на других интервалах графика.В данном случае "сделать проще"- это предоставить возможность выбирать для полученного списка параметров различные участки истории и, желательно, ТФ и инструмент.В процессе повторных прогонов не меняется номер сета в списке параметров и сами параметры ( отмечены красным на скрине). Т.е. по результатам повторных прогонов полученного списка на разных участках истории должен получится, условно говоря, номера ТОР-10 сетов, которые показывают стабильно приемлемый результат.Таким образом мы отсеем подгон тестером результатов оптимизации. Это уже ОГРОМНЫЙ шаг вперед, который будет правильно понят любым трейдером.Объяснение этого подхода на форуме сведется к такому диалогу:Вопрос: - А как параметры после оптимизации выбрать? Какие лучше? Что сверху?Ответ: - А ты оптимизацию прогони, потом флажок ХХХ поставь, выбери другой интервал и снова прогони.Запоминай номера лучших результатов каждый раз. После нескольких прогонов сам поймешь какие результатыповторяются в списке лучших. С ними и работай дальше.При выставленном флажке ХХХ (условное название) отметки в списке параметров тестирования игнорируются.Берутся только параметры из результатов оптимизации. Меняется Диапазон тестирования, Таймфрейм, Инструмент.Если возможно сделать сохранение, загрузку и редактирование первичного списка - это будет второй ОГРОМНЫЙ шаг вперед.PS. В обсуждении звучат интересные и полезные предложения, вопрос в сроках их реализации.Я исходил из минимальных затрат Разработчика, так как все необходимые данные уже есть надо только расширить возможности их повторной обработки. Флажок ХХХ можно обозначить как "Повторная проверка результатов оптимизации"Как-то так... Добавлено: 05-03-2016 11:52:45elibrarius пишет(2016.03.05 10:48 ):Genry: Цитата Если возможно сделать сохранение, загрузку и редактирование первичного списка - это будет второй ОГРОМНЫЙ шаг вперед. Если сделают импорт из XML, то можно делать так:1) делаем первичную оптимизацию2) экспортируем в XML3) отфильтровываем результаты, например с просадкой > 20...30, с количеством сделок 4) импортируем обратно в тестер. (можно из меню по правой кнопке, как сейчас сделан экспорт)5) Далее делаем либо одиночные проходы (как я предложил ранее), либо групповые проходы, по всему списку. Инструмент, ТФ, даты мы вольны менять по своему усмотрению. Результаты можно опять экспортировать и опять их отфильтровать, и опять импортировать, и т.д. любое количество раз.Короче, нужно сделать кнопку "перерасчет по списку", который мы импортировали, как дополнительный пункт к вариантам оптимизации.Оптимизация.png Изменено 5 марта, 2016 пользователем Genry_05 4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 5 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 5 марта, 2016 Можно чуть проще сделать - оптимизация не через генетический алгоритм или сплошной перебор параметров тестирования, а методом загрузки списка готовых сэтов (из того-же xml). Для этого надо добавить чекбокс и адресную строку поиска файла на вкладке "Тестирование" (там где чек-бокс генетического алгоритма). Таким образом после оптимизации выгружается файл сэтов в эксель (это и сейчас делается легко), там редактируется и запускается новая оптимизация, только по готовым сетам и на другом периоде. 3 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Genry_05 Опубликовано 5 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 5 марта, 2016 [хрум]Таким образом после оптимизации выгружается файл сэтов в эксель (это и сейчас делается легко), там редактируется и запускается новая оптимизация, только по готовым сетам и на другом периоде. Спасибо :), я переместил этот пост на mql. Ссылка на сообщение Поделиться на другие сайты More sharing options...
dzennn2 Опубликовано 7 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 7 марта, 2016 Вот в МТ5 это все уже есть, но к сожалению это МТ5....Цитата"Форвард тестированиеВстроенная функция форвард-тестирования позволяет избавиться от коварной проблемы, которую принято называть "переоптимизация" или подгонка параметров. С включением этой опции, история котировок валют и акций делится на две части. Непосредственно оптимизация происходит на первом отрезке истории, а второй - используется только для подтверждения полученных результатов. Если на обоих отрезках эффективность тогового робота одинаково высока, значит, торговая система обладает наилучшими параметрами и подгонка параметров практически исключена.Тестер Торговых Стратегий - это незаменимый инструмент для разработчиков экспертов. Без него практически невозможно написать эффективного и качественного торгового робота. Тестер экономит огромное количество времени и позволяет сделать торгового робота по-настоящему прибыльным."В МТ5 есть свои приколыhttp://tlap.com/forum/hardwaresoftware-dlya-treydera/27/mt5-metatrader-5-obschie-voprosy/3993/?do=findComment&comment=254370иhttp://tlap.com/forum/hardwaresoftware-dlya-treydera/27/mt5-metatrader-5-obschie-voprosy/3993/?do=findComment&comment=256051 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
dzennn2 Опубликовано 16 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 16 марта, 2016 Бесплатный скрипт для скачивания и формирования файла с новостями под МТ4 Calendar.txt _https://www.mql5.com/ru/market/product/15121 Еще один, более комплексный пример кода советника с использованием Calendar.txt _https://www.mql5.com/ru/code/15115 Похоже что с 1 апреля тестят Forex Factory mobile (BETA) Изменилась веб страница. Придется подстраивать скрипт под МТ4, который качает новости. Обновил скрипт, теперь нормально качает новости в файл _https://www.mql5.com/ru/market/product/15121 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
tchumachenkovlad Опубликовано 23 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 23 марта, 2016 (изменено) Подскажите куда написать или кто поможет исправить 2 ошибки в советнике '}' - unexpected end of program '{' - unbalanced parentheses TMA.mq4 Спойлер extern int TakeProfit =100;extern int StopLoss =50;extern double Lots = 0.01;extern int Slippage =5;extern string comment ="Продажа";extern int Megic = 123;extern string Indi = "данные индикатора";extern string TimeFrame = "current time frame";//текущее время кадраextern int HalfLength = 56;extern int Price = PRICE_CLOSE;extern double ATRMultiplier = 2.0;extern int ATRPeriod = 100;extern bool Interpolate = true;double PriceHigh, PriceLow, SL, TP;int ticket;int init(){ if(Digits==3|| Digits==5){ TakeProfit*=10; StopLoss*=10; Slippage*=10;} return(0);}int start(){ PriceHigh= iCustom(Symbol(),0,"TMA with Distancer",TimeFrame,HalfLength,Price, ATRMultiplier,ATRPeriod, Interpolate,1,0); PriceLow= iCustom(Symbol(),0,"TMA with Distancer",TimeFrame,HalfLength,Price, ATRMultiplier,ATRPeriod, Interpolate,2,0); if(Bid>=(PriceHigh); { SL=NormalizeDouble(Bid+StopLoss*Point,Digits); TP=NormalizeDouble(Bid-TakeProfit*Point,Digits); ticket=OrderSend(Simbol(),OP_SELL,Lots,Bid,Slippage,0,0,comment,123,0,Maroon); if(ticket>0);{ if (OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)==true); OrderModify(ticket,OrderOpenPrice,ST,TP,0); }} if(Ask{ ST=NormalizeDouble(Ask-StopLoss*Point,Digits); TP=NormalizeDouble(Ask+TakeProfit*Point,Digits); ticket=OrderSend(Simbol(),OP_BUY,Lots,Ask,Slippage,0,0,comment,123,0,clrDarkBlue); if(ticket>0);{ if (OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)==true); OrderModify(ticket,OrderOpenPrice,ST,TP,0); } return(0); } int CountSell() { int count=0; for(int trede=OrdersTotal()-1;tred>=0;tread--) { OrderSelect(trade,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Megic) { if (OrderType()==OP_SELL)count==; } } return(count); } int CountBuy() { int count=0; for(int trede=OrdersTotal()-1;tred>=0;tread--) { OrderSelect(trade,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Megic) { if (OrderType()==OP_BUY)count==; } } return(count); } Изменено 6 июля, 2017 пользователем Pavel888 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 23 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 23 марта, 2016 tchumachenkovlad внимательно посчитай скобки, сам. Это посильная задача, Вы справитесь. ;) 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
tchumachenkovlad Опубликовано 27 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 27 марта, 2016 (изменено) анкт' - необъявленный идентификатор test3.mq4 и 84 13ST=NormalizeDouble(Ask-StopLoss*Point,Digits); и на той же строкевозможная потеря данных из-за преобразования типов test3.mq4подскажите как исправить Спойлер extern string TMA="Параметры";extern int TakeProfit =100;extern int StopLoss =50;extern int Megic = 123;extern double Lots = 0.01;extern int Slippage =5;extern string TimeFrame = "current time frame";extern int HalfLength = 56;extern int Price = PRICE_CLOSE;extern double ATRMultiplier = 2.0;extern int ATRPeriod = 100;extern bool Interpolate = true;double PriceHigh,PriceLow,SL,TP;int ticket;//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+int OnInit(){if(Digits==3 || Digits==5){TakeProfit*=10;StopLoss*=10;Slippage*=10;}return(INIT_SUCCEEDED);}//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+//---//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+void OnTick(){PriceHigh=iCustom(NULL,0,"TMA_Fair",TimeFrame,HalfLength,Price,ATRMultiplier,ATRPeriod,Interpolate,1,0);PriceLow=iCustom(NULL,0,"TMA_Fair",TimeFrame,HalfLength,Price,ATRMultiplier,ATRPeriod,Interpolate,2,0);if(CountBuy()==0 && Ask{ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,"tma",Megic,0,Blue);if(ticket>0){TP=NormalizeDouble(Ask+TakeProfit*Point,Digits);ST=NormalizeDouble(Ask-StopLoss*Point,Digits);if(OrderSelect(ticket,SELECT_BY_TICKET))if( OrderModify(ticket,OrderOpenPrice(),ST,TP,0))Print("Ошибка");}}if(CountSell()==0 && Bid>=PriceHigh){ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,"tma",Megic,0,Red);if(ticket>0){ST=NormalizeDouble(Bid+StopLoss*Point,Digits);TP=NormalizeDouble(Bid-TakeProfit*Point,Digits);if(OrderSelect(ticket,SELECT_BY_TICKET))if( OrderModify(ticket,OrderOpenPrice(),ST,TP,0))Print("Ошибка");}}}//+------------------------------------------------------------------+int CountSell(){int count=0;for(int trede=OrdersTotal()-1;trede>=0;trede--){if(OrderSelect(trede,SELECT_BY_POS,MODE_TRADES)){if(OrderSymbol()==Symbol() && OrderMagicNumber()==Megic && OrderType()==OP_SELL)count++;}}return(count);}int CountBuy(){int count=0;for(int trede=OrdersTotal()-1;trede>=0;trede--){if(OrderSelect(trede,SELECT_BY_POS,MODE_TRADES)){if(OrderSymbol()==Symbol() && OrderMagicNumber()==Megic && OrderType()==OP_BUY)count++;}}return(count);}//+------------------------------------------------------------------+ Изменено 6 июля, 2017 пользователем Pavel888 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 28 марта, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 28 марта, 2016 анкт' - необъявленный идентификатор test3.mq4 и 84 13ST=NormalizeDouble(Ask-StopLoss*Point,Digits); и на той же строкевозможная потеря данных из-за преобразования типов test3.mq4подскажите как исправить1. необъявленный идентификатор - удали или объяви. в 84 строке2. ST=NormalizeDouble(Ask-StopLoss*Point,Digits); может не ST а SL? 3. не надо вставлять код в сообщения, прикрепи файлом. Не знаешь как? - почитай как пользоваться форумом.4. эта тема о тестах, чужие коды разбирают в теме "Обучение языку", а здесь оффтоп. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
SullyForex Опубликовано 8 июня, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 8 июня, 2016 Такс... Начнём по порядку...1. Открываю MT4 (971-й билд), перехожу по ссылке для скачки скрипта, тот успешно скачивается. Далее я открываю график пары EURUSD H1, кидаю на него скрипт, и вижу "задницу" (см. "Error 1" во вложении). Пробовал откатывать на 950-й билд - тоже самое. Махинации с настройками тоже ни к чему не привели. В итоге я решил пойти по сложному пути, который расписан в нулевом посте темы.2. Скачал заветный архив "Download_Calendar", распаковал, запускаю файл "EconomicEventsDownloader_v5.1.jar", и вижу "задницу 2.0" (см. "Error 2" во вложении).До этого я данным скриптом / методом не пользовался. За сим хочу спросить: это у меня руки из одного места растут или всё-таки имеют место быть какие-то изменения со стороны ForexFactory / MetaQuotes ? Error_1.pngError_2.png Ссылка на сообщение Поделиться на другие сайты More sharing options...
machine Опубликовано 23 июля, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 23 июля, 2016 как можно получить количество прибыльных сделок на каждый проход при оптимизации? например, общая прибыль и прибыльность - наибольшая, а при прогоне вручную - оказывается, что кол-во прибыльных сделок, предположим, 50%-60%, хотя проход с худшими показателями доходности - показывает 70%. и есть ли какой-нибудь баланс между прибыльностью и количеством прибыльных сделок, который стоит соблюдать? Ссылка на сообщение Поделиться на другие сайты More sharing options...
dzennn2 Опубликовано 23 июля, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 23 июля, 2016 Спойлер Такс... Начнём по порядку...1. Открываю MT4 (971-й билд), перехожу по ссылке для скачки скрипта, тот успешно скачивается. Далее я открываю график пары EURUSD H1, кидаю на него скрипт, и вижу "задницу" (см. "Error 1" во вложении). Пробовал откатывать на 950-й билд - тоже самое. Махинации с настройками тоже ни к чему не привели. В итоге я решил пойти по сложному пути, который расписан в нулевом посте темы.2. Скачал заветный архив "Download_Calendar", распаковал, запускаю файл "EconomicEventsDownloader_v5.1.jar", и вижу "задницу 2.0" (см. "Error 2" во вложении).До этого я данным скриптом / методом не пользовался. За сим хочу спросить: это у меня руки из одного места растут или всё-таки имеют место быть какие-то изменения со стороны ForexFactory / MetaQuotes ? 1. Сделайте в МТ4 настройки как на картинке. Эта картинка есть в описании скрипта на mql5 сайте.2. Сайт forexfactory поменял свою структуру, поэтому старые парсинги качалки не работают.forexfactory-download-news-in-file-screen-8968_1.png Ссылка на сообщение Поделиться на другие сайты More sharing options...
shrike74 Опубликовано 3 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 3 сентября, 2016 Здравствуйте!Подскажите, а есть способы тестировать в тестере советники полуавтоматы которые подхватывают выставленные вручную ордера? Собственно можно ли руками выставлять ордера в тестере когда в тесте такой советник? Ссылка на сообщение Поделиться на другие сайты More sharing options...
NTuner Опубликовано 3 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 3 сентября, 2016 Здравствуйте!Подскажите, а есть способы тестировать в тестере советники полуавтоматы которые подхватывают выставленные вручную ордера? Собственно можно ли руками выставлять ордера в тестере когда в тесте такой советник? Ну вот как вариант можно это реализовать при помощи вспомогательного советника, который запущен на любом графике терминала. Этот советник в режиме реального времени собирает информацию об открываемых вручную ордерах, и сохраняет её в глобальных переменных терминала, либо в текстовый файл. А советник в тестере стратегий во время теста постоянно мониторит изменения в глобальных переменных терминала или в текстовом файле, и открывает соответствующие ордера как только там появляется информация об открытии ручной сделки. Ссылка на сообщение Поделиться на другие сайты More sharing options...
shrike74 Опубликовано 3 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 3 сентября, 2016 Спасибо конечно, но я, увы не программист. :( Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 13 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 13 сентября, 2016 Здравствуйте.Я так понимаю, разработчики ничего не будут прикручивать в МТ4 в части форвард-тестирования.Я предлагаю трудоемкий (в смысле времязатратный), но механический способ:Делаем первый прогон, допустим за год. Получаем условно 3 000 вариантов.Результаты в таблицу, при этом фильтруем подходящие результаты. Осталось 300.Делаем второй прогон на другом диапазоне с ТОЧНО ТАКИМИ ЖЕ вариантами оптимизируемых параметров. Результаты в таблицу, при этом фильтруем подходящие результаты. Получаем те же 3000/300 вариантов.Далее "скрещиваем" полученные фильтрованные таблицы (по совпадению величины оптимизируемых параметров)Как правило, в зависимости от жесткости первичной фильтрации получается 20-50 конечных сетов, которые уже можно гонять вручную.Во вложении пример результирующей таблицы по двум прогонам. Фильтровал по коэффициенту восстановления.Минус подхода -это двойные затраты времени на оптимизацию. Зато не надо вручную гонять результаты первого прогона.Прошу покритиковать...п.с. сделал пока для себя "на коленке" на Access, попутные плюшки- хранение всех результатов, генерирование сет-файлов, можно много чего еще прикрутить. Если будет интересно, выложу. Пример.xls 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Genry_05 Опубликовано 14 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 14 сентября, 2016 Прошу покритиковать...п.с. сделал пока для себя "на коленке" на Access, попутные плюшки- хранение всех результатов, генерирование сет-файлов, можно много чего еще прикрутить. Если будет интересно, выложу. Зачем критиковать :) Мысль вполне рабочая и применимая, и применяемая ;;)Дааа... трудозатраты :(Хотя бы сохранение и загрузку параметров разработчики сделали, уж про редактированиеи не говорю, и то было бы дело. Ссылка на сообщение Поделиться на другие сайты More sharing options...
Aleks3dx Опубликовано 16 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 16 сентября, 2016 Всем привет на днях мне прислали интересный советник из бугра, но накрылся комп не могли бы помочь провести тестирование и возможно подобрать сеты (два у меня есть).Заранее спасибо. TZ1.72.ex4TZ2_EU.setTZ2_GU.set Ссылка на сообщение Поделиться на другие сайты More sharing options...
Aleks3dx Опубликовано 16 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 16 сентября, 2016 Всем привет на днях мне прислали интересный советник из бугра, но накрылся комп не могли бы помочь провести тестирование и возможно подобрать сеты (два у меня есть).Заранее спасибо. TZ1.72.ex4TZ2_EU.setTZ2_GU.set Ссылка на сообщение Поделиться на другие сайты More sharing options...
sent226 Опубликовано 16 сентября, 2016 Поделиться Тестирование советников - тема для программистов Опубликовано 16 сентября, 2016 какие инструменты тестировать?на каких ТФ должен работать?добавляйте уточняющую информацию, кроме советника...в идеале еще и принцип работы Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти