Как выставлять ордера лесенкой на бинанс
Перейти к содержимому

Как выставлять ордера лесенкой на бинанс

  • автор:

Как выставлять ордера лесенкой на бинанс

StepSell (лесенка) позволяет продавать монету частями при росте цены. Например, продать 50% монет при достижении цены $10000, 25% при $11000 и 25% при $11500. Всего можно разбить позицию на 8 частей, задав для каждой свой объем и свою цену. StepSell работает и настраивается одинаково, независимо от того, создается ордер SmartTrade или же SmartSell.

Представим для примера, что нужно продать 100000 единиц BITB. К примеру, 4 шага для продажи следующие (объем — цена в BTC):

40% — 0.00000125.
30% — 0.00000129.
15% — 0.00000135.
15% — 0.00000140.

В таком случае монеты будут продаваться по рынку (или лимитными ордерами, в зависимости от ваших настроек) при достижении каждой ступени в соответствии с ее объемом. В этом примере продажа произойдет следующим образом:

40000 (40%) BITB при достижении цены 0.00000125 BTC.
30000 (30%) BITB при достижении цены 0.00000129 BTC.
15000 (15%) BITB при достижении цены 0.00000135 BTC.
15000 (15%) BITB при достижении цены 0.00000140 BTC.

Обратите внимание! Если общая позиция не делится на количество Тейк профитов в желаемой пропорции, то усреднение шага ТП произойдет в Большую сторону. Это может привести к тому, что некоторые ТП могут быть нулевыми. В таком случае, вы получите ошибку выставления Тейк Профита. Вам нужно переназначить проценты Тейк профита в другой пропорции.

Порядок действий для настройки следующий:

1. В блоке Take Profit нужно переключиться в режим «Лесенка» нажатием на «Добавить лесенку»:

2. Способ отслеживания цены для рыночного ордера в данном случае не изменяется (на изображении ниже выбран Bid), о вариантах выбора можно почитать здесь;
3. Ввести цену для первого шага 0.00000125.
4. Выставить объем продажи для этого шага — 40%. В итоге получим такие настройки:

5. Нажать «Добавить цель». Результат:

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

6. Повторим пункты 3-5 для добавления оставшихся 3-х ступеней продажи. При добавлении последнего (4-го) ордера, «кол-во» нельзя изменить, т.к. в этом ордере будет всегда продаваться остаток объема, который не был использован в первых трех шагах StepSell. В итоге будем иметь такую «лесенку»:

Необязательно использовать все 8 шагов, можно создать StepSell с 2 и 3 целями для продажи. Например, удалив последние 2 ступени из примера выше общим объемом 30%, можно создать новую на все освободившееся количество монет, получится лесенка из трех шагов:

Галочка «Trailing последней цели» позволяет воспользоваться механизмом Trailing для последнего ордера. Суть его работы будет такой же, как и при Trailing Take Profit, описание которого можно найти в текущем разделе.

Усреднение позиции в трейдинге: объяснение, формулы, стратегии, риски

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

Внимание! Данная статья носит исключительно информационный характер и не содержит инвестиционных рекомендаций и советов по торговле.

Обзор подготовлен командой бесплатного терминала для торговли криптовалютой CScalp. Чтобы получить CScalp, оставьте свой электронный адрес в форме ниже.

Оглавление

  • Что такое усреднение позиции в трейдинге
  • Формула усреднения
  • Усреднения на фондовом рынке: стратегии
  • Усреднения на криптовалютном рынке: стратегии
  • Усреднение позиции на растущем и падающем рынке: разница
  • Когда можно усредняться
  • Когда нельзя усредняться
  • Преимущества усреднения
  • Калькулятор усреднения позиции
  • Как закрыть позицию частями в скальпинге
  • Заключение

Что такое усреднение позиции в трейдинге

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

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

Рассмотрим усреднение на примере 15-минутного графика BTCUSDT. Трейдер ожидает смену восходящего тренда на нисходящий и открывает позицию в шорт по $192. После импульсного движения вверх он усредняется короткой позицией по $195. После смены тренда добавляется еще двумя частями на отметках $196 и $194. В результате средняя цена составила $194. Даже закрывая все позиции после первого импульса на отметке $193, трейдер получает прибыль $1. Без применения усреднения, первая сделка могла закрыться с минимальным убытком -$3.

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

