Советник Robot – стохастики + искусственный интеллект
Рынок постоянно меняется, и старые идеи периодически изживают себя. Но, если задачу нельзя решить традиционным методом, на помощь приходит нестандартный подход, к примеру нейросетевой анализ. Именно такой подход использует советник с самым простым названием Robot, опубликованный на нашем форуме, который соединяет в себе традиционный технический анализ с зачатками искусственного интеллекта.
Характеристики советника Robot
Т.к. это нейросетевой робот, у него есть возможность работать на любых валютных парах и рынках. Обучаемость принципам динамики заданного актива не ограничивает его и по тайфрейму, и по времени работы. Поэтому вы можете использовать его как в долгосрочной торговле, так и в скальпинге. Разницей будет лишь данные для обучения.
- Таймфрейм: любой
- Валютные пары: любые
- Время торговли: круглосуточно
Описание принципа работы советника Robot
В качестве входных данных советник Robot использует 4 самых традиционных стохастика с разным значением сдвига. Входные данные обрабатываются обычным линейным классификатором, представляющим собой простейшую модель нервной клетки. Процесс обучения подобного алгоритма состоит в подборе оптимальных значений весов, которые при правильном подходе к процессу обучения фиксируют некоторую закономерность (паттерн), если таковая действительно существует.
И хотя советник не обладает полноценным искусственным интеллектом, использование подобного алгоритма дает несколько преимуществ, в сравнении с традиционным (ручным) подбором логических условий.
- Во-первых, это гибкость самих условий. Все что вы задаете в начале: тип и количество входных параметров, но, по умолчанию, советник еще не знает, что с этими параметрами делать. Только в процессе оптимизации (обучения) советник приобретает некоторую картину рынка и может в дальнейшем прогнозировать его движение, основываясь на своем прошлом опыте.
- Во-вторых, это возможность быстрого переобучения. Если рынок изменился и старые паттерны потеряли свою актуальность, вам достаточно лишь переоптимизировать значения весов, и тогда (в теории) робот снова будет работать прибыльно.
Рабочие параметры робота
В данном случае, все входные параметры для однослойного перцептрона отображены на картинке. Первый параметр «shag» определяет значение сдвига для каждого из стохастиков. То есть, первый индикатор без сдвига, второй со сдвигом shag, третий со сдвигом shag * 2 и последний со сдвигом shag * 3. Значение сдвига будем выбирать от 1 до 6. Чтобы оптимизация не затянулась на неделю, для подбора весов выбираем не слишком маленький шаг, в данном случае, по 20 итераций на каждый из множителей. Этого должно быть вполне достаточно для определения примерного вида паттерна.
Тестирование и оптимизация советника Robot
Параметры оптимизации:
- Валютная пара: EUR/USD
- Начальный депозит: 10 000
- Генерация тиков
- Таймфрейм: H1
- Период тестирования: с 1 апреля по 1 мая 2016 года
- Спред: 10 пунктов
По итогам оптимизации мы получили лучший вариант (с учетом прибыли/просадки) с такими параметрами:
- Шаг – 5
- x1 – 0
- x2 – 70
- x3 – 150
- x4 – 160
По результатам форвард теста с выбранными параметрами можно судить о хорошей обучаемости стратегии. Прибыльность и общая динамика почти полностью соответствует результатам бэк-тестирования.
Тем не менее, относительная просадка советника почти равна сумме начального депозита, что является неблагоприятным условием для использования на реальном счета и вполне возможно приведет к скорой потере депозита на реальном счете. Но эта проблема тоже решается, например, использованием менее агрессивного мани менеджмента.
Вывод
Можно сказать, Robot – это практически универсальный советник, который, ко всему прочему, можно легко адаптировать под любую рыночную ситуацию. Параметр mult отвечает за умножение лота в последовательности, что позволяет применять как агрессивный, так и более консервативный подходы к торговле (для фиксированного лота установите значение 1.0).
Тем не менее, это совсем не Грааль, как может показаться на первый взгляд – Robot требует постоянного внимания, т.к. один раз «научившись» работать на одном варианте рыночного движения, советник будет просто следовать знакомой ему парадигме рынка. При изменении ситуации может начать неожиданно для владельца терять деньги. По эффективности такой подход в целом схож с ручным периодическим подбором условий для советников, но главный его плюс в значительной экономии времени для трейдера, а результат при этом может даже превосходить более «продвинутые» стратегии.
Поэтому чтобы результаты оставались предсказуемыми и удовлетворительными, проводите периодическую переадаптацию значений весов, тогда робот всегда будет иметь дело с актуальной картиной рынка.
в самом начале был хорош (видимо обучался), а потом стал шибко грамотным и решил слить депозит. хорошо, что поставил противоположные сделки и не слишком большой слив произошел. вывод: искуственным интелектом здесь не пахнет, обычный робот на стохастике ( признаюсь, что оптимизацию не делал). и как делать? если опробируешь его, он обучается и потом через какое то время он тебя сливает, тогда название ему — финансовый диверсант. но задумка хорошая, но очень сырая.
протестировал, хорош до 20 пунктов. и оптимизировал и всё равно оказался дерьмоватым и непродуманным. сплошной слив. а вообще то , то что придумали , это интеллект создателей ( видимо амёбы).
А он сам закрывает позиции или нет? А то открыл мне сейчас около 30 позиций
Закрывает. Но вы бы прежде в тестере работу посмотрели, чтобы понимать смысл.
Да в тестере всегда все хорошо, я просто отдельно счет открыл с небольшим депозитом (100$), посмотрим.
А какие параметры для стохастиков то нужно прописать?