
Что мы тут творим - спросите вы меня? И я отвечу! Ни много ни мало... архифункциональное сверхпродвинутое мультивалютное мультитаймфреймовое чудо программного кода!
Всё началось с простенького и незамысловатого техзадания, и вскоре нашёлся-таки герой, сподобившийся принять сей вызов! Имя ему - Ttomas. Фанфары! <:-p>
Скоро сказка сказывается, да нескоро профит делается... Пробираясь сквозь тернии формальной логики и искореняя орды багов мечом разума, наш герой осилил-таки первую, а затем даже и вторую версию советника. Но нет пределов совершенству! Море новых идей ждут своего часа. ;) Ну а пока мы довольствуемся тем, что есть, и тестируем текущую версию в поисках наилучших сетов.
И да, почерпнуть знания об оригинальных системах, взятых за основу советника, вы можете здесь:
/torgovye-sistemy/2/m1-ts-pobeda-skalpirovanie-m1/2164/
/torgovye-sistemy/2/m15-extreme-tma-system/2036/
/torgovye-sistemy/2/m1-m15-genesis-matrix-trading/2773/
Итак, текущее состояние разработки:
v.3.50
Вылаживаю полный набор индикаторов как для советника, так и для ручной версии системы.
+ шаблоны
+ сеты
+ инструкция по настройке
*Далее идут всякие прибамбасы, ожидающие своей очереди*
Потенциал системы весов далеко не полностью раскрыт. Посему предлагается вот что. Наравне с обычным порогом для взятия сигнала надо сделать ещё один порог – увеличенный – его достижение будет означать «сильный сигнал». Появление сильного сигнала затем можно будет использовать во многих ситуациях.
Вот сразу пример. Как прокачать мартина? Пока что у нас просто тупой мартин, но я предлагаю постепенно превратить его в мартина умного.
Во-первых, если у нас есть серия убыточных сделок с удвоениями, то нам надо не допустить продолжения этой тенденции чтобы не пришлось открывать 6-7 колено. Предлагаю установить дополнительный порог колен, при превышении которого для открытия сделки обычного сигнала уже не достаточно – сигнал должен быть сильный. К примеру, устанавливаем порог 3. Первая, вторая и третья сделки открываются по обычным сигналам. Но четврётая, пятая и далее – только по усиленным сигнлам.
Как усиливать сигналы? Активировать трендовые индикаторы и присвоить им свои веса. Тогда очередная мартинизованная сделка будет открываться только при достаточно стойком флете или тренде в нашу сторону.
И походу я наконец придумал как решить эту проблему тренд/флет. Предлагаю внедрить в советник вот этот супер-индикатор ;)
Есть идеи насчёт формализованной интуиции. Вообще-то дела с ней обстоят довольно просто – надо лишь почаще задавать себе вопрос: «О чём ты думаешь, когда смотришь на график, готовясь нажать кнопку селл или бай?»
2) Второй модуль: Интуиция-2. Этот по сложнее будет. Связан с красотой графика, на который я смотрю. Но что такое эта «красота»? Это ни что иное как гармоничность и упорядоченность геометрических форм, которую разумеется можно формализовать. Пожалуй, самый актуальный для канального скальпинга пример: если цена рисует плавную разворотную дугу с выпуклостью вверх – то это красиво, и интуиция говорит: «Продавай!». А если цена продолжительно шла верх, но тут резко срывается вниз несколькими большими свечами, то интуиция смотрит на такую фигню с опаской. И действительно – в этом случае велика вероятность такого же стремительного возврата цены вверх, так что если бы мы сразу открылись в селл, то если бы и не словили лося, то потеряли несколько пунктов упущенной выгоды. Так что имеет смысл фильтровать сделки по этому принципу.
Как это сделать? Предлагаю такой расклад. Задаём 2 настраиваемых периода, обозначающих число свечей: Т1 и Т2. Допустим, Т1 = 10, а Т2 = 3. Пусть номер текущей свечи равен 0. При этом имеем в виду, что в Т1 считываются параметры со свечей под номерами начиная с -12 и по -3 (всего 10 штук), а в периоде Т2 – со свечей -2, -1 и 0 (всего 3 штуки). Интересуемый нас параметр – эта модуль разницы между ценой закрытия предыдущей свечи и ценой закрытия следующей свечи. Вычисляем эти параметры для каждой свечи, а потом находим среднее арифметическое для двух периодов по отдельности. Допустим, мы получили среднее арифметическое для Т1 = 0,4 пункта, а для Т2 = 0,7 пункта. Теперь задаём Коэффициент Плавности (настраиваемый параметр), по которому и будем вычислять красоту (плавность) графика. Пусть Коэф Плавности мы задали 2,5. Теперь умножаем среднее арифметическое из Т1 на этот коэф, получаем: 2,5*0,4 = 1,0 пункта. Так вот, логика анализа такова: если среднее арифметическое из Т2 превысит полученное нами значение (1,0 пункта), то график признаётся нестабильным. Ну а пока что среднее арифметическое по Т1 у нас равно 0,7 пункта, что меньше 1,0 пункта, а значит, график стабилен. Все эти вычисление мы можем облечь в форму отдельного индикатора, а в советнике прописать дополнительный фильтр: если индикатор говорит о стабильности графика, то мы можем открывать сделки. Если же индикатор показывает нестабильность графика, то сделки не открываются. Разумеется, такой принцип вычислений можно дорабатывать, но основы я пока вижу так.
3) Интуиция-3. Ещё один отдельный индикатор, на этот о том, как интуиция говорит о предстоящем развороте цены. Допустим цена, стабильно идёт в нужном нам направлении, но… всё медленнее и медленнее. И вот, когда новые свечи уже почти не видны, рука так и тянется закрыть сделку, которая ещё не дотянула до ТП, но и ни один из индикаторов не просигналил о развороте. Конечно, какой разворот, если у нас стабильное движение туда куда надо? Но мы-то знаем…
Так вот, реализовать этот интуитивный индюк я предлагаю по подобию с предыдущим. Снова считаем разницы цен закрытия предыдущей и следующей за ней свечи, но на этот раз берём эти разницы без модуля (возможны как плюсовые, так и минусовые значения). Теперь у нас только 1 период: Т, означающий число последних свечей (с учётом текущей), параметры которых мы считываем. Итак, индикатор вычисляет среднее арифметическое разниц закрытия для этого периода, и на основе этого значения выносит свой вердикт. Мы устанавливаем ещё один настраиваемый параметр, обозначающий пороговый диапазон пунктов для вердикта. К примеру, мы поставили диапазон равный 0,3. Это значит, что если среднее арифметическое по периоду Т окажется в пределах с -0,3 пункта и по +0,3 пункта, то индикатор сигналит о состоянии разворота.
В советнике это можно использовать несколькими способами:
1) Создать алгоритм закрытия профитной позиции. Если у нас есть открытая позиция, а индикатор просигналил о развороте, то она закрывается по достижении хоть какого-то профита.
2) Создать алгоритм безусловного закрытия позиции. Если индикатор сигналит о развороте, то любая позиция тут же закрывается.
3) Создать фильтр торговли. Если индикатор сигналит о развороте (который в данном случае трактуется как неопределённость рынка), то советник не открывает новые сделки.
Индикатор активности рынка.
Вычисляем за среднюю длину свечей в пунктах (разница между максимальным и минимальным значением цены) за N последних баров. Вычсиляем, сколько это будет в % от текущей ширины канала ТМА. Это и есть процент активности рынка. Входы для скальпинга будут точнее при низкой активности (вялый рынок).
Режим опционов.
Если тру: все ордера, как открытые советником так и открытые вручную, автоматически закрываются по истечении Х секунд с момента открытия.
Режим упреждения.
Если тру: при получении сигнала на бай или селл советник открывает ордер не по рынку, а выставляет отложенный ордер на Х новых пунктов выше текущей цены для селлов (или ниже текущей цены для баев). Добавить возможность вместо жёсткого значения в новых пунктах использовать плавающее значение - в % от ширины ТМА.
Запустили сов на реал, а он, паскуда такая, слил ваш последний депозит? Без паники, ибо выход есть всегда! M/


