Блог им. neophyte |Зачем тестировать торговые стратегии на истории?

Зачем тестировать торговые стратегии на истории?

Итак, в обсуждении одной из моих прошлых публикаций справедливо заметили, что «зарабатывать можно только в будущем, а в прошлом уже нельзя, оно уже прошло», поставив тем самым под сомнение полезность того, чем занимаюсь я, и тестированием торговых стратегий на истории в частности.
Мы уже обсудили вопрос, зачем нужно учиться. Теперь поговорим собственно о тестировании.

Пройдя какой-либо учебный курс начинающий трейдер научился применять элементарные приемы и существующие инструменты к анализу динамики рынка и делать из результатов этого анализа некие практические выводы.
Но кто сказал, что инструменты, которыми мы пользуемся, хороши и полностью соответствуют стоящим перед нами задачам. Даже если кто-то и сказал это, почему мы должны принимать на веру чужие слова, ставя на это собственные деньги?
Он что, мамой поклялся? Но даже если и поклялся, что с того?
Поэтому следует идти дальше, и проверить, насколько эффективны существующие стандартные инструменты анализа рынка в практике реального трейдинга в том виде. в котором мы собираемся их использовать, и как их можно и нужно модифицировать, чтобы повысить эффективность и прибыльность торговли.

( Читать дальше )

Блог им. neophyte |SWT-метод: хроники торгового робота

SWT-метод: хроники торгового робота

Вчера на рынке по прогнозам ожидался сильный ветер со стороны ФРС. Немного раньше мы решили, что в плохую погоду по рыночным просторам гулять не будем. Поэтому в середине дня робот ушел на отдых до тех пор, пока ветер не стихнет и тучи не разойдутся.
Как показала практика предыдущих дней с плохими погодными условиями, если робот настроен на то, чтобы зарабатывать на фазе эффективного рынка, т.е. в хорошую погоду, то неэффективности за счет роста волатильности приносят ему только вред.

Как я уже говорил, на этой неделе робот торговал золото. Покупал, продавал. В общем катался на пиле, чего взять с несмышленыша. Я ему не мешал, чем бы дитя не тешилось...

SWT-метод: хроники торгового робота

Копеечные прибыли чередовались с копеечными убытками пока вчера рынок не перешел в фазу активного роста и робот не начал зарабатывать.
Перед заседанием ФРС робот был выключен, позиции закрыты и я превратился в наблюдателя.
Ожидаемый рост волатильности произошел, стопы были бы выбиты с убытком, так что закрытие позиций оказалось своевременным и оправданным.
А индикатор тренда за шоковыми новостями успеть не может в принципе. Он на суету не реагирует, он реагирует на тренды. Поэтому продать робот не успел бы тоже. Точнее успел бы, но уже внизу.

Что дальше?
Ждем стабилизации ситуации. Торговать начнем с цикла роста, коррекционный это рост будет или восстановление восходящего тренда, который судя по цифрам в верхнем левом углу был и остается восходящим на уровне основного, долгосрочного и краткосрочного движений. Падение фиксируется по трендам краткосрочному, локальному, дневному, внутридневному и часовому.
В зависимости от развития ситуации, начало коррекционного роста может завершится восстановлением рынка, а может и продолжить краткосрочное падение после коррекции. Но эти фазы робот отработает в любом случае, с прибылью или с убытком.
Остается вопрос когда включать. Ну с этим у нас просто. Есть целых два инструмента — индикатор торгуемого тренда и индикатор парциальной силы торгуемого тренда, который добавлены тренды младших уровней иерархии. По ним и включим.

( Читать дальше )

Блог им. neophyte |Хроники торгового робота: решение старых задач порождает новые проблемы

Хорошей картинки про роботов нет, сиськи надоели, поэтому вставлю про традиционное воровство западом идей у русских и воплощение их в технологиях. Воруют все подряд. Ну ничего, воруют, значит есть что украсть.
Хроники торгового робота: решение старых задач порождает новые проблемы
Что касается собственно робота.Ввел настройку на инструмент, в общем то это было совсем просто и включил робота (пока что не на счете мониторинга) сразу на двух инструментах, на евро и на золоте, но… Но тут появилась новая проблема, которая была совершенно очевидной. Просто в ту сторону как-то глянуть не догадался.
Дело в том, что играя с рисками я обнаружил, что преимущество в торговле дает использование антимартингейла: увеличивать размер лота при получении прибыли и уменьшать при получении убытка.
Если кто еще помнит курс школьной физики, то можно привести аналогию с полупроводниковым диодом, который выпрямляет переменный ток, пропуская положительную полуволну графика синусоиды и блокируя отрицательную.
Примерно также работает и антимартингейл с исходной кривой эквити, усиливая пики и уменьшая провалы (не все конечно).
Прибыль или убыток я определял по балансу, вот тут-то крылся подвох. Железяка не различает за счет чего получен убыток. Плюсанула сделка по евро, робот увеличивает позиции и по евро и по золоту. Убыток по золоту — зарезаны объемы и евро и золота. Может это и правильно, но что-то мне не верится...

