Теги и формулы для расчёта курсов валют
Эта инструкция содержит полное описание всех доступных тегов, с помощью которых вы можете формировать простые и сложные формулы для расчета курсов. Каждый тег позволяет выполнять специфические задачи: создавать условия, вычислять средние значения, выбирать оптимальный курс, учитывать комиссии и многое другое.
Список всех доступных тегов:
[set]
Создание переменных для повторного использования.
[system-1]
Простое условие (тернарный оператор).
[if], [elseif], [else]
Сложные многоуровневые условия.
[avg]
Средний курс из нескольких источников.
[min], [max]
Минимальное или максимальное значение из источников.
[diff_percent]
Процентная разница между двумя курсами.
[round]
Округление значений до указанной точности.
[spread]
Расчёт спреда между ценами покупки и продажи.
[filter]
Применение операций (ceil, floor, abs) к значениям.
[threshold]
Выбор значений по заданным порогам курса.
[fees]
Расчёт комиссии или процентной части от курса.
[limit]
Ограничение курса заданными пределами.
[confidence]
Средневзвешенный курс с учётом доверия к источникам.
[ratio]
Соотношение одного курса к другому.
[fallback]
Резервный курс при недоступности основного.
[combine]
Комбинация курсов разных источников с весами.
[currency_convert]
Автоматическая конвертация валютных пар
[inverse]
Обратный курс
[markup]
Добавление наценки (маржи)
[discount]
Автоматическая скидка (понижение курса)
[latest_rate]
Самый свежий курс
[priority_rate]
Приоритетный выбор курса
[best_rate]
Выбор лучшего (самого высокого) курса
[worst_rate]
Выбор худшего (самого низкого) курса
Использование формул с коэффициентами
Для удобства и упрощения расчётов вы можете использовать все перечисленные теги формул совместно с модулем «Коэффициенты».
Создавайте готовые шаблоны формул и коэффициенты один раз, а затем легко применяйте их в расчётах по названию (алиасу). Это избавит вас от необходимости каждый раз вводить сложные формулы вручную и значительно упростит управление курсами.
Пример использования:
Допустим, вы создали коэффициент (шаблон формулы) под названием margin_test
:
Теперь вы можете просто указать его в расчёте так: [index_margin-test]
Подробное описание тегов условий и переменных
Тег [set] — Переменные
Тег позволяет создать переменную и сохранить в неё любое значение или результат расчета формулы. После создания переменную можно использовать многократно в последующих формулах.
Синтаксис:
Простой пример:
Курс BTC/USDT + 0.005
Пример с расчетом внутри:
[avg_rate] - Средний курс трех источников
Сложный пример использования:
Сначала создаётся переменная threshold_rate на основе порогов. Далее курс увеличивается или уменьшается, в зависимости от условия.
Тег [system-1] — Простое условие (тернарный оператор)
Тег [system-1] позволяет быстро проверить условие и вернуть одно из двух значений.
Синтаксис:
Простой пример:
Если курс выше 60000, возвращает 60000, иначе текущий курс.
Расширенный пример с двумя курсами:
Если разница между Binance и Bybit меньше 0.5%, используем курс Bybit, иначе Binance.
Сложный пример с несколькими источниками:
Проверка разницы между тремя источниками по очереди и выбор курса с минимальной разницей (до 0.5%).
Теги [if], [elseif], [else] — Сложные условия
Эти теги используются, чтобы создавать многоуровневые логические условия.
Подходит для детального управления логикой расчета курсов.
Синтаксис:
Простой пример:
Если курс выше 60000, возвращает 60000, иначе текущий курс.
Средней сложности пример:
Многоуровневое условие, три варианта итогового значения.
Сложный пример с вложенными формулами:
Условие с проверкой разницы курсов, соотношения валют и использованием резервного источника.
Сложный пример с переменной и несколькими условиями:
Сначала устанавливается маржа. Затем:
Если курс выше 65000, применяется комиссия (0.005%).
Если от 60000 до 65000 — курс снижается на маржу (0.5%).
Если ниже 60000 — курс увеличивается на маржу (0.5%).
Тег [avg] — Средний курс из нескольких источников
Тег [avg] вычисляет среднее значение курсов из заданных источников.
Полезен при необходимости получить сбалансированный курс из нескольких бирж.
Синтаксис:
Простой пример:
Среднее значение между курсами Binance и Bybit
Расширенный пример с несколькими источниками:
Средний курс четырёх источников
Сложный пример использования в условии:
Если разница между источниками небольшая, возвращает средний курс, иначе курс Binance.
Теги [min] и [max] — Минимальное или максимальное значение
Эти теги позволяют выбрать самое низкое (min) или самое высокое (max) значение курса из нескольких источников.
Синтаксис:
Простой пример для [min]:
Минимальный курс из трех источников
Простой пример для [max]:
Максимальный курс из трех источников
Средний по сложности пример:
Минимальный курс + 1%
Сложный пример с условием:
Если текущий курс выше максимального из источников, берёт максимальный, иначе текущий курс
Тег [diff_percent] — Процентная разница между курсами
Позволяет вычислить процентную разницу между двумя указанными курсами.
Полезен для проверки близости или расхождения курсов.
Синтаксис:
Простой пример:
Процентная разница между Binance и Bybit
Средний по сложности пример с условием:
Если разница меньше или равна 1%, берём средний курс, иначе Binance
Сложный пример с несколькими источниками и условиями:
В зависимости от процентной разницы, используется комбинация источников или основной источник
Тег [round] — Округление значений
Тег [round] округляет значение до заданного количества знаков после запятой.
Синтаксис:
precision — количество знаков после запятой.
value — значение, которое нужно округлить.
Простой пример:
Округляет текущий курс до двух знаков после запятой
Средний пример с дополнительным расчётом:
Округляет средний курс, увеличенный на 1%, до трёх знаков
Сложный пример с условием и округлением:
Если курс выше 70000, округляет значение с уменьшением на 0.5%, иначе с увеличением на 0.5%
Тег [spread] — Расчёт спреда между покупкой и продажей
Тег [spread] вычисляет процентную разницу (спред) между ценой продажи (ask) и ценой покупки (bid).
Используется для быстрого анализа разницы между ценами покупки и продажи валюты.
Синтаксис:
Простой пример:
Спред на Binance
Средний пример с переменными:
[market_spread] - Полученный спред
Сложный пример с условием:
Если спред меньше или равен 0.5%, используется среднее значение, иначе минимальный bid.
Тег [filter] — Применение операций (ceil, floor, abs)
Тег [filter] позволяет применять стандартные операции округления вверх (ceil), вниз (floor) и взятие модуля (abs).
Синтаксис:
Операции:
ceil — округление вверх.
floor — округление вниз.
abs — модуль числа (убирает минус).
Простой пример с ceil:
Вернёт 50
Простой пример с floor:
Вернёт 49
Простой пример с abs:
Вернёт 120
Средний пример с формулой внутри:
Курс увеличивается на 2% и округляется вверх.
Сложный пример с условием:
Если курс выше 70000, снижается на 0.5% и округляется вниз, иначе увеличивается на 0.5% и округляется вверх.
Тег [threshold] — Выбор значений по заданным порогам курса
Позволяет задать значения, которые будут возвращаться при достижении указанных порогов курса.
Синтаксис:
Простой пример:
До 50000 вернёт 0.01, до 60000 — 0.015, иначе последнее значение (0.015).
Средний пример с переменной:
Курс с маржой по заданному порогу.
Сложный пример с несколькими условиями:
Курс увеличивается на разное значение в зависимости от текущего уровня.
Тег [fees] — Расчёт комиссии или процентной части от курса
Используется для расчёта комиссий или процентных частей от курса.
Синтаксис:
Простой пример:
Считает 0.5% от текущего курса.
Средний пример с переменной:
Комиссия от курса, заданная переменной.
Сложный пример с условиями:
Комиссия зависит от уровня текущего курса.
Тег [limit] — Ограничение курса заданными пределами
Ограничивает курс минимальным и максимальным значением.
Синтаксис:
Простой пример:
Если курс ниже 45000, вернёт 45000, выше 60000 — вернёт 60000, иначе текущий курс.
Средний пример с расчётом внутри:
Курс увеличивается на 2% и ограничивается пределами.
Сложный пример с несколькими условиями:
В зависимости от уровня курс изменяется и сразу же ограничивается заданным диапазоном.
Тег [confidence] — Средневзвешенный курс с учётом доверия к источникам
Тег [confidence] позволяет вычислить курс, учитывая коэффициенты доверия к каждому источнику. Чем выше доверие (ближе к 1), тем сильнее влияние источника на итоговый курс.
Синтаксис:
weight — коэффициент доверия (от 0 до 1).
Простой пример:
Курс Binance имеет большее влияние на результат.
Средний пример с несколькими источниками:
Средневзвешенный курс с учётом разных уровней доверия.
Сложный пример с условием:
При небольшой разнице доверие выше, при большой — ниже.
Тег [ratio] — Соотношение одного курса к другому
Позволяет вычислить отношение одного курса к другому. Используется для анализа корреляции между двумя валютами или активами.
Синтаксис:
Простой пример:
Показывает, во сколько раз курс BTC выше ETH.
Средний пример с округлением:
Округляет соотношение до 2 знаков после запятой.
Сложный пример с условием:
Если BTC дороже ETH больше чем в 15 раз, курс снижается на 1%, иначе увеличивается на 1%.
Тег [fallback] — Резервный курс при недоступности основного
Позволяет автоматически использовать резервный источник курса, если основной источник недоступен (равен 0 или пуст).
Синтаксис:
Простой пример:
Если курс Binance недоступен, берёт курс Bybit.
Средний пример с несколькими резервами:
Если Binance недоступен, берёт Bybit, если и он недоступен — Rapira.
Сложный пример с условиями:
Если основной и резервный источники недоступны, используется третий источник.
Тег [combine] — Комбинация курсов разных источников с весами
Позволяет объединить несколько курсов в один с указанными коэффициентами влияния (весами). Общая сумма весов обычно равна 1.
Синтаксис:
Вес (weight) — доля влияния курса источника.
Простой пример:
Курс Binance влияет на 70%, Bybit на 30%.
Средний пример с несколькими источниками:
Комбинация трех источников с разными весами.
Сложный пример с условиями и весами:
Вес источников зависит от процента расхождения между ними.
Тег [currency_convert] — Автоматическая конвертация валютных пар
Тег [currency_convert] предназначен для быстрой и удобной автоматической конвертации курса из одной валютной пары в другую. Он позволяет избавиться от сложных многоступенчатых расчётов, делая формулу простой и читаемой.
Тег автоматически перемножает указанные валютные пары, вычисляя итоговый курс.
Синтаксис:
Простые примеры:
Конвертация BTC в рубли через USD:
Конвертация ETH в рубли через USD:
Средней сложности пример:
Расчёт обратного курса (RUB → BTC):
Сложный пример с дополнительными коэффициентами и маржой:
Конвертация BTC-USDT в RUB с учётом комиссии 1%:
Комбинированный расчёт курса с несколькими источниками и конвертацией.
Тег [inverse] — Обратный курс
Тег автоматически вычисляет обратное значение курса (1 разделить на текущий курс).
Синтаксис:
Простой пример:
Аналогично: 1 / [usd-rub]
Сложный пример с округлением:
Обратный курс BTC-USDT с округлением до 4 знаков
Тег [markup] — Добавление наценки (маржи)
Тег автоматически увеличивает курс на заданную процентную наценку.
Синтаксис:
Простой пример (наценка 2%):
Курс BTC-USDT с увеличением на 2%
Сложный пример с конвертацией:
Курс BTC-RUB с конвертацией и наценкой 1.5%
Тег [discount] — Автоматическая скидка (понижение курса)
Тег автоматически снижает курс на заданный процент скидки.
Синтаксис:
Простой пример (скидка 0.5%):
Курс BTC-USDT с уменьшением на 0.5%
Сложный пример с дополнительными условиями:
Скидка 1% если курс выше 60000, иначе без скидки
Тег [latest_rate] — Самый свежий курс
Тег выбирает и возвращает первый доступный курс из нескольких источников, который не равен нулю и считается наиболее актуальным.
Синтаксис:
Простой пример (два источника):
Вернёт курс из Binance, если он доступен, иначе из Bybit
Сложный пример с дополнительными расчётами:
Берёт последний доступный курс из 3 источников и добавляет наценку 0.5%
Тег [priority_rate] — Приоритетный выбор курса
Тег позволяет получить курс из списка источников по приоритету: если первый источник недоступен (равен 0), автоматически берётся следующий и так далее.
Синтаксис:
Простой пример:
Если Binance недоступен, берёт курс с Bybit.
Расширенный пример с несколькими источниками:
Последовательный выбор курса: Binance → Bybit → Rapira.
Тег [best_rate] — Выбор лучшего (самого высокого) курса
Тег автоматически возвращает наивысший (выгодный) курс из списка доступных источников.
Синтаксис:
Простой пример:
Вернёт максимальный курс BTC-USDT среди Binance и Bybit.
Расширенный пример с комиссией:
Добавит маржу 1% к лучшему курсу из трёх источников.
Тег [worst_rate] — Выбор худшего (самого низкого) курса
Тег автоматически возвращает наименьший (менее выгодный) курс из списка доступных источников.
Синтаксис:
Простой пример:
Вернёт минимальный курс BTC-USDT среди Binance и Bybit.
Расширенный пример с скидкой:
Применит скидку 0.5% к наименьшему курсу из указанных источников.
Last updated
Was this helpful?