Aрбитраж - страница 19

 
bstone писал (а):
А можно, чисто из любопытства, поинтересоваться какими методами происходит оценка эффективности исходного кода?
bstone, не хочется преждевременно открывать секрет. Если твой метод тестирования тебя устраивает и дает некую уверенность, продолжай тестировать свои системы так, как привык.

Я уже давно готовлю об этом статью. Именно об этом, т.е. о 90-95% механических и полумеханических Граалей, которые периодически появляются на трейдерских форумах. Пару недель назад думал, что ее уже можно выпускать в свет, но недавно, спасибо Rosh'у, увидел неожиданные проблемы и решил пока притормозить со статьей. Через 2-3 месяца, надеюсь, возьмусь за нее снова и все-таки добью (хотелось бы так думать). Этот "долгострой" целиком основан на моих собственных исследованиях, и поэтому статья продвигается медленно. Мне не хотелось бы выдавать на-гора слишком сырой продукт. Но уже сейчас могу сказать с полной уверенностью: статья будет весьма пессимистичной.

Ну а исходный код нужен для того, чтобы реально увидеть, как в торговой системе генерируются сигналы. Естественно, в черном ящике этого не увидишь. И никакие, даже самые оптимистичные результаты тестирования черного ящика не убедят меня в качестве системы больше, чем изучение исходного кода.
 
Mathemat:
Я так и не смог понять, в чем причина бешеного успеха этого советника.
Причина "бешеного" успеха в том, что он вселяет в чайников определенные надежды.
Я не настолько компетентен, чтобы участвовать в дисскуссиях "арбитраж-не арбитраж", и не настолько самоуверен,
чтобы доказывать профессионалам, что найден очередной грааль.
Просто продолжаю тестирование самой первой версии, для посмотреть, как она будет умирать.
Параллельно кривыми ручками прикручиваю к коду фильтры на вход и тоже тестирую на демо.
Например, вариант №7 с 17.04 поднял депозит на 2586$, на сегодня прибыль по открытым позициям +210$ (текущие значения доходили до +1200).
А на Вас, уважаемый Mathemat, возлагаю большие надежды, поскольку мне неясно, как, например, правильно оттестировать доработанный эксперт.
На демо результаты хорошие, ждать, когда он упадет можно долго, на реал ставить страшно, выбросить жалко.
Для принятия решения нужна методика тестирования.         
 
Mathemat:

Я уже давно готовлю об этом статью. Именно об этом, т.е. о 90-95% механических и полумеханических Граалей, которые периодически появляются на трейдерских форумах.
Что ж, это звучит весьма амбициозно. Будем ждать.

Mathemat:

Ну а исходный код нужен для того, чтобы реально увидеть, как в торговой системе генерируются сигналы. Естественно, в черном ящике этого не увидишь. И никакие, даже самые оптимистичные результаты тестирования черного ящика не убедят меня в качестве системы больше, чем изучение исходного кода.
А вот тут совершенно непонятно. Допустим ТС использует весьма изощренный механизм генерации "сигналов", скажем 60 Кб и более исходного кода на MQL4. Правильно ли я вас понял, что вы можете, проанализировав этот код, сделать вывод о состоятельности и устойчивости системы? И при этом вам даже не нужно тестировать ее?
 
granit77:
А на Вас, уважаемый Mathemat, возлагаю большие надежды, поскольку мне неясно, как, например, правильно оттестировать доработанный эксперт.
Спасибо за надежды. Мне и самому далеко не все ясно, тоже двигаюсь в потемках. Мое мнение: и тестера, и оптимизатора МТ явно не достаточно для уверенного позитивного решения о качестве стратегии.
 
Mathemat:

maksaa писал(а): А ещё хотел бы усомниться в необходимости использования в торговле "сложных" индикаторов и советников. Так ли это необходимо? Какова вероятность того, что за сложностью формул не закрадется фатальная ошибка?

Покажите мне пример "простой", реально устойчивой и профитной системы - и я с Вами соглашусь. Но учтите, пожалуйста, что я крайне скептически отношусь к таким "доказательствам" ее устойчивости как результаты тестирования на истории и даже оптимизации. Единственный вид, в котором я готов ее рассматривать, - это ее открытый код. Поинтересуйтесь у kompostera, написавшего 300 советников на заказ, или у Rosha, экспериментировавшего, кажется, со всем, что есть под этим солнцем. Может быть, исходные инструменты и могут быть "простыми", но их интерпретация (т.е. сигналы) таковыми быть не могут.
Я не большой специалист, поэтому только выразил сомнения, т.е. ИМХО. Не имел в виду именно МТС.
Устойчивой системой считаю СК Баришпольца, наверняка слышали о ней. А ещё мне кажется, что устойчивой будет система Решетова, когда каждый для себя её доведет до ума.

Когда напишете статью, сообщите здесь, пожалуйста.
 
bstone:
Правильно ли я вас понял, что вы можете, проанализировав этот код, сделать вывод о состоятельности и устойчивости системы? И при этом вам даже не нужно тестировать ее?
Не совсем. Я говорил, что статья будет очень пессимистичной: основные выводы в ней будут негативными. Проанализировав код, я смогу однозначно заявить только о неустойчивости системы. Увы, закон подлости... После такого вывода тестирование на МТ действительно уже не обязательно (хотя формально тестер может показывать очень хорошие результаты). И не говорите мне о том, что эта информация бесполезна...