Другой пример усреднения на недельном графике Alcoa Corporation. Наблюдаем набор лонговой позиции при снижении цены. Первый ордер на покупку открыт по $34. Второй по $31. Третий по $23. Четвертый уже на восходящем рынке по $28

В результате наращивания лонговой позиции тремя сделками, средняя цена покупки снизилась до $29.

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

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

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

Пример наращивания позиции по ходу движения цены в благоприятную сторону наблюдаем на дневном графике акций Alcoa.

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

Усреднение – агрессивный метод торговли. Здесь важно соблюдение правил риск-менеджмента. Открывая серию сделок для “вытягивания” убыточной позиции, трейдер может уменьшать объем, разбивая его на части и загружаться в позицию. При этом он открывает сделки так, чтобы не превышать свой риск в деньгах.

Дополнительные ордера открывают с учетом уровней поддержки или сопротивления. Здесь высока вероятность ценового разворота или отскока. Рекомендуется действовать в рамках проверенной торговой стратегии.

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

Формула усреднения

Усреднения позиции в трейдинге основано на вычислении среднего арифметического показателя цены актива.
Формула для расчета усреднения – Рср = (Р1 х V1+…+ Pn х Vn) / (V1 +…Vn), где:

  • Рср – средняя цена позиции
  • Р1 – цена, по которой была открыта первая позиция
  • V1 – объем первой позиции
  • Pn – цена открытия n-й позиции
  • Vn – объем n-й позиции

Учитывая пример усреднения убыточной позиции акций Alcoa Corporation, рассчитаем среднюю цену продажи акции. Объем позиций в расчете одинаковый: V1 = V2 = V3 = V4 = 10 акций.

На восходящем тренде открыта сделка в шорт P1 по цене $74. Тренд продолжает расти. Добавлена еще одна позиция в шорт P2 по $86. Только после добавления третьей короткой позиции P3 по $96 тренд меняет направление на нисходящее. На отметке P4 трейдер добавляет четвертую позицию в шорт по $72.

Рассчитываем среднюю цену – Рср = (74х10 + 86х10 + 96х10 + 72х10)/40 = 82. Средняя цена акций составила $82. Потом трейдер закрыл позиции в шорт по цене $45. Он получит прибыль $1480. Усреднение дало возможность вывести в плюс убыточную сделку. Без усреднения, после роста цены трейдер был бы вынужден закрыть первую позицию с убытком на отметке $86. С учетом объема (10 акций), минимальные убытки составили бы -$120.

Усреднения на фондовом рынке: стратегии

На фондовом рынке есть разные стратегии усреднения. Рассмотрим некоторые из них.

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

Рассмотрим усреднение акций на дневном графике Apple.

Анализируем рынок. Можно использовать индикаторы полосы Боллинджера, индекс относительной силы (RSI) и MACD. Но мы не рекомендуем проводить индикаторный анализ при торговле внутри дня, поскольку на младших таймфреймах индикаторы могут генерировать много ложных сигналов. Горизонтальные линии на графике отображают важные ценовые уровни.

Возможность усреднения прослеживается в период с 16 до 29 марта. О первой покупке 16.03.2022 сигнализируют все индикаторы: цена коснулась нижней полосы Боллинджера, RSI показывает перепроданность актива, скользящая MACD пересекает сигнальную линию сверху вниз.

Первый ордер в лонг открыт по цене $157 Второй ордер в лонг выставляется по $160, когда цена пересекла среднюю полосу Боллинджера. Третий ордер по $165 выставляется на следующий день. В результате средняя цена акции – $161.

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

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

Рассмотрим усреднение позиции в шорт на примере акций HeadHunter. На рисунке отображена загрузка позиции частями. Открываем первую позицию. Движение сразу дает прибыль. Далее следует коррекция, после которой добавляемся в позицию. Сильный импульс пробивает поддержку. Прибыль растет. Далее следует вкат и, когда цена не смогла преодолеть уровень, усредняемся еще раз. Если бы цена пробила уровень 1377. Мы бы закрыли две сделки и оставались в прибыли.

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

