Nos últimos dois meses, uma conta de impressão (dinheiro) tornou-se muito popular, ganhando centenas de vezes de lucros no contrato perpétuo da Binance. As capturas de tela de seus retornos da conta podem ser vistas em vários grupos. A curva de lucro quase sem retirada faz com que muitas pessoas fiquem com ciúmes, e também faz com que algumas pessoas duvidem da autenticidade. No entanto, minha experiência de 5 dias de 23 de outubro a 27 de outubro verificou que estratégias de alta frequência podem ganhar retornos tão anormais em mercados de alta volatilidade.
A estratégia foi concluída em cerca de dois dias. Após um ajuste de um dia, em 23 de outubro, começou a funcionar no contrato perpétuo da Binance oficialmente. Começando a partir de 100USDT de top-up, eu ganhei 8800USDT até 27 de outubro, o rendimento foi mais de 80 vezes, e quase não houve retirada durante o período. A taxa total de retorno atingiu o 15o lugar na lista de ranking de retornos históricos da Binance e o 2o em retornos em outubro. Devido a problemas nas estatísticas da Binance, o ranking real deve ser mais otimista.
Nem todos os mercados e tempos são adequados para estratégias de alta frequência, e as condições para a execução de robôs de alta frequência são muito duras.
Nos últimos cinco dias, os contratos perpétuos de FIL foram negociados apenas no Binance. O mercado de FIL era muito caótico quando foi lançado. A diferença entre o preço perpétuo e o preço spot já atingiu mais de 30%, o que leva a sérias diferenças entre a posição longa e curta no FIL. O preço de abertura em 16 de outubro caiu de 60 para 26 e se recuperou novamente de 19 para 37. Nos dias com grande volume de negociação, ficou em terceiro lugar entre todos os pares de negociação, atrás apenas do BTC e do ETH, que é uma oportunidade de ouro para negociação de alta frequência. Infelizmente, eu não consegui o robô pronto a tempo, então perdi os primeiros dias, mas consegui alcançar o mercado em 24-25 de outubro. A maioria dos lucros veio desse período. Após o 27 de outubro, a diferença de preço diminuiu gradualmente, a quantidade de capital da grade desapareceu, a taxa de negociação aumentou, a estratégia também se tornou mais difícil de ganhar dinheiro.
O SUSHI/YFI/YFII/UNI
As estratégias de alta frequência são muito sensíveis à comissão. O limiar para o criador do Binance retornar 2/100000 não é muito grande. Embora as taxas de retorno sejam pequenas, pode ser entendida como livre de comissão. Uma série de estratégias de alta frequência na era antiga de nenhuma comissão para spot foram revividas.
Quando o mercado muda rapidamente, muitas das minhas estratégias podem terminar de abrir ou fechar posições dentro de 100ms.
A estratégia de alta frequência precisa fazer um julgamento preciso sobre a tendência de curto prazo do mercado, e quanto maior a taxa de ganho, maior será o valor da ordem, e quanto maior o valor da negociação a curto prazo, maior será o valor da ordem. Devido ao grande volume e às transações frequentes do FIL, a previsão da tendência dentro de alguns segundos é muito precisa. Da mesma forma, o jogo entre ir longo e ir curto é feroz, dando aos fabricantes a oportunidade de estabelecer posições correspondentes e fechar posições. Isso é diferente da alta frequência no início dos anos. Agora, os fabricantes retornaram comissão, mas os tomadores ainda têm uma alta comissão, então eles só podem fazer ordens. Imagine que, se todos estiverem otimistas por um curto período de tempo, o fabricante não pode obter lucro por causa da comissão para a alta frequência. Se não houver uma estratégia de alta frequência no mercado, o fabricante pode garantir uma grande quantidade de diferenças, mas não a probabilidade da tendência atual. Portanto, a estratégia de alta frequência e a alta
Quando o mercado corre bem, a taxa de ganho da minha estratégia é superior a 80%, e a taxa de perda de lucro é superior a 1. Quando não há tendência óbvia no mercado, a taxa de ganho a longo prazo também é superior a 65%, e a taxa de perda de lucro é inferior a 1.
A capacidade da estratégia de alta frequência não é obviamente muito grande. Por causa da alavancagem alta perpétua, 100u pode operar mais de 2000u de fundos, a estratégia de alta frequência pode começar com fundos muito pequenos. Mas o lucro líquido global não será muito grande. A capacidade específica depende do volume de negociação no mercado.
Há riscos em posições de abertura, mas a vantagem da negociação de alta frequência é que o número de transações é grande. Se você perdeu uma vez, você pode cobri-lo por mais 10 transações rapidamente, e a retirada é muito pequena quando o período é estendido. Quanto maior a posição, maior o risco será. Portanto, não é sugerido escalar na posição indefinidamente. Deve haver um certo mecanismo de feedback negativo. Quando há mais posições, é necessário escalar na posição de fechamento e reduzir a posição de abertura, de modo a garantir que o tempo para a detenção de posições seja curto. Se houver uma posição, haverá uma grande perda se a tendência for apenas invertida. Portanto, a estratégia projetou um julgamento sobre a direção para garantir que a posição seja aberta no lado da tendência quando a tendência estiver em aumento ou em queda, reduzindo o risco, e não há perdas freqüentes quando a tendência não for clara a curto prazo.
Princípio estratégico:
Obtenha os negócios negociados recentemente, profundidade e posição atual, julgue a tendência de acordo com os negócios e determine o valor da posição de abertura de acordo com o volume de negociação. Se a tendência for ascendente, abra uma ordem de posição longa e feche a posição longa ao mesmo tempo. Se você mantiver posições curtas neste momento, feche todas as posições primeiro. É o mesmo para julgar a tendência de queda.
A ideia de estratégia de alta frequência é muito consistente. Minha estratégia baseia-se na idéia de estratégia de alta frequência de 2014 e estratégia OKCoin LeeksReaper que eu divulguei anteriormente. O código fonte de ambas as estratégias pode ser encontrado no FMZ. Se você entender ambas as estratégias completamente, a negociação de alta frequência será fácil para você.
Estrutura da estratégia:
A estratégia adota arquitetura assíncrona (consulte o FMZ Community Advanced Tutorial por favor). Não há código fonte aqui, apenas uma simples descrição de funções, não um código completo que possa ser executado, nem envolve lógica central. A API usa o protocolo REST em vez de websocket. O servidor está em Tóquio, o que pode obter menor latência.
//Set trading pairs and leverage
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())
//Basic limits for trading accuracy
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(){// Obtain the position. Symbol is a trading pair. Add the trading pair parameter instead of returning the full currency, which can reduce the API usage for one time
position = exchange.IO("api", "GET","/fapi/v2/positionRisk","timestamp="+Date.now()+"&symbol="+Symbol+"USDT")
}
function updateTrades(){// Obtain Recent Transactions
trades = exchange.IO("api", "GET","/fapi/v1/trades","limit=200×tamp="+Date.now()+"&symbol="+Symbol+"USDT")
}
function updateDepth(){// Obtain depth
depth = exchange.IO("IO", "api", "GET","/fapi/v1/depth","timestamp="+Date.now()+"&symbol="+Symbol+"USDT")
}
function onTick(){
updateDepth()
updateTrades()
updatePosition()
makeOrder() //Calculate the order price, amount and place the order
updateStatus() //Update status information
}
//The main loop, with a sleep time of 100ms, and the loop delay of the strategy is usually within 30ms.
function main() {
while(true){
if(Date.now() - update_loop_time > 100){
onTick()
update_loop_time = Date.now()
}
Sleep(1)
}
}
A estratégia é muito rígida para o mercado. Não faz dinheiro na maior parte do tempo, e a capacidade não é grande. Se você este artigo foi repostado no microblog, grupo WeChat e momentos e outras plataformas ativamente, e se mais de 100.000 pessoas o lerem, eu considerarei alugá-lo para deixar todos vocês fazerem a operação real, e até publicar o código fonte da estratégia neste artigo no futuro. Adicione o contato do WeChat na página inicial do FMZ, responda o Binance, e você entrará no grupo WeChat do FMZ Binance.