TradingView
ROBO_Trading
27 апр 2018 г., 09:29

Робот BitMEX Fast RSI v1.0 

Bitcoin / US Dollar Perpetual Inverse Swap ContractBitMEX

Описание

Не реклама. Просто так называется скрипт, а на данный момент не продается (надеюсь в мае будет готово уже). Данный скрипт можно использовать уже сейчас как "торговый советник", это всё та же стратегия Fast RSI, но с еще более гибкими настройками, что позволяет выжимать более интересные результаты, во всяком случае на бектестах. А ниже бектест за 2017-2018 с комиссией 0.1% и настройками по умолчанию. Обратите внимание на максимальную просадку в 8%.

Новых настроек много, потому хочу их описать подробнее. Точно такие же настройки будут и у робота, кстати. То есть робот будет полной копией этого скрипта во всём и со всеми настройками, что позволит пользователю подгонять параметры используя тестер TradingView. Кроме того робот может работать как мейкер, получая премию мейкера, а не платить комиссию. Если кому интересно, выглядеть сие чудо техники будет примерно так:

hkar.ru/TRxY

Теперь обо всех настройка по порядку.

Галка мартингейл

В абсолютном большинстве случаев после убыточной сделки следующая сделка является прибыльной у данной стратегии. Потому возникает резонная причина на сделку после убыточной делать более большую ставку, раз уж шансы на прибыль выше. Если галка активирована то после убыточной сделки следующая сделка будет на сумму в 2 раза больше. После двух убыточных подряд третья сделка будет в 4 раза больше первой, и так далее. Исходя из логики понятно что мартингейл штука опасная, потому можно отключить.

Настройки RSI

Про период и лимит Вам понятно. "RSI Bars" - это количество баров (свечек) с сигналом от индикатора RSI, необходимое для открытие позиции. То есть если стоит 1, то сделка открывается на первой же свечке с сигналом. Если 2, то начиная со второй. Это снижает риск, но снижает и прибыль. % прибыльных трейдов повышает.

Фильтр по цвету

Покупаем только на красных, продает только на зеленых, что слегка улучшает торговлю. Теперь можно включать этот фильтр отдельно и для открытия и для закрытия позиции. Впрочем, рекомендуется не отключать.

"Color bars" - это минимальное необходимое количество баров одного цвета, идущих подряд, чтобы открыть позицию. Например, если стоит 4, значит лонг откроется только на 4-ой красной свечке подряд. Это улучшает точность сигналов, снижает просадку, но снижает и прибыль.

Фильтр по телу свечи

Нужен чтобы пропускать слишком маленькие свечки ("плоские", "плюсики"). Указывается в процентах и отдельно для закрытия или открытия позиции. Если стоит 20%, значит свеча должна быть больше чем 20% от тела средней свечи. В противном случае она считается слишком маленькой и будет проигнорирована.

Фильтр нормы

Используется только для закрытия позиции. Для открытия он даже бессмысленный будет. Цена считается в норме если RSI без сигналов перекупленности/перепроданности (нет фона). Так вот, если фильтр нормы включен, то сделка будет закрывать только если цена в норме. Это улучшает результаты, да и логично вполне.

Индикатор

Кроме того внизу теперь индикатор RSI, параметры которого привязаны к параметрам стратегии, что будет более удобно.
Комментарии
kripton
Одного до сих пор понят не могу, как на битмексе разместить ордер по API? Документацию вроде нашел, но нифига не понятно. Как будет выглядеть POST запрос?
ROBO_Trading
kripton
@Noro, я даже не про ордер хотел спросить, а про авторизацию. Прежде чем разместить ордер нужно авторизоваться. А вот как авторизоваться - не въезжаю. Насколько я понял не POST и не GET запросом, а отправкой HTTP заголовков?
ROBO_Trading
@kripton, за, в заголовке HTTP надо вставлять подписанный по SHA256 запрос своим секретным ключем - тогда примет. Примеры кода есть у них на сайте и на гитхабе, но нету примеров на PHP вообще нигде.
kripton
@Noro, Я правильно понимаю, что нужно отправить POST запрос (для создания ордера) на URL bitmex.com/api/v1/order с таким заголовком (синтаксис правильный?):

content-type : application/json
Accept : application/json
X-Requested-With : XMLHttpRequest
api-expires : дата_экспирации_в_UNIX_формате
api-key : мой_APIKEY
api-signature : сигнатура

В результате этого я получаю ответ 400 с телом ответа "Your browser sent an invalid request." все это делаю я через спец. программу для автоматизации действий (там есть HTTP-клиент).
Делая все это через Node JS ордер успешно создается, но я не хочу через ноду.
Также не понятно как получить значение величины открытой позиции, понятно что тоже через авторизацию. Тоже заголовок отправлять?
ROBO_Trading
@kripton, рекомендую на гитхабе поискать готовые варианты кода, так же на сайте биржи есть примеры. Предупрежу что всё весьма сложно, и если Вы не проф.программист со стажем, то до результата не доберётесь и где-нибудь на полпути сдадитесь.
kripton
@Noro, не мытьем так катанием... план Б у меня уже давно есть, придется как всегда костылировать )
kripton
@Noro, с меня пару лайков за совет)
romualdof
Добрый день. Как обстоят дела на сегодняшний день по тестированию робота?
ROBO_Trading
@romualdof, Добрый. +9% за май пока в биткойнах, +43% за апрель в биткойнах. Сам то робот давно готов, а вот пользовательский интерфейс пока не готов. Так же пишется подробный мануал, на это всё надо время. Пока еще надеюсь успеть в мае выложить демку. Выглядит пока так:

hkar.ru/U5QH
Ещё