Еще один пример скальперских сделок на акциях крупнейшего авиаперевозчика American Airlines (AAL). На 15-минутном таймфрейме актива используются значимые уровни в комплексе с RSI и стохастическим осциллятором. Сделки на покупку по ценам $14.06, $13.76, $12 и $13.03 усредняют цену покупки до $13.2 .

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

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

Пример. Была выделена сумма $1500 на покупку акций компании AMAZON. Сумма первой сделки стала $179. Далее каждый месяц этот актив докупался, если его цена была меньше цены первой сделки. За 7 месяцев трейдер купил 7 акций по ценам: $179, $169, $160, $157, $152, $113 и $10З. Средняя цена составила $148. В марте, когда цена была выше $152 актив не докупался. На графике кружками отмечены даты покупок на общую сумму $1033.

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

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

Усреднения на криптовалютном рынке: стратегии

Высокая волатильность криптовалют осложняет определение точки входа в рынок. Инвесторы и среднесрочные трейдеры для усреднения позиций на криптовалютном рынке используют стратегию dollar-cost averaging (DCA) – постепенное усреднение долларовой стоимости. Суть стратегии – систематическая покупка криптовалюты на одинаковую сумму через одинаковые промежутки времени независимо от цены актива. Трейдер составляет оптимальный график совершения сделок. Результат – цена “сглаживается” и становится средней.

Пример. Решено вложить $1300 в BTC. Инструментами технического анализа определен предполагаемый диапазон колебания цены криптовалюты от $20 263 до $24 637. Согласно стратегии DCA, ежедневно покупаем BTC на сумму $100. Точка входа в рынок растягивается на 13 дней. Покупки кружками отображены на графике BTCUSDT.

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

Можно пользоваться калькулятором усреднения долларовой стоимости для BTC на сервисе dcabtc.com. Указываем сумму, интервал покупок и получаем результат стратегии на интересующий период времени.

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

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

На 15-минутном графике токена FTT видно, что цена консолидируется в коридоре и пробивает линию поддержки. На второй свече трейдер открывает позицию в шорт по $23.9, выставив стоп-лосс за верхнюю границу коридора. Через 30 минут ценовой разворот и ретест нижней границы коридора. В этот момент добавляется шортовая позиция по $24.0035 для усреднения.

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

Рассмотрим усреднение позиции в терминале CScalp. В настройках инструмента указано три варианта усреднения: от первой сделки, по версии сервера и от последней сделки.

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

В настройках стакана три варианта закрытия позиции: F – закрытие сделок в порядке открытия, L – последняя открытая сделка закрывается первой, D – порядок действий и расчет средней цены определяет биржа или брокер. При этом F и L предназначены для визуального отображения. Вне зависимости от выбранного варианта, сделки закрываются по D. Подробнее об этом здесь.

Параметры F, D и L действуют, когда трейдер входит в позицию частями по разным ценам. Цена входа отображаться в стакане как средняя.

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

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

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

Пример. Трейдер открывает позицию в лонг 3-мя лотами по цене $2.35. После ценового снижения он усредняется, открывая вторую сделку 3-мя лотами по $2.3465. Цена продолжает снижаться и трейдер добавляет еще 3 лота в лонг по $2.34150. Расчетный средний уровень на отметке $2.3460. Хотя на скриншоте отображен параметр L, по факту расчет средней цены определяет биржа или брокер (параметр D). Порядок действий тоже определяется параметром D.

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

Усреднение позиции на растущем и падающем рынке: разница

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

Пример. На падающем рынке трейдер покупает 30 акций Apple частями по 10 штук по ценам $154, $143 и $136.
(1540 + 1430 + 1360)/30 = 144.3 – средняя стоимость каждой акции. Для покупки 30 акций потребуется $4329

На растущем рынке открытие дополнительных позиций увеличит затраты трейдера. Показатель доходности снизится.

Пример. Покупка частями 30 акций Apple на растущем рынке по ценам $136, $143 и $154. Потребуется $4329. Покупка всех активов по стартовой цене $136 снизила бы затраты до $4080.

Когда можно усредняться

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

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