( Читать дальше )

Блог им. neophyte |Война...

Ловлю кайф программиста в полном объеме.
Третью неделю идет тестирование торгового робота, и сражение с багами, которые вылезают и вылезают.
И откуда они берутся в коде в 300 срок? И почему исчезают после шаманских плясок с бубном, пониманию не поддается...
Если что-то не договорено явно, то в зависимости от того, в каком порядке пройдут электроны в процессоре, возникают самые непредвиденные ситуации. В одном терминале все работает, в другом вдруг перестают открываться позиции в той же самой копии советника с совершенно одинаковыми настройками.
В общем, все оговариваю, все определяю без всяких умолчаний....

Война...


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

( Читать дальше )

Блог им. neophyte |SWT-робот: на редкость тупое начало дня.

На редкость тупое начало дня.
Голова думать не хочет.
Сварганил индикатор силы и направления парциальных трендов по реальной волатильности, не по таблице, в которой считаются теоретические данные, а исходя из идеального рынка.
Разбираюсь, что эта зараза показывает (столбик цифр в левом верхнем углу графика).

SWT-робот: на редкость тупое начало дня.

Задумка была такая — просуммировать направления и силу парциальных трендов с учетом реальной волатильности на момент измерения и нормировать все это к волатильности основного тренда.
Далее снять шесть показаний, основной тренд, долгосрочный, среднесрочный, краткосрочный, локальный и дневной. Цифры расположены сверху вниз.
Если верить этим данным, то тренд по золоту находится вблизи точки равновесного состояния с некоторым уклоном вниз. Но сила все трендов не выходит за 7 баллов, т.е. говорить о направленном движении золота пока что не приходится.
Долгосрочный тренд — минус 7%, но подневному идет откат вверх. Наверное надо убрать нормировку, а то ничего не понятно, как толковать, как интерпретировать.

SWT-робот: на редкость тупое начало дня.

Без нормировки цифры чуть более понятны, хотя тоже не очень… Надо думать дальше… Результат измерений должен легко визуально интерпретироваться. Но мыслей пока нет… Тупое начало дня...
Идет откат вверх по дневному тренду, с парциальной силой 2.5 доллара, но локальное и прочие нисходящие движения пока что напрочь забивают этот откат.
Вот и робот считает, что надо продавать и уже напродавался.

( Читать дальше )

Блог им. neophyte |SWT-метод: хроники торгового робота

SWT-метод: хроники торгового робота

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

SWT-метод: хроники торгового робота 


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


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

Сейчас же нужно упорядочить все в целом в модуле формирования торговых сигналов, продумать единую систему названий и обозначений в индикаторах и советнике и сделать нелегкий стратегический выбор, а именно:
  — размещать весь код внутри робота или использовать внешние индикаторы метода, а в коде робота вести только обработку данных этих индикаторов;
— делать универсальный робот для квалифицированного пользователя с переключением версий индикаторов и их настроек или создать несколько жестких вариантов с отличающимся внутренним кодом и минимумом внешних настроек. Тут я пожалуй склоняюсь к первому варианту, поскольку второй из него получается элементарно, жестким заданием отдельных параметров.

Что сделано сейчас в плане управления роботом.
Настраиваемые параметры:
— количество ордеров в рынке — N;
— фиксированный размер лота для тестирования стратегии и ручного ММ;
— возможность выбора режима AutoMM;
— максимальный риск в процентах от баланса счета, распределяемый в режиме AutoMM на количество ордеров N;
— возможность установки постоянно действующего ручного трейлинг-стопа и его размер;
— возможность установки адаптивного трейлинг-стопа, размер и интервалы использования которого определяются автоматически;
— коэффициент асимметрии риска, задающий множитель изменения риска на позицию в зависимости от результата последней закрытой сделки (антимартингейл);
— разрешение торговать лонг (для возможности учета направления трендов старших уровней иерархии);
— разрешение торговать шорт (для возможности  учета направления трендов старших уровней иерархии);
— максимум кредитного плеча, допускаемого в торговле.

Ордера стоп-лосс и тейк-профит устанавливаются в обязательном порядке, а их размер рассчитывается автоматически на основе волатильности дневного и локального трендов соответственно. Выход из позиции производится в безусловном порядке по ордерам стоп-лосс и тейк-профит, или по сигналу разворота тренда.

