# Reversal trading (RT) - Разворотная торговля

Реверсивная торговля (RT) - это метод Gunbot, позволяющий продолжить прибыльную торговлю, когда цены снижаются после покупки актива.

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

Торговые сборы, уплаченные во время разворотной торговли, учитываются.

![](https://user-images.githubusercontent.com/2372008/38331646-13c489aa-3854-11e8-95b4-8b9143edf69b.PNG)

*Обратите внимание, что этот пример намеренно прост. Цены не должны идти прямо вниз для RT, чтобы успешно накапливаться.*

## Как это работает

Торговля на разворотах начинается, когда текущая цена установлена ​​в процентах ниже, чем последняя купленная цена, это определяется с помощью `RT_GAIN`. Первоначальная сумка продается за базовую валюту (RT\_SELL), а вложенная сумма резервируется для выкупа большего количества единиц, когда цены падают дальше. Когда цена падает на процент, определенный с помощью `RT_BUY_LEVEL`, покупается валюта котировки (RT\_BUY). Теперь у вас есть больше валюты котировки, чем вы изначально купили, по более низкой цене за единицу.

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

С `TM_RT_SELL` или при использовании `bb` в качестве стратегии продажи можно выставить RT\_SELL с более высокой ставкой, чем предыдущий RT\_BUY, что позволит вам гораздо быстрее достичь прибыльной точки выхода.

Когда цены достигают общей прибыльной цены (ТОЧКА ВЫХОДА), устанавливается нормальный ордер на продажу с использованием критериев продажи вашей стратегии.

В случае, если цены восстановятся до точки безубыточности до того, как будет установлен RT\_BUY, первоначальный пакет будет выкуплен для продолжения нормальной торговли (RT\_BUYBACK). Кроме того, вы можете установить пользовательский уровень для выкупа котировки с помощью `RT_BUY_UP_LEVEL`.

{% hint style="info" %}
**Точный процесс торговли на развороте зависит от стратегий, используемых для покупки или продажи. Есть небольшие различия, подробно описанные ниже.**
{% endhint %}

**Подсказки**

* Не активируйте реверсивную торговлю на уже существующих сумках, если вы не используете `TM_RT_SELL`! Решение начать торговлю разворотом или нет, лучше всего принять до того, как вы начнете торговать парой, таким образом, процесс может быть запущен своевременно.&#x20;
* Торговая математика разворота выполняется на основе вашей торговой истории, если ваш последний ордер на продажу был в убытке (и не вызван стоп-лимитом), торговля по развороту немедленно начнется, когда вы его включите, и продолжится, пока не удастся прибыльно завершить цикл RT - даже когда вы снова отключили RT.&#x20;
* Чтобы предотвратить нежелательную разворотную торговлю, убедитесь, что у вас есть прибыльный последний ордер на продажу или установлен `IGNORE_TRADES_BEFORE` сразу после вашего последнего ордера на продажу с убытком. Вы можете использовать <https://currentmillis.com/> для создания необходимой метки времени. Чтобы быть уверенным, удалите файл состояния JSON пар после установки `IGNORE_TRADES_BEFORE`.
* Вы можете установить максимальную разницу в цене между текущей ценой и средней покупной ценой с помощью `RT_MAXBAG_PROTECTION`, чтобы предотвратить запуск RT на парах, которые уже потеряли большую ценность.

## RT flowcharts - Схема разворотной торговли <a href="#rt-flowcharts" id="rt-flowcharts"></a>

Есть три различных способа, которыми Gunbot управляет торговлей разворота, основываясь на основных стратегиях, используемых для пары. Выбранная стратегия покупки влияет на способ исполнения ордеров RT\_BUY, стратегия продажи влияет на ордера RT\_SELL.

Необязательные шаги в блок-схемах имеют отношение только тогда, когда включены `TM_RT_SELL` и / или `RT_TREND_ENABLED`.

### 1. Simplified flow for RT - Упрощенный поток для RT <a href="#id-1-simplified-flow-for-rt" id="id-1-simplified-flow-for-rt"></a>

![](https://user-images.githubusercontent.com/2372008/47076714-a5016d80-d1ff-11e8-9c5e-5d12b2a7e3e6.PNG)

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

### 2. Процесс RT для всех стратегий, кроме`bb` <a href="#id-2-rt-process-for-all-strategies-except-bb" id="id-2-rt-process-for-all-strategies-except-bb"></a>

![](https://user-images.githubusercontent.com/2372008/47029958-02001380-d16d-11e8-8f7d-9f146fbbf24b.PNG)

### 3. RT процесс для `bb` <a href="#id-3-rt-process-for-bb" id="id-3-rt-process-for-bb"></a>

![](https://user-images.githubusercontent.com/2372008/47029957-02001380-d16d-11e8-8cd6-f661deadf73d.PNG)

`LOW_BB`*/*`HIGH_BB` *в торговле с разворотом используйте те же настройки, что и при обычной торговле на* `bb`*.*

## Relevant settings - Соответствующие настройки <a href="#relevant-settings" id="relevant-settings"></a>

Следующие параметры настройки доступны для разворотной торговли.

### RT Enabled - Включение RT <a href="#rt-enabled" id="rt-enabled"></a>

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

Когда удвоение включено, RT начнется при достижении DU\_CAP\_COUNT.

**Values:** true or false

**Default value:** false

Parameter name in `config.js`: `RT_ENABLED`

### RT Gain - Усиление RT <a href="#rt-gain" id="rt-gain"></a>

Определяет процентное падение после начальной покупки или RT\_BUY, чтобы вызвать RT\_SELL. Удостоверьтесь, чтобы установить это выше, чем спрэд между ставкой и попросить предотвратить нежелательный выкуп.

Когда установлено значение 2 и последняя покупка имела цену 100, RT\_SELL происходит, когда цена 98 или ниже. Затем разворотная торговля будет ждать, пока цены упадут на `RT_BUY_LEVEL`, и выкупит еще больше единиц.

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

**Values:** числовой, представляет процент.

**Default value:** 1.5

Parameter name in `config.js`: `RT_GAIN`

### RT Buy Level - Уровень покупки при RT <a href="#rt-buy-level" id="rt-buy-level"></a>

Это определяет процент, который цена должна упасть после RT\_SELL, чтобы вызвать RT\_BUY.

Когда установлено значение 2 и последний RT\_SELL произошел по цене 100, RT\_BUY происходит, когда цена 98 или ниже. Затем разворотная торговля будет ждать продажи с целью получения прибыли или другого RT\_SELL, когда цены продолжат падать.

**Values:** числовой, представляет процент.

**Default value:** 2

Parameter name in `config.js`: `RT_BUY_LEVEL`

### RT Sell Up - Продажа при RT <a href="#rt-sell-up" id="rt-sell-up"></a>

Это устанавливает начальную точку для отслеживания RT\_SELL. Работает только когда `TM_RT_SELL` включен.

Когда вы устанавливаете это значение на 1 и цена увеличивается на 1% после RT\_BUY, активируется трейлинг на продажу, чтобы разместить следующий RT\_SELL как можно выше. Диапазон продаж настраивается с помощью `TRAIL_ME_RT_SELL_RANGE`.

При желании вы можете использовать `RT_TREND_ENABLED`, чтобы продолжить работу с RT\_SELL\_UP, только когда прогнозируемый тренд указывает на сильный восходящий тренд.

**Values:** числовой - представляет процент выше последней цены покупки.

**Default value:** 0.3

Parameter name in `config.js`: `RT_SELL_UP`

### RT Buy Up Level - Уровень покупки при RT <a href="#rt-buy-up-level" id="rt-buy-up-level"></a>

Это устанавливает цену для размещения ордера RT\_BUY выше последнего ордера RT\_SELL, цена должна быть ниже точки безубыточности, чтобы это работало. Значение по умолчанию 0 отключает эту функцию.

Когда вы установите значение 3 и цена увеличится на 3% после RT\_SELL, там будет размещен ордер RT\_BUY вместо того, чтобы ждать, пока цена достигнет точки выкупа. (Технически этот тип ордера является ордером на выкуп, а не обычным RT\_BUY).

Помните, что это отрицательно скажется на количестве единиц котировки, накопленных во время RT, это действует как своего рода стоп-лосс для торговли на разворотах.

**Values:** числовые - представляют процент выше последней цены продажи.

**Default value:** 0

Parameter name in `config.js`: `RT_BUY_UP_LEVEL`

### RT Trend Enabled <a href="#rt-trend-enabled" id="rt-trend-enabled"></a>

Позволяет использовать прогноз тренда для размещения ордеров RT\_BUY или RT\_SELL при использовании `TM_RT_SELL` и / или `TRAIL_ME_RT`.

Индикатор прогноза тренда сочетает в себе smacross, xtrend и прогноз временных рядов, чтобы показать силу тренда. Это может быть использовано для размещения ордеров RT\_BUY или RT\_SELL только при сильном нисходящем или восходящем тренде.

Ордер RT\_SELL будет размещен, когда трейлинг-стоп достигнет предела, а прогнозный тренд покажет 6 зеленых стрелок. Ордер RT\_BUY будет размещен, когда трейлинг-стоп достигнет уровня, а прогнозный тренд покажет 6 красных стрелок.

**Values:** true or false

**Default value:** false

Parameter name in `config.js`: `RT_TREND_ENABLED`

### RT Once - Один цикл пары <a href="#rt-once" id="rt-once"></a>

Установите для этого параметра значение true, чтобы разрешить только один полный цикл RT (до окончательной продажи стратегии), после чего для пары установлено, что цикл больше не повторяется.

В конце цикла RT для включенной пары будет установлено значение false.

**Values:** true or false

**Default value:** false

Parameter name in `config.js`: `RT_ONCE`

### RT Once And Continue - Один полный цикл РТ <a href="#rt-once-and-continue" id="rt-once-and-continue"></a>

Установите значение true, чтобы разрешить только один полный цикл RT (до окончательной продажи стратегии), после чего RT будет отключен для продолжения нормальной торговли.

В конце цикла RT для параметра `RT_ENABLED` будет установлено значение false.

**Values:** true or false

**Default value:** false

Parameter name in `config.js`: `RT_ONCE_AND_CONTINUE`

### RT Max bag Protection <a href="#rt-maxbag-protection" id="rt-maxbag-protection"></a>

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

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

**Values:** числовой, представляет процент.

**Default value:** 10

Parameter name in `config.js`: `RT_MAXBAG_PROTECTION`

Торговля на развороте зависит от нескольких настроек TrailMe, чтобы достичь лучших точек входа для RT\_BUY и заставить работать RT\_SELL\_UP. Соответствующие настройки перечислены ниже.

### Trail Me RT <a href="#trail-me-rt" id="trail-me-rt"></a>

Используйте это для включения трейлинга в стиле tssl для ордеров RT\_BUY.

**Values:** true or false

**Default value:** false

Parameter name in `config.js`: `TRAIL_ME_RT`

### Trail Me RT Sell <a href="#trail-me-rt-sell" id="trail-me-rt-sell"></a>

Используйте это для включения трейлинга в стиле tssl для ордеров RT\_SELL выше последней ставки RT\_BUY.

**Values:** true or false

**Default value:** false

Parameter name in `config.js`: `TM_RT_SELL`

### Trail Me Buy Range - Диапазон покупок Trail Me при РТ <a href="#trail-me-buy-range" id="trail-me-buy-range"></a>

Это устанавливает диапазон покупки для TrailMe.

Установка диапазона 0,5% при начальной цене 0,1 установит диапазон от 0,0995 до 0,1005. Пока цены продолжают двигаться вниз, диапазон движется вниз вместе с ценой.

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

**Values:** числовой, представляет процент.

**Default value:** 0.5

Parameter name in `config.js`: `TRAIL_ME_BUY_RANGE`

### Trail Me RT Sell Range - Диапазон продаж Trail Me при РТ <a href="#trail-me-rt-sell-range" id="trail-me-rt-sell-range"></a>

Это устанавливает диапазон продаж для TrailMe.

Установка диапазона 0,5% при текущей цене 0,1 установит диапазон от 0,0995 до 0,1005. Пока цены продолжают двигаться вверх, диапазон движется вместе с ценой.

Как только цены начинают снижаться, диапазон замораживается и выставляется ордер на продажу, когда цены пересекают нижнюю границу диапазона.

**Values:** числовой, представляет процент.

**Default value:** 0.5

Parameter name in `config.js`: `TRAIL_ME_RT_SELL_RANGE`