Усреднение работает на скальпинге криптовалют с высокой волатильностью SHIB, DOGE, MATIC, GMT, BAL, UNFI и т. д. Волатильные торговые инструменты можно подобрать с помощью скринера криптовалют TradersDiaries.com, сервиса TradingView.

Стратегия усреднения актуальна в периоды высокой волатильности и паники на рынках. В это время качественные активы стоят дешевле.

Когда нельзя усредняться

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

Преимущества усреднения

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

Калькулятор усреднения позиции

Калькулятор усреднения позиции – сервис для расчета средней цены при открытии дополнительных ордеров. Чтобы рассчитать среднюю цену на один торговый инструмент, нужно указать цены покупки и количество инструментов. Результат отображается под калькулятором. Подборку калькулятоторов для усреднения позиции и инструкции по работе с ними вы найдете здесь (статья в разработке…).

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

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

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

Заключение

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

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

Больше интересного в блоге CScalp!

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

Пример бота для биржи Голоса

Прочитал, что появился интерес к ботописательству для биржи Голоса. Вот хочу поделиться своими наработками. Это не «кнопка бабло» или «грааль». Это просто пример бота, который помогает выставлять ордера на бирже согласно простого алгоритма. В двух словах — Вы купили на бинансе, или где-то еще, возможно даже в этом же стакане некоторую сумму usdt, допустим по цене 73 рубля за штуку, и хотим их продать, чтобы заработать какую-нибудь копеечку. Для «эталона цены» выбираем биржу бинанс, как наиболее ликвидную на сегодняшний день. И выставляем ордера лесенкой с начальным профитом в 1 процент и шагом в 0.5 процента в количестве 10 штук. Все параметры настраиваются, комментарии в коде есть.

Для бота используются прямые вызовы API ноды Голоса по https протоколу, а из «официальной» библиотеки используется только функция подписания транзакций.

Бота можно использовать в чистом виде — ордера он выставляет 🙂 но нужно в Силу Голоса добавить N-е количество голосов, иначе боту просто «перекроют кислород» (не дадут выставлять ордера). Либо взять за основу и написать свой алгоритм, а из бота только использовать код для выставления-удаления ордеров и тп.

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

Ну и непосредственно сам код.

const < Spot >= require('@binance/connector'); 
const golos = require('golos-classic-js');
const request = require('sync-request');
// если у вас нет api ключей, то просто оставить их пустыми, 
// для запроса цены регистрация не нужна 
const apiKey = ''
const apiSecret = ''
const client = new Spot(apiKey, apiSecret)
// минимальная цена для продажи "в безубыток" 
const min_price = 73.00;
const account = 'acc-b0t'; // аккаунт для бота 
const wif = '5. '; // активный приватный ключ
// нода голоса для работы 
const host = 'api-golos.blckchnd.com';
// количество выставляемых ордеров
const orders_count = 10;
// начальный "профит"
const first_step = 1.01;
// шаг приращения цены
const order_step = 0.005;
// цена "с бинанса"
var price = 0;
async function main() // получаем с бинанса цену USDT в рублях 
let resp = await client.avgPrice(symbol='USDTRUB');
price = resp.data.price;
console.log(price);
if (price >= min_price) // проверяем открытые ордера 
let result = getOpenOrders(host, account, ["YMUSDT", "YMRUB"]);
console.log(result);
if (result != '') console.log('есть открытые ордера');
let i = 0;
while (result[i] != undefined) let orderid = result[i].orderid;
console.log(orderid);
let trx_id = doLimitOrderCancel(host, wif, account, orderid);
console.log(trx_id);
i++;
>
doCreateOrders();
>
else console.log('нет открытых ордеров');
doCreateOrders();
>
return;
>
function doCreateOrders() // получаем количество USDT на счету 
let acc_result = getAccountBalances(host,account);
let amount = acc_result[0].YMUSDT.balance;
let amountArray = amount.split(" ");
let summa = amountArray[0];
let token = amountArray[1];
let i = 0; 
while (i < orders_count) let orderid = Math.floor(Date.now() / 1000);
let expiration = new Date();
expiration.setDate(362);
expiration = expiration.toISOString().substr(0, 19);
let order_size = summa / orders_count;
let usdt = order_size.toFixed(6) + " YMUSDT"
let ymrub = parseFloat(order_size * price * (first_step+i*order_step)).toFixed(2) + " YMRUB";
let trx_id = doLimitOrderCreate(host, wif, account, orderid, usdt, ymrub, false, expiration);
console.log(trx_id);

