Custo zero e rápido para criar sua própria plataforma de negociação quantitativa multiusuário exclusiva

Autora:Sonhos pequenos, Criado: 2018-04-14 14:30:55, Atualizado: 2019-07-31 17:42:26

Custo zero e rápido para criar sua própria plataforma de negociação quantitativa multiusuário exclusiva

Qualquer pessoa pode construir uma plataforma de negociação quantitativa usando a API de expansão quantitativa do inventor, e este projeto demonstra como construir uma plataforma de negociação quantitativa poderosa usando a API de expansão quantitativa do inventor em Python.

  • Embarque em sistemas existentes

    De acordo com o projeto DEMO, é possível escrever código de servidor, adicionar páginas de front-end para incorporar sistemas existentes como fóruns, blogs, comunidades e outros. Para permitir o acesso flexível ao grupo de usuários existentes, e os grupos de usuários existentes não experimentam totalmente o suporte técnico de base quantificado pelos inventores, o uso do usuário é mais simples e fácil de usar.

  • Apoio ao mercado

    • CTP Futures de mercadorias (outros mercados, lojas, supermercados, lojas centrais)
    • Exotic Outlets (CME, CBOT e outras principais bolsas de futuros estrangeiras)
    • Mais de 30 plataformas de negociação de ativos blockchain no mundo
  • Construir sua própria plataforma de quantificação

    • Estratégia de alta liberdade

      Escrever estratégias de negociação quantitativa usando Python, JavaScript e C++, livre de customização, para realizar suas próprias ideias de negociação em um mundo de negociação quantitativa.

    • Um sistema de retrospecção poderoso e eficiente

      A partir de então, não há mais dificuldade em coletar dados, e o mecanismo de sistema de retrospecção local é facilmente configurado com apenas um comando, link:https://github.com/fmzquant/backtest_python

    • Arquitetura simplificada

      Com apenas algumas páginas de front-end, um programa de servidor HTTP pode ser facilmente construído.

  • Projeto DEMO

    • Nome: Inventor Quantified demonstra como construir sua própria plataforma de quantificação de gestão de ativos usando o Inventor Quantified Extension API

    • Instalação deste projeto demo

      • Primeiro clone Este projeto demo

        git clone https://github.com/fmzquant/fmz_extend_api_demo.git
        

        alt

      • Passe para este diretório, execute pip e instale

        img

        pip install -r requirements.txt 
        

        img

        Nota: Se for indicado Permission denied, é necessário executar pip como sudo pip install -r requirements.txt, inserindo o código do sistema operacional conforme solicitado.

      • Após a instalação, configure o programa do servidor a ser usado, quantifique o inventor, a API KEY da conta.

        Quantificação dos Inventores Utilização da API KEY para expansão Veja mais sobre a documentação da API de quantificação dos inventores:https://www.fmz.com/api

        Criado pelo inventor de quantificação API KEY

        img

        Escreva o API KEY para a demonstração.app.pyO programa do servidor.

        img

    • Este projeto DEMO executa comandos no servidor

      python app.py
      
      • A função mostra:

        img

        Depois de executar o programa do servidor, abra a página local no navegador:http://127.0.0.1:5000

        img

      • Testar a página de inscrição

        img

        O projeto DEMO Quantitative Platform já está em andamento, basta registrar-se com a sua conta (que armazena dados locais), entrar e configurar a sua API KEY como usuário da plataforma.

        img

        img

        A configuração é a seguinte:

        img

        As três estratégias exibidas na página são apenas uma visualização da interface do usuário, que também requerem que os administradores da plataforma de quantificação de gestão de ativos sejam projetados especificamente para serem implementados, apenas para demonstração.

      • Configure uma política de teste Neste projeto de demonstração, o servidor detecta que o botão de inicialização é pressionado com um toque, o que desencadeia uma pesquisa na conta de inventores de quantificação que contém a palavra-chave "main" e usa essa política para ligar o botão a funcionar. Então nós começamos com uma estratégia chamada principal test profit.

        main Test profit O código da estratégia é o seguinte:

        function main() {
            while(true) {
            LogProfit(Math.random()*100);
                Sleep(1000);
            }
        }
        

        img

        Depois de editar o código, clique em Salvar.

        Atenção: é necessário ter certeza de que há um administrador online antes da operação.https://www.fmz.com/bbs-topic/463

      • Clique no botão de inicialização do botão, que cria automaticamente um robô para executar, que vincula uma política de demonstração que somente produz um valor aleatório como valor de ganho.

        A imagem mostra um robô recém-criado no centro de controle do inventor:img

        A página DEMO também mostra os valores correspondentes aleatórios.img

      • Robôs que funcionam na quantificação do inventor Identificados pelo appId dos usuários atualmente conectados à plataforma DEMO

        img

        def robot_run(robotId, appId, exchanges):
            strategyId = -1
            # 从策略库里选出一个包含main字符串的策略运行, 也可以预定义
            for ele in api("GetStrategyList")['data']['result']['strategies']:
                if 'main' in ele['name']:
                    strategyId = ele['id']
            if strategyId < 0:
                raise u"not found strategy"
            settings = {
                    "name":"robot for %s" % (appId, ),
                    "args": [], # our custom arguments for this strategey
                    "appid": appId, # 为该机器人设置标签,关联到本用户
                    "period": 60,
                    "strategy": strategyId,
                    "exchanges": [],
                    }
            for e in exchanges:
                settings["exchanges"].append({"eid": e.eid, "pair": get_default_stock(e.eid), "meta" :{"AccessKey": e.accessKey, "SecretKey": e.secretKey}})
            if robotId > 0:
                return api('RestartRobot', robotId, settings)
            else:
                return api('NewRobot', settings)
        

        Como você pode ver, no código, as configurações são para criar informações de configuração do robô, e o appid é usado para marcar o usuário.

  • Atualização

    # Github 地址更新:  https://github.com/fmzquant/fmz_extend_api_demo
    

Mais.

Nature quantifica investimentosO ambiente configurado não está correto. Por favor, você precisa dessa versão do Python?

churchillxyA plataforma de quantificação criada dessa forma, 1 outros usuários registrados, só podem ver as políticas criadas pelo administrador? Podem ver o código fonte? 2 Os usuários podem configurar a API do usuário com base nas políticas do administrador, executar o próprio disco real do usuário?

Lizza.Zero é uma grande ambição, a chave é ser capaz de ser ambicioso.

JA plataforma que construímos só pode ver e controlar o funcionamento dos robôs, não pode escrever estratégias e adicionar robôs?

Sonhos pequenosEste é um DEMO, é de código aberto e pode ver diretamente o código-fonte.

churchillxyMuito bem, obrigado.

Sonhos pequenosNão. Além disso, como adicionar essas funções ao fórum? Não. Estes podem ser desenvolvidos especificamente. O DEMO é simplesmente que você pode construir um site sozinho e usar o serviço de disco rígido do FMZ através da API de extensão do FMZ. Assim, basta construir um site e você pode ser uma plataforma.

churchillxyO custo de funcionamento do usuário é ou não é de US $ 0,05 / hora?

Sonhos pequenosVocê pode projetar políticas visíveis para o usuário e permitir que o usuário configure seus próprios parâmetros. Tudo isso é baseado no design do seu produto (o serviço de base é o FMZ).

Sonhos pequenosNão está disponível a interface de programação de políticas (possivelmente mais tarde), outras funções estão disponíveis (por exemplo, criar robôs, etc.), ferramentas de depuração. A interface também é suportada.