
За последние два месяца аккаунт под названием print(money) был очень популярен, заработав в сотни раз больше прибыли на бессрочных контрактах Binance. Скриншоты прибыли его аккаунта часто можно увидеть в различных группах. Кривая прибыли, практически не имеющая отката, вызывает у многих зависть, но также заставляет некоторых сомневаться в ее подлинности. Но мой опыт за пять дней с 23 по 27 октября доказал, что высокочастотные стратегии могут приносить такую необычную прибыль на высоковолатильном рынке.
Написание стратегии заняло около двух дней, и после одного дня корректировок она официально начала работать на Binance Perpetual Contract 23-го числа. Начиная с пополнения на 100 USDT, 27-го числа я заработал 8800 USDT, с доходностью более 80 раз, и за этот период почти не было отката. Общая доходность достигла 15-го места в историческом рейтинге доходности Binance и 2-го места по доходности за октябрь. Из-за проблем со статистикой Binance фактический рейтинг должен быть выше.

Не все рынки и время подходят для высокочастотных стратегий, а условия для запуска высокочастотных роботов очень строгие. Вот несколько условий.
- Подходит для высокочастотных рынков
За последние пять дней на Binance торговались только бессрочные контракты FIL. Когда FIL был впервые запущен, рынок был очень хаотичным. Разница в цене между бессрочными контрактами и спотовыми контрактами однажды достигла более 30%, что привело к серьезным разногласиям между длинными и короткими позиции в FIL. Цена открытия 16-го упала с 60. Она начала отскакивать от 26, затем упала до 19 и отскочила до 37. Дни с высоким объемом торгов заняли третье место среди всех торговых пар, уступая только старым BTC и ETH. Это золотая возможность для высокочастотной торговли. К сожалению, я не подготовил робота изначально и пропустил первые несколько дней, но, к счастью, я догнал рынок 24-го и 25-го числа, и большая часть прибыли пришлась на этот период. После 27-го числа разница в ценах постепенно уменьшалась, максимальная ставка финансирования стала недоступна, объем торгов сократился, и зарабатывать с помощью стратегии стало сложнее.
Аналогичные возможности возникали и в начальный период времени после запуска SUSHI/YFI/YFII/UNI, когда волатильность и объем торгов были очень высокими, и print(money) также использовали эти возможности. Когда эти монеты перестали приносить прибыль, снова появился FIL. Эти две волны — горячо разрекламированная концепция DEFI и долгожданная FIL. В нынешних обстоятельствах ждать следующей возможности придется долго.

