[TOC]
Após estudar este tutorial, você entenderá a arquitetura e as funções da plataforma de negociação FMZ Quant, e será capaz de criar estratégias e executar bots.
Tutorial básico:https://www.fmz.com/bbs-topic/10133
Tutorial avançado:https://www.fmz.com/bbs-topic/10131
Plataforma de negociação quântica FMZ
Introdução
FMZ Quant Platform (ex-BotVS) é uma comunidade quantitativa profissional, fundada em 2014. Aqui você pode aprender, escrever, compartilhar, comprar e vender estratégias quantitativas, backtest online e usar exchanges virtuais para simular negociação, e executar, abrir e visualizar bots ao vivo. Ele suporta futuros de commodities e Esunny Outer disc Futures, bem como quase todas as plataformas de criptomoedas comumente usadas. FMZ é adequado para iniciantes em negociação quantitativa. Mesmo se você não tiver uma base, você pode começar rapidamente. A plataforma é poderosa e flexível, e também pode atender às necessidades avançadas.
Para as plataformas spot de criptomoedas, quase todas elas são atualmente suportadas. Se houver outras plataformas necessárias, elas serão suportadas logo após serem propostas. Plataformas de negociação de futuros de criptomoedas suportadas: OKEX, Huobi, GateIO, BitMEX, Deribit, BFX; plataformas de alavancagem suportadas: OKEX, Huobi, Binance, FCoin, ZB, Bibox; plataformas de contratos perpétuos suportadas: BitMEX, Deribit, GateIO, OKEX, BFX, Bibox; também suporta a negociação de opções de criptomoeda Deribit; plataformas de simulação: sites de teste de bolsas, como BitMEX e FMZ plataforma oficial de simulação de negociação spot Wex.app.
A plataforma FMZ Quant suporta o uso de linguagens completas de alto nível, como Javascript, Python e C ++, bem como linguagens de visualização e Mylanguage (compatível com Webstock) para implementar estratégias.
A plataforma é cobrada por hora; cada bot real cobra 0,05 dólares americanos por hora; menos de uma hora é considerada uma hora; reinicia após suspensão sem cobranças repetidas,O único bot FMZ pode operar várias plataformas, várias contas e vários pares de negociação.
O servidor que executa o bot real precisa ser preparado por si mesmo, ou você pode alugar o servidor preparado pela plataforma FMZ Quant (o preço é comparativamente alto).
Nota: A parte de criptomoedas da FMZ foi separada.www.fmz.cnO site estrangeiro só pode fazer negócios de criptomoedas e pode ser recarregado em dólares americanos ou USDT.
Orientado ao utilizador
- 1.Um iniciante em negociação programática, mas com experiência de negociação e pensamento estratégico, pode aprender programação simples e usá-la para bots reais.
- 2.O pesquisador de estratégias profissional ou semi-profissional pode escrever estratégias com competência e personalizar as taxas de estratégia relevantes, de acordo com as exigências dos utilizadores.
- 3.Se tiver uma estratégia madura que precise de ser vendida ou que exija fundos, pode mostrar o bot no FMZ e alugar a estratégia.
- 4.Os utilizadores que têm experiência na utilização de outras plataformas programáticas de futuros de commodities, como Webstock e BT Quant, etc., são capazes de escrever estratégias em Mylanguage.
- 5.Os utilizadores, que dispõem de uma estratégia operacional estável e de experiência em programação, necessitam das funções de gestão e gráfico baseadas na web fornecidas pela FMZ Quant, para poderem executar melhor o seu próprio bot.
- 6.Os utilizadores, com experiência em programação e negociação, devem examinar outras estratégias públicas e comunicar no fórum para encontrar as suas próprias ideias de estratégia.
- 7.Os utilizadores, sem qualquer experiência em programação, não estão dispostos a aprender, mas querem comprar estratégias maduras (o que não é recomendado; pelo menos os conhecimentos relevantes devem ser dominados).
Quadro da plataforma
A estrutura do FMZ é especial; ao contrário de outros softwares de negociação que precisam baixar o cliente, ele basicamente só precisa ser gerenciado no site do FMZ, por isso há muitas vantagens. A função principal do site do FMZ é escrever estratégias e gerenciar os bots. A implementação específica dos bots está no docker do servidor ou computador dos usuários. O docker é responsável por se comunicar com o site do FMZ para transmitir registros e executar diretamente o bot para acessar plataformas para obter cotações e negociações de mercado.https://www.fmz.com/digest-topic/7542
Segurança do código fonte API-KEY & Strategy
O FMZ não salva a chave do usuário. O servidor salva os dados criptografados pelo navegador de acordo com a senha do usuário. Quando o bot real é criado, os dados são enviados para o docker. Para o FMZ não salva a senha de texto simples do usuário, então a API-KEY do usuário não pode ser obtida, mesmo que por FMZ. Os usuários precisam proteger o texto simples da API-KEY, a senha do site FMZ e o servidor onde o docker se localiza. A plataforma FMZ Quant tem funcionado por mais de 4 anos e foi usada por dezenas de milhares de usuários sem quaisquer problemas de segurança.
O código fonte da estratégia é salvo no servidor FMZ. Se você quiser executar a estratégia localmente, você pode salvar seus códigos como um arquivo Python e chamar e executar diretamente na estratégia. Para o método específico, consulte a FAQ no final dos tutoriais básicos superiores. Desta forma, seus códigos serão totalmente localizados.
Se você quiser alugar a estratégia sem que os usuários vejam o código fonte, você precisa usar js para completar a estratégia, que será compilada em código de máquina executado pelo docker do inquilino, o que é muito difícil de descompilar. No entanto, a própria linguagem Python não tem um mecanismo de criptografia; FMZ atualizou recentemente o mecanismo de criptografia para vender o código fonte da estratégia Python, mas não pode evitar completamente o risco de vazamento da estratégia.
Passos para começar
- Para aprender uma linguagem de programação, Javascript e Python são recomendados, e você só precisa ser capaz de simplesmente usá-los.
- Você deve estar familiarizado com o uso da plataforma FMZ Quant, implantar seu próprio docker e conhecer as relações entre estratégia, bot, docker e o site.
- Navegue no documento da API e saiba mais sobre interfaces e funções.
- Aprenda as estratégias do tutorial na seção Estratégia, e escreva estratégias com funções simples por si mesmo, como price push, ordem de iceberg e assim por diante.
- Crie sua própria estratégia, familiarize-se com interfaces API específicas e mensagens de erro comuns e aprenda a fazer perguntas e pesquisar posts relevantes corretamente.
- Use bot simulado e bot real para executar estratégias e descobrir mais perguntas na prática.
A coisa mais importante é ousar começar a aprender, passo a passo, e todos os passos devem ser tomados por si mesmo. Mesmo que pareça muito difícil no início, uma vez que você concluir a primeira estratégia, você descobrirá que tudo é tão fácil. Se você tiver uma certa base de programação, poderá começar e escrever estratégias dentro de uma semana. Se você não tiver conhecimento de programação, precisará de uma semana extra para aprender os conhecimentos mais básicos de programação. Se você usa o Webstock antes e está familiarizado com o Mylanguage, só precisa saber como usar a plataforma.
Se houver algum problema, pode sempre postar perguntas no fórum emhttps://www.fmz.com/bbs, ou enviar um bilhete parahttps://www.fmz.com/m/tickets, ou @managers no grupo QQ ou grupo WeChat (eles geralmente respondem muito rapidamente). Preste atenção que você pode tentar pesquisar os documentos ou visitar o fórum primeiro para resolver seus problemas, e você precisa fornecer informações suficientes ao fazer perguntas.
Recomendação de recursos de estudo
- Curso Quantitativo de Negociação de Criptomoedas da NetEase Cloud Classroom, produzido oficialmente pela FMZ, só precisa de 20 yuans, com conteúdo detalhado, de simples a profundo, adequado para iniciantes!cursolink
- Coluna oficial do FMZ no Zhihu, onde artigos de alta qualidade serão publicados, e bem-vindos para nos seguir no Zhihu:https://zhuanlan.zhihu.com/botvs
- Alguns posts detalhados de análise de código fonte de estratégia, adequados para estratégias de aprendizagem:https://www.fmz.com/bbs/s:tag:源码解析/1
- Algumas estratégias de ensino, adequadas para a aprendizagem primária, escrever estratégias enquanto aprende o básico:https://www.fmz.com/square/s:tag:教学/1
- Resumo das perguntas frequentes; se tiver problemas, pode procurar primeiro aqui:https://www.fmz.com/bbs-topic/1427
- Biblioteca oficial FMZ (Digest), há muitos artigos clássicos e estratégias para compartilhar e analisar, os usuários também são bem-vindos a contribuir, haverá recompensas após a aceitação.https://www.fmz.com/digest
Executar um bot em 30 minutos
Os passos para executar um bot a partir do zero são os seguintes:
- Adicionar a API-KEY de intercâmbio ao site da FMZ;
- Criar uma estratégia que deva ser executada;
- Implementar um docker que execute o bot.
- Crie um robô.
Se os três primeiros passos foram feitos, você só precisa fazer o quarto passo. Em seguida, pegue um bot de alerta de preço do WeChat como exemplo para introduzir como executar um bot desde o início. Funções mais detalhadas da plataforma serão introduzidas no próximo capítulo.
1. Adicionar plataforma
Primeiro, você precisa fazer login no site correspondente da bolsa para solicitar o API-KEY. O KEY é dividido em dois, ou seja, Access Key e Secret Key. A chave de acesso pode ter outros nomes, mas lembre-se que um é Secret Key e o outro é Access Key. O API-KEY é usado para criptografar dados e verificar a identidade. É semelhante ao nome de usuário e senha. É muito importante, então você não pode vazá-lo. Diferentes plataformas têm diferentes locais de aplicativos, basta pesquisar API e você os encontrará.
O endereço do site é: https://wex.app. (Nota que, devido a razões de rede, a plataforma simulada do Wex às vezes requer que os dockers estrangeiros acessem.) Você precisa registrar uma conta por e-mail. Após o registro, os ativos virtuais na wallet devem ser transferidos para a conta coin na plataforma virtual do Wex, e inicialmente não há ativos de negociação. Clique em Gerenciamento de API no avatar do usuário no canto superior direito do site. Clique em Criar e insira o código de verificação de e-mail para criar. Entre eles, você pode ver restrições de IP e permissões disponíveis. É mais seguro que as restrições de IP só possam permitir que programas sob esse endereço IP acessem a conta. Quanto às permissões, não se esqueça de adicionar permissões de negociação, caso contrário você não poderá fazer um pedido.
A API-KEY obtida na demonstração, ou seja, a chave de acesso e a chave secreta, que só podem ser vistas uma vez, por isso não se esqueça de gravá-la e salvá-la.
Introduza a interface de adição de plataforma (https://www.fmz.com/m/platforms), e clique no botão Adicionar plataforma.
Primeiro, selecione a criptomoeda para a categoria de plataforma, selecione o WexApp para o nome da plataforma (porque há muitas plataformas, você pode inserir diretamente o texto para selecionar), e depois copie o KEY que você acabou de solicitar.
Depois de adicionar, você pode ver as plataformas adicionadas na página, e você também pode modificar as plataformas adicionadas.
Se você quiser executar o commodity futures CTP virtual trading, você precisa adicionar simnow.https://www.fmz.com/bbs-topic/325
2. Criar e modificar estratégias
Na página Estratégia:https://www.fmz.com/m/strategiesPara demonstrar que podemos copiar diretamente uma estratégia, pode encontrar a estratégia pública de Push the price information to telegram na estratégia de ensino de Square (o endereço:https://www.fmz.com/strategy/125482), clique e lidar com a estratégia.
A figura abaixo mostra a estratégia copiada, na qual há um no nome da estratégia para separar o nome chinês e o nome em inglês. Se você quiser publicar uma estratégia com um nome em inglês, também pode usar este método. Parâmetros são variáveis globais que podem ser citadas diretamente em códigos de estratégia. O código da estratégia é muito simples. GetTicker))) é usado continuamente para obter o último preço em um loop infinito. Quando o padrão de push é atingido, uma mensagem é empurrada para o WeChat (você precisa vincular uma conta do WeChat no site FMZ). Clique em Create para ver essa estratégia em sua própria biblioteca.
Se a estratégia for modificada, basta salvar a estratégia e reiniciar o bot de estratégia, o que tornará a modificação válida.
3.Deployment Dockers
Página do Docker:https://www.fmz.com/m/nodesComo mencionado anteriormente, o bot do usuário não é executado pela plataforma FMZ, mas pelo próprio usuário, então um programa que executa a estratégia é necessário, que é chamado docker. Dockers podem ser executados no Linux\Mac\Windows. Observe que, como quase todas as trocas de criptomoedas não podem ser usadas na China, o docker precisa ser executado em um servidor no exterior. Os usuários podem escolher um provedor de servidor para comprar um servidor Linux (o sistema geralmente pode escolher centos), e o servidor pode escolher Amazon, Google e digitalOcean, etc. Se você não tiver um cartão de crédito de moeda dupla, também pode escolher um provedor de serviços que suporta o Alipay. A configuração do servidor geralmente seleciona o menor, e o preço é de cerca de 1 yuan por dia.
Comprar um servidor pode parecer difícil, mas é um passo necessário na quantificação de criptomoedas, eAqui está uma demonstração detalhada da compraSe você acha que as empresas estrangeiras são problemáticas, você também pode escolher o servidor Alibaba Cloud Hong Kong. Se você ainda achar que é problemático, você pode alugá-lo diretamente da plataforma FMZ Quant no tempo com apenas um clique. FMZ alugará um novo servidor diretamente do Alibaba Cloud e outros fabricantes de servidores e automaticamente implementará o docker do usuário, que é o mais simples, mas relativamente caro. Consulte os passos detalhados para a implantação e atualização de servidores Linux específicos:https://www.fmz.com/bbs-topic/2848
Para os usuários de futuros de commodities, você pode alugar diretamente servidores da Alibaba Cloud em Xangai ou Hangzhou mensalmente a um preço de 40 yuans por mês. O preço foi comprimido para o nível mais baixo (é basicamente o mesmo preço que o preço de aluguel por si mesmo), o que pode economizar o incômodo de alugar servidores e gerenciar por si mesmo.
Uma vez que a demonstração é uma troca virtual, ela pode ser implantada diretamente em seu próprio computador (para futuros de commodities, você também pode usar seu próprio computador). Selecione a versão de interface de 64 bits, clique com o botão direito após a descompressão e execute o programa robô com privilégios de administrador. Preencha o endereço no site (cada usuário é diferente, por isso verifique na página docker após o login) e as informações da senha do site FMZ no programa; clique em Execução, se puder ver2019/08/09 12:03:30 Login OK, SID: 90706, PID: 31376
e outras palavras, o que indica que a operação foi bem sucedida. Você pode ver o arquivo de logs no diretório do docker, e os logs de bot serão salvos lá. Na interface de gerenciamento docker, você pode ver o docker que você acabou de implantar.
Se o programa de bot não precisar de um desempenho particularmente alto, um docker pode executar vários bots (a configuração mínima do servidor não é problema para executar mais de uma dúzia de bots). Observe que um servidor também pode implantar vários dockers, mas geralmente não é necessário. O docker comunica com o site FMZ e, retorna o status do bot e controla o bot. Devido a problemas com servidores estrangeiros e comunicação doméstica, o docker ocasionalmente será solicitado offline, mas isso não afeta a operação real do bot. Se um docker estiver completamente offline, ele não poderá operar os bots executados por ele, então esse docker precisa ser excluído. Se o docker antigo não suporta adicionar novas funções, um anúncio será emitido e os usuários podem escolher atualizar de acordo com suas necessidades.
4.Criar e gerir bots
Após o trabalho acima ser concluído, um bot pode ser realmente executado.https://www.fmz.com/m/robots), clique em Adicionar bot e aparecerão as seguintes configurações:
Ao criar um bot, você precisa definir uma estratégia especificada, um docker em execução especificado, uma plataforma e um par de negociação a serem operados, o período padrão da linha K e os parâmetros da estratégia, etc.Um bot pode adicionar pares de negociação de várias plataformas e também pode controlar vários pares de negociação da mesma plataforma.Se o par de negociação necessário não for encontrado na caixa de combinação, você pode clicar em custom para inserir manualmente.
Depois de criar um bot, você pode encontrá-lo na página bot, e clique para entrar no bot em execução.
Até agora, criámos um bot. É muito simples?
Explicação pormenorizada das funções específicas da plataforma
A primeira é a página principal do painel após o login, da qual o lado e a parte superior são as barras de navegação, que serão introduzidas uma a uma da seguinte forma.
- Painel de instrumentos: a interface de operação para os utilizadores.https://www.fmz.com/m/dashboard
- Quadrado: o quadrado estratégia, onde os utilizadores abrem e vendem estratégias, e pode clicar nos rótulos relevantes para selecionar as estratégias correspondentes.
- Visão: a interface onde os utilizadores tornam públicos os bots em execução e visualizam os bots com comentários.https://www.fmz.com/live
- Digestão: alguns artigos de alta qualidade produzidos por funcionários da FMZ.https://www.fmz.com/digest
- Fóruns: onde os utilizadores propõem perguntas e comunicam.https://www.fmz.com/bbs
- Ofertas: uma plataforma onde os utilizadores publicam as suas necessidades ou escrevem códigos ghostwriting para outros; tudo é tratado e cobrado pelos próprios utilizadores, e o funcionário da FMZ não garante nada.
- API: um documento para introduzir as APIs necessárias para as estratégias escritas pela FMZ; pode pesquisar aqui se tiver qualquer dúvida sobre API.
- EstratégiaO que é que é uma estratégia?
- Plataforma: todas as plataformas adicionadas.
- DockerTodos os trabalhadores portuários foram adicionados.
- BotTodos os bots estão a funcionar, incluindo os que pararam.
- Ferramenta de depuração: convenientemente depurar parte dos códigos, sem criar bots.
- Comércio: a interface de negociação de operação manual simples.
- Investigação: apoiar a utilização de notebooks jupyter para operar a pesquisa estratégica.
- Notas- registos de pagamentos e de consumo.
- Mensagem: todos os tipos de notificações de mensagens.
- Bilhete: um bilhete pode também ser enviado directamente para propor perguntas, para além de propor perguntas nos fóruns.
- Base de dados: os dados salvos da linha K e do nível do bot, para navegação e conservação convenientes.
- Analisar: simplesmente calcular e analisar as cotações de mercado.
Gestão de bots
- 1.O nome do bot, clique para entrar na página de gestão do bot.
- 2.O nome do grupo dos bots, que é conveniente para gerir um grande número de bots.
- 3.O nome da estratégia executada pelo bot.
- 4.O estado do bot inclui quatro: em execução, interrompido, concluído e ocorreu um erro.
- 5.O lucro real não representa necessariamente os dados de lucro, de modo que o utilizador pode produzir ele próprio, que pode representar quaisquer dados.
- 6.Compartilhar o bot, que pode ser visto por outros utilizadores no Compartilhamento.
- 7.Monitorar o bot e enviar mensagens automaticamente após o bot parar.
- 8.Parar ou reiniciar o robô.
- 9.O saldo da conta corrente e o tempo de execução do bot.
- 10.Gerenciar o agrupamento das estratégias.
Gestão da Estratégia
- 1. nome da estratégia.
- 2.Nome do grupo.
- 3.opções de acção estratégica, tais como participação, aluguer, venda, etc.
- 4.Adicionar e gerir novos grupos; pode agrupar diferentes tipos de estratégias para facilitar a gestão.
Descrição da interface de escrita de estratégia
A escrita de estratégias pode ser feita no site da FMZ ou remotamente.
- 1.Clickaqui para inserir Backtest; as instruções detalhadas sobre backtest serão mostradas no tutorial elementar de escrita de estratégia.
- 2.A escolha da linguagem da estratégia, que não pode ser alterada após a criação da estratégia.
- 3.Nome da estratégia.
- 4.Nota é o registo da redacção da estratégia, que só pode ser visto pelo próprio utilizador; Descrição é a descrição da estratégia, que pode ser vista por outras pessoas na página da estratégia, quando a estratégia é partilhada com o público; manual
- 5.Tipo de estratégia, incluindo estratégia comum e modelo; sobre o modelo, pode consultar o documento API em:https://www.fmz.com/api#模板类库
- 6.Salvar: um atalho pode ser habilitado com Ctrl+S durante a edição.
- 7.Salvar Configurações: a função guarda os parâmetros de backtest na frente do código e, quando reinicia a estratégia, as configurações de backtest não são alteradas.
- 8.Download- Baixe o código para o disco local.
- 9.Importação e exportação: como o nome sugere, significa importar e exportar a estratégia, incluindo parâmetros e configurações da estratégia.
- 10.Tema: diferentes fundos de código e estilos de cores.
- 11.Formato JS: ordenar o código automaticamente.
- 12.Modo Vim aberto: Vim é um editor comum sem interface, com função poderosa.
- 13.Remote Edit: a função inclui o plugin de edição de código comumente utilizado, que permite a escrita de estratégias locais e a sincronização automática com FMZ.https://www.fmz.com/api#远程编辑
- 14.Toescolher o modelo que você quer usar, você precisa copiar o modelo no quadrado estratégia.
- 15.Parâmetros de estratégia: os parâmetros serão introduzidos em pormenor no próximo tutorial.
Compartilhe ou venda suas próprias estratégias
Na caixa de combinação de Ação, você pode ver a opção Público, que inclui compartilhamento interno e compartilhamento público, e o processo de compartilhamento interno é mostrado da seguinte forma:
Finalmente, um link de cópia será gerado, e os outros podem apenas abrir o link e inserir o código de cópia, para obter o código fonte da estratégia e parâmetros.
Se você optar por compartilhar para o público, sua estratégia será exibida no Quadrado, e todos os usuários podem vê-lo.
Existem três maneiras de Venda, incluindo Venda Interna, registro de software e Venda Pública. A diferença das estratégias públicas é que outros não podem obter o código fonte da estratégia pelo link de cópia, e eles só podem executar o bot pela estratégia.
A venda interna é a maneira mais comum. Se houver estratégias que você deseja compartilhar apenas com os outros (que não precisam ser cobradas), você pode escolher a venda interna e preencher o período de validade e o valor simultâneo. Se as estratégias vendidas ao público forem mostradas nas estratégias cobradas, os bots das estratégias serão verificados e abertos ao público por um tempo.
Comércio
Trade é uma versão web da página de negociação, onde você pode adicionar todas as plataformas manualmente por si mesmo.
- 1.Para o docker que executa a instrução, as informações da conta, ordens, etc., devem ser enviadas ao docker para execução.
- 2.Escolher a plataforma e o par de negociação.
- 3.Uma parte do mercado é reiniciada pelo site FMZ. Neste momento, o canal de alta velocidade é solicitado.Para os dados que não foram reiniciados, pode optar por atualizar manualmente ou periodicamente.
- 4.Market K-line.
- 5.Informações da conta; atualização regular ou manual.
- 6.Página de pedido manual.
Gestão de contas e pagamentos
Através da barra de navegação à esquerda, entre na página de pagamento, e as instruções específicas são as seguintes:
Clique no avatar da conta no canto superior direito do site para entrar nas configurações da conta e gerenciar sua própria conta FMZ nesta página.
- Mensagem: o resumo de todas as mensagens, incluindo mensagens de notificação e de bilhetes.
- Google dois fatores: é melhor permitir a segunda verificação do Google, para melhorar a segurança.
- Alerta de limiarQuando o saldo disponível da conta for inferior a este valor, você receberá uma notificação por e-mail e WeChat.
- Push Configurações: aqui você pode ligar WeChat, Telegram e e-mail, etc., para receber as mensagens push dos bots.
- ApiKey: FMZ tem sua própria API; basicamente, quase todas as operações de bots podem ser concluídas através da API, que fornece extensões diversificadas.
- Subconta: é uma função para criar uma sub-conta com permissões limitadas, que é usada para modificar a conta compartilhada para estratégia.
- Afiliados: Convide amigos para se inscreverem na plataforma FMZ e você pode ganhar pontos quando recarregar, o formato do link de afiliado é o seguinte:https://www.fmz.com/sign-up/1247886Instruções específicas:https://www.fmz.com/bbs-topic/3828.