Никаких однозначных и всеобъемлющих критериев устойчивости у меня нет. Есть только несколько гипотез о необходимых условиях устойчивости ("если система устойчива, то она обладает таким-то свойством"). Но ни одно из них не является достаточным ("если системе присуще такое-то свойство, то система устойчива").
 
to Mathemat А какой код нужен чтобы сделать экспертизу советника Решетова? Юрий все предоставил. Интересно было бы Ваше мнение, с учетом разработанных Вами критериев.
На самом деле проблема тестера действительно очень острая. Скажем я сейчас взял БД минутных котировок и в Builder'e переписываю код Решетова чтобы видеть объективную картину развития событий. Ну а далее собираюсь модернизировать его идею под себя. Но даже исследуя развитие событий по минуткам я вижу, что все равно теряю много информации. И результат теста будет только оценочный и предварительный.
Вобщем действительно, Ваша статья будет интересна.

С уважением, Fed
 
Да уж, Fed, задал ты мне задачку. О мультивалютных я даже и не думал еще. Спасибо за идею.

То, что она неустойчива при работе только на одной заданной паре, очевидно по результатам тестирования, выложенным самим автором. Но это не обязательно означает, что некая комбинация неустойчивых систем не станет устойчивой.

P.S. Эхх, Юрий, ну и стиль у тебя. Неужели трудно было разбить огромную start() на несколько небольших логически замкнутых блоков? Эт же, блин, 172 строки...

P.P.S. Юрий, ты не будешь против, если вдруг я включу анализ твоего советника в свою статью? Я не гарантирую, что этот анализ непременно попадет в статью, но такая возможность существует. Ругательств в твою сторону не будет, не волнуйся. Но если анализ вынесет советнику приговор, не обессудь... Не хочешь отвечать на форуме - напиши на мой почтовый адрес, он указан в профиле.
 

На самом деле я искренне расстроился, из-за того, что выход статьи еще возможно затянется. Предлагаю Вам сначала выпустить 1 часть – без мультивалюного тестирования, ну а потом последующие. Честно сказать очень не хватает грамотных стаей на эту тему. Лично я сейчас при разработке тестера двигаюсь по наитию. Т. е. у меня опыт программирования и работы с БД, в том числе на спутниковых данных позиционирования. Котировки даже хуже. Материал следующий: взял основные валютные пары, минутные котировки update дыры, кроссы получаю расчетом (в исходных котировках кроссов дыры по 15 минут бывают), цена Close минутная. Имитирую Ask как Close+spred, а Bid наоборот. Ну вот тут уже засада и погрешности.

Команды mql, например OrderCloseBy приходится переписывать своими функциями. Хорошо, что у Юрия нет индикаторов и код простой. А если бы я профессионально тестами бы занимался, то стоило бы команды mql переносить в dll.

Код у Юрия простой, но далеко не примитивный. С одной стороны вроде все понятно, а с другой прикинуть, как это все в группе работает – плоховато на глаз представляю. Переношу все рассчитываемые (каждую минуту) переменные в таблицу log и глазами смотрю эти массивы, что там происходит внутри. Но пока я до конца его код переносить не закончил. Когда досконально разберусь, естественно, log сокращу до легко читаемого состояния. А пока боюсь ошибиться где-нибудь. Мне важно подобрать оптимальный состав групп валютных пар, потом прямо в Builder буду улучшать под себя, и только потом перенесу наработанное в mql. Но фактические свои решения (по улучшению кода и оценке состава групп) я буду принимать на основе исторических данных, которые не гарантируют….. и т.д. Ну а что делать? Еще недостаток – у меня долго мультивалюты просчитываются (я другую систему до этого пробовал). 60 минут – 1 минуту рассчитывается (+ еще и подкачка данных для расчета время от времени происходит, чтобы далее все быстрей двигалось и это еще около минуты). Вроде для количества производимых операций (и записей в таблицы) и недолго, но когда несколько дней обсчитывается, то на ночь надо ставить. SQL я знаю хорошо, и сделано вроде все оптимально в расчетах. Однако непрерывно запустить год на тестирование – у меня терпения не хватает, так дней по 10-20 порции.

Вот если бы действительно была наработка по тестированию – я бы ее применил. Может что-то бы у себя сократил, или на что-то большее внимание обратил, или вообще по-другому бы все делал.

Так что: Ждем статьи!

А код г-на Решетова действительно интересен. Может быть, я мало видел в своей жизни, но подход действительно новаторский и необычный. Если даже мой тест покажет, что на реале этим средством рисковать не стоит, то я все равно сильно благодарен Юрию – он много других мыслей порождает.

С уважением, Fed

 
Mathemat:
Юрий, ты не будешь против, если вдруг я включу анализ твоего советника в свою статью?
Для того исходники и выложены, чтобы брали, вникали и анализировали. И на основе этого самого анализа, совершенствовали и доводили до ума. Советник содержит только самый необходимый для работоспособности базис, соответствующий стратегии.