Общая концепция: идея состоит в том, чтобы создать алгоритм, который обнаруживает краткосрочное изменение тренда, которое идет против долгосрочного тренда, позволяя трейдеру извлечь выгоду из короткого периода времени, когда рынок «предсказуемо» подвергнется коррекции.
Механизм действия: выбирая длительный (long period) и короткий (short period) промежуток времени, алгоритм технически сравнивает два средних значения.
- Для интервалов больше 1 минуты: ((минимальное + максимальное значение соответствующих свечей) / 2.
- Для интервалов меньше 1 минуты: средняя цена всех отрезков по 0,5 секунд / количество отрезков в секундах.
От этого Вы устанавливаете “Относительная дельта между промежутками”, которое представляет собой расстояние между значениями средней цены, длительного (long period) и короткого (short period) временного интервала. Расстояние срабатывания может принимать как положительные, так и отрицательные значения. Если Вы ищете среднюю цену за короткий промежуток времени, которая ниже средней цены за длительный промежуток времени, необходимо установить расстояние срабатывания на отрицательное значение и наоборот. Как только это правило будет установлено, Вы можете решить, на каком расстоянии от текущей цены должен быть размещен новый ордер (на покупку или продажу по выбору). Это достигается значением «Расстояние для выставления ордера«, также может быть как положительным, так и отрицательным.
Другой набор параметров, специфичных для этого алгоритма, — это параметры «Мульти-ордера«, режим сетки. Вы можете включить или выключить этот режим по своему выбору. Он позволяет алгоритму размещать несколько ордеров на определенном расстоянии друг от друга или от начального уровня цены (если включен режим объединения ордеров), также есть возможность увеличения каждого следующего ордера. Если включено автоматическое объединение TP/SL для нескольких ордеров, алгоритм автоматически присоединится к существующему TP/SL при включенном параметре «Объединить по первому тейку» или после истечения периода «Срок жизни ордеров«. Этот режим также отменит ордера, которые не были исполнены. «Срок жизни ордеров» указывает Вам, сколько времени потребуется, чтобы алгоритм снова начал сканировать рынок на предмет выполнения условий алгоритма.
Добавление нового алгоритма выполняется нажатием кнопки «Добавить алгоритм» на вкладке «Алгоритмы». Появится следующее всплывающее окно:
У пользователя есть возможность выбора между алгоритмом AVERAGES и AVERAGES GROUP. Первый запускает алгоритм на одну торговую пару, второй — несколько торговых пар или весь рынок.
Рассмотрим AVERAGES GROUP:
Общие настройки
Задайте уникальное имя алгоритму, например, с кратким описанием его особенностей. Для стандартной работы алгоритма включите Авто-перезапуск, алгоритм начнет работу снова, через время указанное в параметре Задержки, до тех пор пока он не будет остановлен. Примечание, рекомендуется использовать время перезапуска равное или большее длинному промежутку, для того чтобы исключить повторные сигналы по алгоритму.
- Эмуляция: если галочка установлена, то алгоритм работает в режиме «эмуляции», не выставляя ордера на биржу. (В данном режиме в отчетах комиссия не учитывается, для анализа необходимо высчитывать самому)
- Название: укажите название Вашего алгоритма, чтобы легко идентифицировать его в полном списке алгоритмов. Для удобства можно указывать параметры в названии, например — «2.5-long». Или воспользуйтесь формулами автогенерации названия по параметрам алгоритма.
- В графе Предварительного просмотра будет видно итоговое название алгоритма
- Автостарт при перезапуске: переключатель включения/выключения позволяет пользователю выбрать, будет ли алгоритм запускаться автоматически после запуска ядра.
- Остановить если задержка биржевых данных больше: остановит алгоритм (и отменит его приказы), если задержка сделки превысит это значение. Указывается в секундах. 1 секунда = 1000 мс. задержки.
Остановка по задержке биржевых данных. Рекомендуется использовать небольшое значение(1-5 секунд), для того чтобы останавливать алгоритм как только была замечена задержка на входе биржевых данных. Это дополнительная защита от лагов на стороне биржи, которые могут вызвать не желаемые заполнения ордеров. На низко ликвидных спот рынках, а также достаточно далеких расстояниях можно увеличить этот параметр и таким образом отключить автостоп, специально для того чтобы продолжать торговать когда на рынке хаос.
- Остановить если задержка на выставления ордера больше: отменит выставление ордера если по какой-либо причине его выставление занимает больше времени чем указано в данной настройке в секундах.
- Авто-перезапуск: позволяет Вам разрешить или запретить автоматический запуск логики алгоритма, если ранее размещенный ордер был выполнен.
- Задержка перед перезапуском: задержка алгоритма от повторного срабатывания. В секундах.
- Открыть график по заполнению ордера: переключатель включения/выключения позволяет пользователю открывать график на экран при заполнении ордера на данной стратегии.
- Открыть график при закрытии сделки: переключатель включения/выключения позволяет пользователю открывать график на экран при закрытии сделки (исполнении ТП или СЛ) на данной стратегии.
- Частота проверки фильтров: время в секундах, как часто алгоритм опрашивает значения текущих дельт на рынке. Для «медленных» алгоритмов, желательно реже опрашивать дельты, что бы снизить нагрузку на ядро.
- Временное окно ордера: задается временной промежуток в секундах в рамках которого действителен запрос на обработку его биржей. Если по какой-либо причине запрос отправлен с задержкой или биржа долго его обрабатывает и не укладывается в заданные рамки сама биржа отменит этот запрос.
Фильтры рынков
Тип рынка: позволяет пользователю выбрать желаемый тип рынка для торгов: Спот/Маржа/Фьючерсы/Квартальные.
Объединенные по квотируемой паре: квотируемый актив (Например usdt или btc). Если Вы хотите торговать весь рынок к валюте Tether, то укажите usdt и нажмите Enter.
Белый список: валютные пары “белого списка”. Если Вы заполняете данное поле, необходимо пункт «Объединенные по Квотируемой паре» оставить пустым! Допустим Вы хотите торговать только две пары BTCUSDT и ETHUSDT, то укажите их в данном поле через запятую. Торги на других парах, производиться не будут. Формат — btcusdt, ethusdt, и т.д..
Черный список: валютные пары “черного списка”. Допустим в пункте «Объединенные по Квотируемой паре» вы указали котируемый актив usdt, но не хотите торговать на валютных парах BTCUSDT и ETHUSDT, то укажите их через запятую. Формат — btcusdt, ethusdt, и т.д.
Использовать количественные правила: (Только для Binance) включает защиту от бана по категории количественных правил. Подробнее на оф. сайте Binance: https://www.binance.com/ru/support/faq/4f462ebe6ff445d4a170be7d9e897272
Фильтр активных рынков
Установите четкое ограничение по количеству рынков для алгоритма. Помогает правильно рассчитать используемые средства, для алгоритма у которого через глобальные фильтры проходит большее количество рынком, чем нужно. Задайте принципы сортировки списка рынков для выбора из большего количества. Принципы будут задавать свой вес, если принципов несколько — результат каждой сортировки оригинального большего списка добавит вес к финальному списку. Результатом этого ограничения и указания принципа сортировки будет ограниченный список из которого с течением времени рынки будут выходить и добавляться, а алгоритм соответственное запускаться или останавливаться. Параметр Частота сортировки списка позволяет пользователю установить время в секундах для обновления списка парами на основе глобальных фильтров, которые позволяет паре войти в список или выйти из него, а также порядок сортировки (по возрастанию или убыванию). Параметр Игнорироваться первый позволяет пользователям начинать размещение ордеров в отсортированном списке с любой позиции (если оставить 0, будет начинаться с первой позиции списка). Пример: В глобальных фильтрах указан квотируемый рынок USDT, получается список из 100+ рынков, Вы хотите торговать только на 10самых волатильных за последний час, тогда указывается «Макс кол-во активных рынков» = 10, а принцип сортировки «1h d».
- Фильтр 1,2,3-…: набор фильтров (можно добавлять любое количество через кнопку «Добавить правило»). На текущий момент можно фильтровать по абсолютным дельтам — 1м, 3м, 5м, 15м, 30м, 1ч, относительным дельтам — 1м, 3м, 5м, 15м, 30м, 1ч, 24ч и объему за 24 часа (24ч ОКА).
- Макс. кол. рынков: требуется указать максимальное количество рынков в списке фильтрации. Допустим если Вы будете фильтровать по дельте в порядке убывания, и указали 10 рынков, то будет условно ТОП 10 с самой высокой дельтой.
- Игнорировать первые: количество рынков, первых в сформированном списке, которые будут игнорироваться. Допустим при формировании по объему, Вам не нужен BTC, который часто возглавляет список по данному критерию.
- Частота сортировки списка: укажите частоту обновления списка в секундах, желательно не менее 4-х секунд. Данный параметр так же зависит от «Частоты проверки фильтров» в разделе Фильтры рынков. Например если у Вас выставился ордер, через некоторое время дельта вышла из выбранного диапазона в разделе «Дельта фильтры по рынку», то ордер НЕ будет отменен, пока не обновятся дельты согласно параметру «Частоты проверки фильтров» и не обновиться список по параметру «Частота сортировки списка».
Фильтр шага цены
- Диапазон: (от и до, в абсолютном значении) задает алгоритму интервал для шага цены в процентном соотношении от текущей цены (если шаг цены меньше или больше данного процентного соотношения, ордер не выставится).
Применяется чтобы отсечь «квадратные» монеты из торговли, на которых шаг цены может доходить до нескольких процентов.
Фильтр маркировочной цены
- Диапазон: задает алгоритму интервал отклонения маркировочной цены от текущей рыночной цены (в процентах) в рамках которого будет выставлен ордер. ВАЖНО: принимает ОТНОСИТЕЛЬНЫЕ значения! То есть, можно задавать как отрицательные так и положительные значения. Ордера будут выставляться пока марк прайс находится в рамках заданного диапазона.
Фильтр ставки финансирования (фандинг)
Укажите диапазон ставки финансирования в котором алгоритм будет работать.
Пример (скриншот выше): алгоритм будет выставлять ордера только на монетах у которых ставка финансирования находится в диапазоне от -0.5% до 0.5%
Фильтр времени ставки финансирования
Укажите диапазон ставки финансирования и время ДО выплаты ставки финансирования при котором алгоритм запустится или встанет на паузу и время ПОСЛЕ выплаты ставки финансирования при котором алгоритм снова запустится или встанет на паузу в зависимости от параметра «Действие»
Пример (скриншот выше): торги будут остановлены за минуту до выплаты ставки финансирования только на тех монетах, фандинг на которых входит в диапазон от -100% до -1% и через минуту после выплаты ставки снова запустятся.
(Подробнее про ставку финансирования: https://www.youtube.com/watch?v=4vzkgi_7knA )
Дельта фильтры по рынку
Включает / выключает фильтры дельты для каждой монеты, на которую алгоритм настроен выставлять ордера. Эта опция позволяет добавить один или несколько фильтров, которые могут различаться по временному интервалу и диапазону дельты. Диапазон дельты может быть относительным (если значения вводятся со знаком «-«) или абсолютным (значения вводятся как целые положительные числа) и должен вводиться от меньшего (левое поле) к большему (правое поле).
Использовать абсолютную или относительную дельту: в поле «диапазон» необходимо указать дельты. Абсолютная дельта может иметь только положительные значения. При использовании Относительной дельты значения могут быть отрицательными, например от -1.5% до -0.5%
- Временной промежуток: временной интервал дельты, валютных пар (которые будут выбраны, учитывая данные квотируемой валюты, “белого списка”, “черного списка”). Можете выбрать один из предложенных вариантов. В дальнейшем рамки минимальной и максимальной дельты валют, будут опираться на данный интервал.
- Диапазон: укажите диапазон минимальной и максимальной дельты. От N1% до N2%. Если дельта у актива за рамками выбранного диапазона, то алгоритм не сработает и ордера не будут размещены. Допустим если Вы выбрали временной промежуток 5 минут и указали диапазон от 0,5% до 2%, то сработает алгоритм только на тех парах, на которых цена за 5 минут изменилась не более 2% и не менее 0,5% — направление цены не важно. Значения только положительные. Дельты Вы можете посмотреть в клиенте — вкладка «Обзор рынков».
- Отменять если вне диапазона: если галочка установлена, то при выходе дельт из выбранного диапазона, ордера в этом алгоритме будут отменены.
При использовании в шотах галочка не имеет смысла т.к. ордера будут отменены автоматически при выходе из диапазона дельты.
Примечание: можно добавлять несколько фильтров с дельтами разного типа.
Суточные квотируемые объемы
- Диапазон: укажите диапазон минимальный и максимальный объем за 24 часа, валютных пар (которые будут выбраны, учитывая данные котируемой валюты, “белого списка”, “черного списка”). В том случае если объем выбранной валютной пары будет меньше установленного значения в первом поле или выше значения во втором поле, алгоритм не сработает и ордера не будут размещены. Объемы Вы можете посмотреть в клиенте — вкладка «Обзор рынков».
Дельта фильтры по выбранному рынку
- Торговая пара: торговая пара относительно дельт которой будет задействован фильтр. Например BTCUSDT.
- Временной промежуток: временной интервал дельты валюты BTC. Можете выбрать один из предложенных вариантов. В дальнейшем рамки минимальной и максимальной дельты BTC будут опираться на данный интервал.
- Диапазон: укажите диапазон минимальной и максимальной дельты BTC. От N1% до N2%. Если дельта у BTC за рамками выбранного диапазона, то алгоритм не сработает и ордера на выбранных парах не будут размещены. Значения только положительные. Дельты BTC Вы можете посмотреть в клиенте — вкладка «Обзор рынков».
- Отменять если вне диапазона: если галочка установлена, то при выходе дельт из выбранного диапазона, ордера в этом алгоритме будут отменены.
Фильтр производительности: Позволяет пользователю настроить работу текущего алгоритма в зависимости от результатов торговли по всем запущенным алгоритмам, конкретной торговой паре, текущего алгоритма или любого другого алгоритма.
Подробнее см. в инструкции (ссылка)
Параметры алгоритма
Указываются Длинный и Короткий промежуток времени, на которых считается средняя цена и сравнивается между собой. Если на цена короткого промежутка отошла от средней цены за более долгий промежуток вверх — то определен рост за последнее время и наоборот. Относительная дельта между промежутками указывается со знаком (-) если нужно определить падение или без знака, если нужно определить рост. Расстояние для выставления ордера указывается для того чтобы или купить по рынку при обнаружении сигнала или наоборот выставить немного в стороне от текущей цены в надежде словить результат продолжения тренда.
- Длинный промежуток: определяет длительный период времени (в секундах), который будет использоваться для алгоритма.
- Короткий промежуток: определяет короткий промежуток времени (в секундах), который будет использоваться для алгоритма.
- Относительная дельта между промежутками: задается значение (в процентах) расхождения между длительным и коротким периодом, которое приведет к размещению ордера. Может быть как положительным, так и отрицательным значением.
- Расстояние для выставления ордера: устанавливает расстояние от текущей цены (в процентах) в момент сработки алгоритма до начального ордера, который будет установлен алгоритмом. Может быть как положительным, так и отрицательным значением.
Параметры ордера
Выберите направление ордера (Бай или Селл\Лонг или Шорт) и размер ордера, в USDT эквиваленте. Укажите время через которое ордер будет отменен.
- Направление: позволяет пользователю выбрать, какой тип ордера размещать алгоритму Купить (Long) или Продать (Short).
- Тип ордера: устанавливает тип ордера, который будет размещен алгоритмом. Подробнее о типе ордеров можете прочитать в документации самой Биржи.
- Прибавление к стоп-лимитному ордеру: устанавливает определенное расстояние от уровня цены, на котором размещается стоп-лимитный ордер, до цены который запускает стоп-лимитный ордер.
- Размер ордера: значение ордера, установленное в USDT. Это значение учитывает кредитное плечо пользователей. Например для торговли на паре BTCUSDT минимальный ордер составляет 0.001 BTC, при цене BTC 45000$ будет равным 45$. Необходимо указать от 45, это значение уже будет с плечом, т.е. при плече х125 — Ваших средств будет задействовано 0,36$. Старайтесь указывать немного выше минимального значения для корректного исполнения ордера.
- Айсберг: при активации скрывает истинный размер заказа осуществляя покупку\продажу меньшим и равным объемом. Позволяет пользователю скрывать заказы большого объема в книге ордеров. Включается отдельно для новых заказов и ордеров Тейк профита.
- Отмена по первому тейку: при использовании сетки мульти ордеров, сетка будет отменена если любой из ордеров Тейк профита данного алгоритма будет заполнен.
- Auto join, автоматическое объединение: заполненные ордера алгоритмов будут объединяться между собой смещая тем самым среднюю точку входа. После объединения ордеров, расстояние до ТП\СЛ обновится относительно средней цены.
- Ключ объединения: служит для объединения ордеров ТП\СЛ разных алгоритмов между собой, задается любое, но одинаковое значение в настройках алгоритмов которые необходимо объединить.
- Примечание: Для объединения ордеров исключительно внутри одного алгоритма необходимо установить галочку «Объединить по первому тейку» и задать ключ объединения.
- Макс. размер позиции: Максимальный объем, который может набрать ордер путем усреднения или суммарный объем отдельно исполненных ордеров на одной паре по данному алгоритму.
Срок жизни ордеров
Вкл/Выкл параметр срока жизни ордеров, выставленных на одной торговой паре данным алгоритмом, в секундах. Параметр «не отменять если исполнился ордер» отменит заданный «срок жизни ордеров» при исполнении первого ордера из сетки ордеров выставленную алгоритмом, и оставит остальные ордера на бирже. Параметр «отмена по первому тейку» отменит остаюшиеся ордера выставленные алгоритмом когда первая позиция, открытая ордером выставленным данным алгоритмом закроется (тейком или стопом).
- Срок жизни ордеров: задержка до отмены не исполненного ордера или нескольких ордеров, выставленные алгоритмом.
- Не отменять если исполнился ордер: отключает отмену сетки ордеров при исполнении первого.
- Отмена по первому тейку: отмена ордера или сетки ордеров при исполнении ТП/СЛ.
Мульти-ордера
Укажите количество дополнительных ордеров, расстояние на котором они встанут друг от друга, и процент и отношение увеличения каждого последующего ордера, если при обнаружении сигнала Вы хотите разместить не 1 ордер, а сетку из ордеров. Авто объединение ТП\СЛ как опция, для того чтобы получать в результате работы сетки ордеров одну объединенную позицию.
- Увеличение размера ордеров относительно: можно выбрать тип увеличения каждого последующего ордера в сетке. Если выбрать от Оригинального ордера, то при параметре «Увеличивать каждый последующий ордер на» например 100, каждый следующий ордер будет увеличен на 100% от первого ордера. Пример — 100, 200, 300, 400. А при выборе от Предыдущего ордера, каждый следующий ордер будет увеличен на 100% от предыдущего. Пример — 100, 200, 400, 800.
- Количество: устанавливает количество ордеров в сетке. Не считая первый ордер.
- Расстояние: устанавливает расстояние в процентах между ордерами в сетке.
- Увеличивать каждый последующий ордер на: увеличение размера каждого последующего ордера в сетке. Значение указывается в процентах.
Тейк профит
Укажите Процент от цены входа на который выставится Тейк Профит. Выберите тип ордера для Тейк Профита, рекомендуется Лимитный, что также будет означать Реальный тип ордера.
- Процент: устанавливает расстояние от цены (по которой был исполнен ордер) до Тейк профит в процентах.
- Тип ордера: устанавливает тип ордера Тейк профит, который будет размещен алгоритмом. Подробнее о типе ордеров можете прочитать в документации самой Биржи.
Автопонижение Тейк профита
Укажите периодичность(Таймер) понижения тейк профита, шаг, в процентах от текущей цены, и порог, лимит, где автопонижение остановится. Этот функционал поможет закрыть сделку с меньшим профитом там, где не получилось забрать ожидаемый профит.
- Таймер: устанавливает задержку в секундах, пока Тейк профит не начнет снижаться до текущей цены (это же значение будет использоваться как для первого шага, так и для всех последующих шагов).
- Шаг: устанавливает процентное значение шага приближения Тейк профит, к начальной цене.
- Порог: устанавливает самый низкий предел в процентах от начального ордера, до которого Тейк профит снизится и остановится.
Стоп лосс
Укажите в процентах от точки входа уровень убытка при достижении которого приложение будет закрывать сделку. Спред — это добавка к значению уровня стоп лосса, которая поможет избегать проскальзывания. Тип ордера рекомендуется Маркет — Виртуальный, что будет работать в комбинации с реальным тейк профитом. Для больших размеров ордеров имеет смысл выбрать альтернативные типы ордеров, такие как Реальный, Стоп-Лимитный тип стоп-лосса на бирже или Лимитный тип. Задержку можно использовать при торговле низколиквидными рынками в волатильном слабо наполняющемся стакане, для того чтобы исключить ложные срабатывания стоп-лосса в пустом стакане, сразу после открытия сделки.
- Процент: устанавливает расстояние от цены (по которой был исполнен ордер) до Стоп лосс в процентах.
- Спред: позволяет пользователю установить расстояние в процентах от текущей цены, которое определит где будет размещен Стоп лосс, как только цена пересечет стоп-триггер.
- Задержка на выставление: Задержка выставления Стоп лосс в секундах, после исполнения ордера.
- Тип ордера: устанавливает тип ордера Стоп лосс, который будет размещен алгоритмом. Подробнее о типе ордеров можете прочитать в документации самой Биржи.
Трейлинг стоп (следование за ценой)
Функция смещения стоплосса в прибыльную (меньшую) сторону, если цена изменилась в положительном направлении. Спред — буфер который проигнорирует мелкие изменения цены или игру спреда цены и передвинет стоп-лосс, только если цена отошла на значение большее чем Спред трейлинг стоп лосса.
- Спред: значение в процентах движения цены, в противоположную сторону от начальной цены. При котором Стоп лосс будет следовать за текущей ценой на заданное расстояние в параметре «Стоп лосс —> Процент».
Второй стоп
Включает/выключает специальную функцию Stop Loss, которая отменяет первоначальный Stop Loss и размещает новый после того, как цена двинется в прибыльном направлении относительно стороны позиции на определенную величину. Таким образом, если функция включена, второй Стоп Лосс отменит первоначальный Стоп Лосс и, как только цена достигнет расстояния триггера второго СЛ, разместит новый Стоп Лосс на расстоянии от этого уровня, равный дистанции второго СЛ. Например: если триггер второго СЛ равен 0,5%, а процент дистанции второго СЛ равен 0,2%, то как только цена достигнет триггера второго СЛ 0,5%, второй стоп-лосс будет размещен на расстоянии 0,3% (0,5% — 0,2%). Второму SL также может быть приписана функция трейлинга, которая позволит ему отслеживать текущую цену на расстоянии, равном трейлинг-спреду (аналогично функции трейлинга первоначального стоп-лосса).
- Триггер второго стопа: значение в процентах движения цены, при достижении которого сработает триггер и выставит новый Стоп лосс (на заданный процент параметра «Дистанция второго стопа») в замен первого. Данный параметр можно использовать для перестановки Стоп лосс в безубыток, при достижении половины дистанции до Тейк профит.
- Дистанция второго стопа: расстояние в процентах от цены на момент сработки «Триггер второго стопа» до нового Стоп лосс, взамен старого.
- Второй стоп трейлит: включение опции — Трейлинг СЛ (следование за ценой) для второго Стоп лосс.
- Спред трейлинг стопа: значение в процентах движения цены, в противоположную сторону от начальной цены. При котором Стоп лосс будет следовать за текущей ценой на заданное расстояние в параметре «Стоп лосс (второй) —> Процент».