i++;
>
function getAccountBalances(host, account) 
let res = request('POST', 'https://' + host + '/', headers: , 
body: ''
>);

let chunk = res.body;
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
console.log(json);
let result = json.result;

return (result);
function getOpenOrders(host, owner, pair) 
let res = request('POST', 'https://' + host + '/', headers: , 
body: '<"id":1,"method":"call","jsonrpc":"2.0","params":["market_history","get_open_orders",["' + owner + '",' + JSON.stringify(pair) +']]>'
>);

let chunk = res.body;
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
//console.log(json);
let result = json.result;

return (result);
function doLimitOrderCancel(host, wif, account, orderid) let head_block_number = get_head_block_num(host); 
let ref_block_num = (head_block_number - 3) & 0xffff;
let var1 = head_block_number - 2;
block_header = get_block_header(host, var1);
let ref_block_prefix = new Buffer(block_header.previous, 'hex').readUInt32LE(4)
const now = new Date().getTime() + 120 * 1000; 
const expiration = new Date(now).toISOString().split('.')[0]

let ops = [];

ops.push(["limit_order_cancel",
'owner' : account,
'orderid' : orderid
>]);

const unsigned_trx = 'expiration': expiration,
'extensions': [],
'operations': ops,
'ref_block_num': ref_block_num,
'ref_block_prefix': ref_block_prefix
>

let signed_trx = null;
try signed_trx = golos.auth.signTransaction(unsigned_trx,)
let res = request('POST', 'https://' + host + '/', headers: ,
body: '<"id":1,"method":"call","jsonrpc":"2.0","params":["network_broadcast_api","broadcast_transaction_synchronous",[<"ref_block_num":' + ref_block_num +',"ref_block_prefix":'+ref_block_prefix+',"expiration":"'+expiration+'","operations":[["limit_order_cancel",<"owner":"'+account+'","orderid":'+orderid+'>]],"extensions":[],"signatures":["'+signed_trx.signatures+'"]> ]]>'
>);

let chunk = res.body;
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
console.log(json);
let transaction = json.result;

return (transaction.id);
>
catch (error) console.warn("Не удалось подписать или отправить транзакцию: " + error.message);

return 0;
>
function doLimitOrderCreate(host, wif, account, orderid, amount_to_sell, min_to_receive, fill_or_kill, exp) 
let head_block_number = get_head_block_num(host); 
let ref_block_num = (head_block_number - 3) & 0xffff;
let var1 = head_block_number - 2;
block_header = get_block_header(host, var1);
let ref_block_prefix = new Buffer(block_header.previous, 'hex').readUInt32LE(4)

const now = new Date().getTime() + 120 * 1000;
const expiration = new Date(now).toISOString().split('.')[0]

let ops = [];

ops.push(["limit_order_create",
'owner' : account,
'orderid' : orderid,
'amount_to_sell' : amount_to_sell,
'min_to_receive' : min_to_receive,
'fill_or_kill' : fill_or_kill,
'expiration' : exp
>]);

const unsigned_trx = 'expiration': expiration,
'extensions': [],
'operations': ops,
'ref_block_num': ref_block_num,
'ref_block_prefix': ref_block_prefix
>

let signed_trx = null;
try signed_trx = golos.auth.signTransaction(unsigned_trx,)
let res = request('POST', 'https://' + host + '/', headers: ,
body: ' <"id":1,"method":"call","jsonrpc":"2.0","params":["network_broadcast_api","broadcast_transaction_synchronous",[<"ref_block_num":' + ref_block_num +',"ref_block_prefix":'+ref_block_prefix+',"expiration":"'+expiration+'","operations":[["limit_order_create",<"owner":"'+account+'","orderid":'+orderid+',"amount_to_sell":"'+amount_to_sell+'","min_to_receive":"'+min_to_receive+'","fill_or_kill":'+fill_or_kill+
',"expiration":"'+exp+'">]],"extensions":[],"signatures":["'+signed_trx.signatures+'"]> ]]>' 
>);
 let chunk = res.body; 
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
console.log(json);
let transaction = json.result;