В процессе работы с роботом выяснилась некоторая противоречивость в задании параметров риска при режиме AutoMM: задание процентного размера риска на сделку через максимальный риск не совсем оправдано. Проще и правильнее делать это напрямую, а размер максимального риска контролировать через количество реально открытых позиций, блокируя возможность открытия новых при достижении предела.
Кроме того, при контроле предельного риска излишним параметром является ограничение кредитного плеча. Этот параметр вторичен и в общем-то ничего не определяет.

Что осталось и обязательно нужно сделать, так это ввести режим настройки на тайм-фрейм и/или инструмент.
Сегодня робот может работать только на одном таймфрейме и по одному инструменту. Одновременная работа нескольких копий на разных инструментах и различных таймфреймах одного инструмента невозможна. Роботы не будут различать свои позиции от позиций, открытых другими копиями.
В частности вчера в тесте мы перешли на торговлю золотом, поскольку посчитали, что движение евро себя исчерпало — протестирована краткосрочная поддержка на восходящем тренде.
Евро с нами не согласился и продолжил снижение в направлении показаний индикаторов, лишив этим нас части возможного дохода.
Золото? Золото после небольшого выхода вверх возвратилось к боковому тренду, расширив канал вниз  и активировав ордера стоп-лосс после публикации новостей из Китая. В результате  деньги пришли — деньги ушли. Хеджирующий эффект одновременного использования обоих рынков дал бы лучшие результаты для конечного итога.

( Читать дальше )

Блог им. neophyte |Сердце кровью обливалось утром...

Сладкая жизнь продолжается.
Трейдер отдыхает, робот торгует, но тоже не сильно напрягается.

Сердце кровью обливалось утром...
Стараемся друг другу не мешать, единственное, что я позволяю себе делать, это обновлять текущую версию робота по мере доработок, в основном связанных с ММ, в логике алгоритма. Последняя версия отличается асимметрией риска в сериях прибыльных и убыточных сделок.
Но сегодня утром сердце кровью обливалось, глядя на то, как железяка закрывает перспективные (с моей точки зрения) прибыльные лонги по евро и начинает продажи.
Однако робот была прав!!! Он дождался своего тренда после затяжной пилы и наверстывает упущенное. По продажам близок уровень тейк-профита, а прибыль в тесте близка к 100%. Ура, товарищи!!!

( Читать дальше )

Блог им. neophyte |EURUSD – 20.10.15. Евро протестировал цель нисходящей коррекции 1.1305

EURUSD – 20.10.15. Евро протестировал цель нисходящей коррекции 1.1305 и восстанавливает восходящее движение.

Технический анализ трендов и прогноз для позиционной торговли.

EURUSD – 20.10.15. Евро протестировал цель нисходящей коррекции 1.1305

EURUSD – 20.10.15. Евро протестировал цель нисходящей коррекции 1.1305

Коды и сила парциальных трендов.
EURUSD – 20.10.15. Евро протестировал цель нисходящей коррекции 1.1305

Основной тренд остается медвежьим с целью на уровне поддержки 0.8750, сила тренда 34 балла, но признаки роста рынка в среднесрочного тренда и восходящей коррекции долгосрочного тренда остаются.
Краткосрочный тренд показал некоторую неуверенность, но рынок не прорвал нижнюю границу ключевого канала 1.1305-1.1495 и вероятнее всего коррекционное снижение пары ограничится протестированной поддержкой ключевого канала 1.1305.
Если же нисходящее движение продолжится, то прорыв нижней границы канала переведет коррекцию в форму краткосрочного тренда и расширит коррекционный диапазон до уровня краткосрочной поддержки 1.1070.

( Читать дальше )

Блог им. neophyte |SWT-метод: робот держит удар

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


SWT-метод: робот держит удар

Я ему не мешаю, поскольку нашел себе другое, не менее изматывающее занятие: по уши погряз в программировании. Переписываю и оптимизирую коды ранее написанных индикаторов. Экспериментирую с различными дополнительными опциями и фильтрами сделок для робота. Пытаюсь освоить нюансы программирования для работы с МТ5.
Так что чего чего, а приключений я нашел. Эта работа изматывает еще больше, чем мониторинг рынка и торговля вручную. Документация по языкам очень лаконична. Тому, кто в курсе вопроса, она говорит все. Тому, кто ищет ответы, даёт слишком мало. Есть моменты, которые квалифицированный специалист понимает по умолчанию, а такой начинающий малограмотный чайник, как я, ни в жисть об этом не догадается.

( Читать дальше )

....все тэги
UPDONW