- Ставка комиссии за транзакцию
Высокочастотные стратегии очень чувствительны к комиссиям за обработку. Порог возврата Binance Maker в 0,2% не высок. Хотя скидка небольшая, ее можно понимать как бесплатную комиссию за обработку. Группа высокочастотных трейдеров на старом месте Возрождена эпоха отсутствия сборов за обработку. Стратегия частоты. Конечно, когда рынок сильно колеблется, комиссия за обслуживание становится относительно неважной.
- Высокая частота
Самая известная особенность высокочастотных роботов — их чрезвычайно высокая частота. Когда рынок быстро меняется, многие из моих стратегий могут завершать открытие и закрытие позиций в течение 100 мс.
- Коэффициент выигрышности стратегии
Высокочастотные стратегии требуют точной оценки краткосрочных тенденций рынка, и чем выше процент выигрышей, тем больше объем ордера, а чем больше краткосрочный объем торговли, тем больше объем ордера. Поскольку FIL имеет большой объем торговли и частые транзакции, точность прогнозирования тренда в течение нескольких секунд очень высока. Аналогичным образом, ожесточенная игра между длинными и короткими позициями дает трейдерам возможность устанавливать и закрывать соответствующие позиции. Это отличается от ранней высокочастотной спотовой торговли. Теперь производители получают скидки, но тейкеры все еще несут высокие комиссии за транзакции, поэтому они могут только размещать заказы. Представьте, что если все настроены по-бычьи в краткосрочной перспективе, высокочастотная стратегия не может выполнить ордер maker buy из-за комиссии за прием ордера и не может получить прибыль. Если на рынке вообще нет тренда, ордер maker может быть выполнен но вероятность прибыли низкая. высокая. Таким образом, текущая высокочастотная стратегия требует как основного рыночного тренда для обеспечения высокого процента выигрышей, так и локального расхождения между длинными и короткими позициями для обеспечения большого количества транзакций.
Когда рынок идет хорошо, процент выигрышей моей стратегии превышает 80%, а соотношение прибылей и убытков больше 1. Когда на рынке нет очевидной тенденции, долгосрочный процент выигрышей также превышает 65%. , а коэффициент прибыли и убытков меньше 1.
- Мощность высокочастотных стратегий
Мощность высокочастотных стратегий, очевидно, не высока. Из-за высокого кредитного плеча бессрочных фондов, 100u также могут оперировать более чем 2000u фондов, поэтому высокочастотные стратегии могут начинаться с очень небольших фондов. Но общая чистая прибыль не будет слишком большой. Конкретная мощность зависит от объема транзакций на рынке.
- Риски стратегии
При открытии позиции есть риски, но преимущество высокой частоты в том, что количество сделок очень велико. Если вы проиграли один раз, вы можете быстро компенсировать убыток, проторговав еще 10 раз. В течение длительного периода времени, откат очень незначительный. Чем больше позиция, тем больше риск, поэтому позиция не может увеличиваться бесконечно. Должен быть определенный механизм отрицательной обратной связи. Когда позиций больше, больше позиций должно быть закрыто и меньше позиций должно быть открыто, чтобы гарантировать, что время удержания короткий. Если вы держите позицию против тренда, вы понесете огромные убытки. Поэтому стратегия разработана для оценки направления, гарантируя, что вы откроете позицию с одной стороны тренда, когда происходит резкий подъем или падение, что еще больше снижает риск за счет краткосрочных Неясные тенденции приведут к частым небольшим потерям денег.
Принцип стратегии:
Получите последние завершенные сделки, глубину и текущую позицию, определите тренд на основе сделок и определите размер позиции на основе объема торговли. Если тренд растет, разместите отложенный ордер на открытие длинной позиции и закройте длинная позиция в то же время. Если вы держите короткую позицию в это время, закройте ее сначала. То же самое относится и к оценке нисходящей тенденции.
Идеи высокочастотных стратегий очень последовательны. Моя стратегия на этот раз опирается на идеи моей ранее публичной высокочастотной стратегии 2014 года и стратегии OKCoin’s leek harvester. Исходный код этих двух стратегий можно найти в FMZ. Если вы досконально разберетесь в этих двух стратегиях, то высокочастотная торговля не будет иметь для вас никаких секретов.
Структура стратегии:
Стратегия использует асинхронную архитектуру (см. расширенное руководство сообщества FMZ).Здесь нет исходного кода, только простое описание используемых функций. Это не полный исполняемый код, и он не затрагивает основную логику.. Все API используют протокол REST и не используют веб-сокет. Сервер находится в Токио, что позволяет добиться меньшей задержки.
//设置交易对与杠杆
var pair = Symbol+'USDT'
exchange.SetCurrency(Symbol+'_USDT')
exchange.SetContractType("swap")
exchange.IO("api", "POST", "/fapi/v1/leverage", "symbol="+pair+"&leverage="+5+"×tamp="+Date.now())
//基本的交易精度限制
var price_precision = null
var tick_size = null
var amount_precision = null
var min_qty = null
var exchange_info = JSON.parse(HttpQuery('https://fapi.binance.com/fapi/v1/exchangeInfo'))
for (var i=0; i<exchange_info.symbols.length; i++){
if(exchange_info.symbols[i].baseAsset == Symbol){
tick_size = parseFloat(exchange_info.symbols[i].filters[0].tickSize)
price_precision = exchange_info.symbols[i].filters[0].tickSize.length > 2 ? exchange_info.symbols[i].filters[0].tickSize.length-2 : 0
amount_precision = exchange_info.symbols[i].filters[1].stepSize.length > 2 ? exchange_info.symbols[i].filters[1].stepSize.length-2 : 0
min_qty = parseFloat(exchange_info.symbols[i].filters[1].minQty)
}
}
function updatePosition(){//获取持仓,Symbol为交易对,加入交易对参数而不是返回全币种可以减少一次API占用
position = exchange.IO("api", "GET","/fapi/v2/positionRisk","timestamp="+Date.now()+"&symbol="+Symbol+"USDT")
}
function updateTrades(){//获取最近成交
trades = exchange.IO("api", "GET","/fapi/v1/trades","limit=200×tamp="+Date.now()+"&symbol="+Symbol+"USDT")
}
function updateDepth(){//获取深度
depth = exchange.IO("IO", "api", "GET","/fapi/v1/depth","timestamp="+Date.now()+"&symbol="+Symbol+"USDT")
}
function onTick(){
updateDepth()
updateTrades()
updatePosition()
makeOrder() //计算下单价格、数量并下单
updateStatus() //更新状态信息
}
//主循环,休眠时间100ms,策略的循环延时通常在在30ms以内。
function main() {
while(true){
if(Date.now() - update_loop_time > 100){
onTick()
update_loop_time = Date.now()
}
Sleep(1)
}
}
Эта стратегия слишком требовательна к рынку, большую часть времени не приносит прибыли и имеет низкую производительность. Если все активно пересылают и распространяют эту статью на таких платформах, как Weibo, группы WeChat и Moments, и число читателей достигнет более 100 000, я рассмотрю возможность сдачи ее в аренду, чтобы позволить всем ощутить ее реальную работу, и даже раскрою исходный код стратегии. в этой статье в будущем. Добавьте домашнюю страницу FMZ WeChat и ответьте Binance, чтобы присоединиться к группе FMZ Binance WeChat для общения.