return (transaction.id);
>
catch (error) console.warn("Не удалось подписать или отправить транзакцию: " + error.message);

return 0;
>
function get_head_block_num (host) 
let res = request('POST', 'https://' + host + '/', headers: , 
body: ''
>);

let chunk = res.body;
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
let properties = json.result;

return (properties.head_block_number);
function get_block_header(host, param) 
let res = request('POST', 'https://' + host + '/', headers: , 
body: '<"id":1,"method":"call","jsonrpc":"2.0","params":["database_api","get_block_header",["' + param + '"] ]>'
>);

let chunk = res.body;
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
let block_header = json.result;

return (block_header);
function getAccount(host, account) let res = request('POST', 'https://' + host + '/', headers: , 
body: ''
>);
let chunk = res.body; 
let textChunk = chunk.toString('utf8');
let json = JSON.parse(textChunk);
let properties = json.result;

return (properties);
main();

Трейлинг Стоп лосс при достижении Тейк профит ордеров для биржи Binance в терминале Trading Panel

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

Они расположены в том же блоке где и форма создания ордера. Просто нужно переключиться на нужную закладку и отредактировать там настройки.

Итак, давайте разберемся детально с настройками модуля SLX, который отвечает за перестановку Стоп лосса при исполнении лесенки Тейк профитов.

Режим перестановки

Рассмотрим работу первого варианта, когда Стоп лосс переставляется при каждом исполнении Тейк профита.

У нас открыта Лонг позиция, в которой установлено 4 Тейк профита и Стоп лосс.

  1. Тренд дошел до первого Тейк профита и исполнил его.

2. Система отменяет текущий Стоп лосс от модуля SL и создает новый Стоп лосс в цене безубытка с типом ордера, указанный в SLX модуле.

Хочу отметить, что цена позиции для Лонга будет сдвигаться вниз, так как это чистый безубыток для текущего количества монет с учетом реализованной прибыли. То есть при добавлении и уменьшении позиции цена всегда будет смещаться и вы наглядно будете видеть, где находится точка безубыточности.

3. Итак цена идет выше и исполняет второй Тейк профит.
Система отменяет текущий Стоп лосс и создает новый в цене, где был исполнен первый Тейк профит.

4. Цена идет ещё выше и исполняет третий Тейк профит. Система также отменяет текущий Стоп лосс и создает новый в цене, где был исполнен уже второй Тейк профит.

5. Если на каком то-то этапе не дошло до очередного тейк профита, то позиция закроется по стоп лоссу.
Ну и при достижении последнего Тейк профита позиция закрывается, достигнув все цели.

Даже если тренд дойдет только первого тейк профита, то ваша позиция уже будет защищена Стоп лоссом, который установлен в безубытке и вы гарантированно получаете прибыль минимум от одного Тейк профита!

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

�� Важный момент!
SLX работает независимо от модуля SL и в позиции Стоп лосс не обязательно должен находиться изначально.
То есть можно создать позицию только с Тейк профитами и при исполнении первого Тейка модуль создаст новый Стоп лосс в безубытке.

Тип ордера

В параметре Тип ордера задается какой ордер будет использован в создании Стоп лосса вне зависимости от того какой тип СЛ использовался в позиции до этого.

  • Virtual Floating или виртуальный плавающий - это лимитный ордер, работающий как поплавок, который постоянно всплывает к крайней цене в книге ордеров с заданным тайм-аутом в настройке модуля FL.
  • Virtual Market - это виртуальный ордер, который будет исполнен по маркету при достижении триггерной цены.
  • Stop Маркет - это Стоп ордер, размещенный на бирже, который будет исполняться по маркету при достижении триггерной цены.

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

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

Для LONG позиции - это крайняя цена предложения на продажу.
Для SHORT позиции - это крайняя цена предложения на покупку.

Пожалуйста, учитывайте это при установке виртуального уровня Стоп лосса.

Индивидуальные настройки позиции

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

Видно, что по умолчанию настройки применяются те, что мы изменили недавно в общих настройках.

Просто меняем параметры модуля на нужные и нажимаем кнопку создания ордера.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *