Modulo de visualização para construir estratégias de negociação - Inicial

Autora:Inventor quantificado - sonho pequeno, Criado: 2019-07-08 09:23:59, Atualizado: 2024-12-23 17:57:33

可视化模块搭建交易策略–初识

Modulo de visualização para construir estratégias de negociação

A programação de visualização sempre foi um objetivo ambicioso para os desenvolvedores de ferramentas de software, mesmo no campo da quantificação de transações. A visualização do que parece ser o que acontece é uma maneira de reduzir drasticamente o limite técnico para o desenvolvimento de programação. Os usuários não precisam mais lidar com uma pilha de código chato, mas apenas usar suas mentes, usar sua imaginação e pensamento lógico e se concentrar no próprio negócio. É maravilhoso que você possa realizar um programa que você quer!

Então, vamos entrar no campo da programação visual para quantificar estratégias de negociação!

  • ## Programação de visualização quantificada pelos inventores originais

Entrarhttps://www.fmz.comEm seguida, clique em: Centro de Controle - > Biblioteca de Políticas - > Criar novas políticas.

可视化模块搭建交易策略–初识

A partir daí, podemos ver uma estratégia inicial de visualização. A função é apenas a de exportar informações de ativos da conta de uma bolsa configurada por defeito (revisão ou, no bot, o primeiro objeto de troca adicionado). (Figura abaixo)

可视化模块搭建交易策略–初识

## Antes de começar a aprender a usar a visualização, podemos entender alguns conceitos de design da visualização.

  • Um, dois, três.

    Observação atenta mostra que os módulos são de conchas e conchas, o que significa que os módulos podem ser "conectados" e "conectados". Se o código funcional representado pelos dois módulos puder ser conectado, então você vai se juntar quando você aproxima os dois módulos.

    可视化模块搭建交易策略–初识

  • 2, configuração e ajuste do módulo

    Alguns módulos possuem locais especiais onde podem ser configurados, como:

    可视化模块搭建交易策略–初识

    Você pode arrastar o módulo "Objetos" do lado esquerdo para o módulo "Juntar" para adicionar um ponto de junção, adicionando assim um ponto de junção. Assim, você pode passar, clicar na pequena engrenagem e fazer alguns ajustes e configurações no módulo.

  • 3, parâmetros de entrada padrão do módulo

    Alguns módulos exigem a entrada de alguns parâmetros, que podem ser valores numéricos ou strings. Se não for adicionado uma variável como um parâmetro de entrada do módulo, o módulo é executado de acordo com o parâmetro de entrada padrão.

    可视化模块搭建交易策略–初识Um módulo de cálculo semelhante a um módulo de cálculo de raízes quadradas como este, produz os resultados desse módulo.可视化模块搭建交易策略–初识Como se pode ver, se o parâmetro de entrada estiver desativado, a raiz quadrada de 9 é calculada como parâmetro de entrada pelo valor padrão de 9.可视化模块搭建交易策略–初识

    Claro, se você quiser usar um módulo de variável como um parâmetro de entrada, você pode colocar o módulo de variável diretamente na posição ().可视化模块搭建交易策略–初识

  • 4, operação

    O módulo pode ser colocado e arrastado com o botão esquerdo do mouse. O módulo pode ser copiado com as teclas Ctrl + C e colado com as teclas Ctrl + V, o que é tão fácil quanto copiar e colar código ou texto. A área de operação pode ser reduzida ao tamanho com o rodapé do mouse, e todos os módulos podem ser aumentados ou diminuídos. O espaço em branco na área de operação é arrastado, permitindo mover a área de operação. O lixo à direita registra os módulos que foram removidos mais recentemente. O mais importante é que a política do módulo esteja bem articulada, e não se esqueça do ponto "guardar".

  • Ferramentas de visualização Introdução ao módulo

Como você pode ver no lado esquerdo da área de edição de visualização, há muitas categorias de módulos, e há muitas categorias de módulos de visualização disponíveis para cada item.

可视化模块搭建交易策略–初识A partir daí, o blogue foi dividido em 11 categorias.

  • Modulo de ferramentas:

    可视化模块搭建交易策略–初识


    • ### 1, Exportação:

    O módulo é geralmente usado em combinação com módulos de classes de texto, como mostrado abaixo:可视化模块搭建交易策略–初识Pode-se inserir uma string no módulo de classe de texto, para que o conteúdo da string no módulo de texto seja impresso quando o módulo "Exportar informações" for executado.可视化模块搭建交易策略–初识Revisão:可视化模块搭建交易策略–初识

    Por exemplo, o código da linguagem JavaScript:

      function main(){
          Log("你好,可视化编程!")
      }
    

    • ### 2, WeChat:

    O módulo tem a mesma aparência de "Exportar Informações", mas é diferente de "Exportar Informações" e "Push" as informações para o WeChat ligado à conta atual.可视化模块搭建交易策略–初识 可视化模块搭建交易策略–初识

    Por exemplo, o código da linguagem JavaScript:

      function main () {
          Log("微信推送!@")
      }
    

    • ### 3 # # # # # # # # # # # #

    Lançar um módulo de anomalias faz com que o programa faça um erro e então o programa pare de executar (sem escrever o código de tratamento de anomalias).可视化模块搭建交易策略–初识

    A função é executada diretamente na função main em uma política de JavaScript semelhante à função de arremessar.

      function main () {
          throw "第一句就抛出异常,让程序停止!"
      }
    

    Os resultados do teste:可视化模块搭建交易策略–初识Geralmente, é mais usado no momento do depurador, por exemplo, para que o programa pare em uma determinada condição, e alguns dados que foram impressos no momento são mais fáceis de observar. Ou colocar módulos anormais no processo de código que pode ter problemas, deixando o programa relatar erros e encontrar erros.


    • ### 4 Dormir

    O módulo de hibernação可视化模块搭建交易策略–初识Como na política do JavaScript:

      function main () {
          Sleep(1000 * 5)
      }
    

    Testar o módulo de hibernação:可视化模块搭建交易策略–初识Os resultados do teste:可视化模块搭建交易策略–初识


    • ### 5 # # # # # # # #

    可视化模块搭建交易策略–初识

    O módulo, assim como a função LogProfit da API do inventor de plataforma de negociação quantitativa, imprime logs de receita e automaticamente traça curvas de receita com base nos parâmetros inseridos.

    Por exemplo:可视化模块搭建交易策略–初识O teste foi executado da seguinte forma:可视化模块搭建交易策略–初识O código da política JavaScript correspondente é o seguinte:

      function main () {
          LogProfit(1)
          Sleep(1000 * 5)
          LogProfit(2)
          Sleep(1000 * 5)
          LogProfit(3)
          Sleep(1000 * 5)
          LogProfit(2)
          Sleep(1000 * 5)
          LogProfit(5)
      }
    

    O texto pode ser escrito em qualquer local onde você deseja exportar informações de ganhos.


    • ### 6, o ciclo

    可视化模块搭建交易策略–初识Um módulo de ciclo pode ser envolvido em uma série de combinações de módulos empilhados, permitindo que essa combinação de módulos execute o ciclo.

    Testes:可视化模块搭建交易策略–初识Os resultados do teste:可视化模块搭建交易策略–初识Pode-se ver que a combinação de módulos que envolve o módulo circular é executada continuamente após a combinação de módulos que compõem o ganho de impressão e o sono.


    • ### 7, ciclo executado a cada N segundos

    可视化模块搭建交易策略–初识O módulo e o módulo circular são basicamente idênticos, a única diferença é que o módulo é automático.可视化模块搭建交易策略–初识


    • ### 8, processamento preciso可视化模块搭建交易策略–初识O módulo de variáveis ou valores pode ser usado quando o controle de precisão é necessário. O valor da parte dos parâmetros pode ser inserido e, de acordo com a configuração, o valor será exibido como uma fração específica.

    Por exemplo, o valor 3.1415926535897 é processado com precisão.可视化模块搭建交易策略–初识

    O teste mostra:可视化模块搭建交易策略–初识


    • ### 9 ##, diário em branco

    可视化模块搭建交易策略–初识

    Para registros vazios, pode-se manter uma parte dos registros, dependendo dos parâmetros de entrada. Como diz o documento da API:

      LogReset()
    

    • ### 10 ## ## ## ## ## ##

    可视化模块搭建交易策略–初识

    Para limpar o registro de ganhos, pode-se manter uma parte do registro, dependendo dos parâmetros de entrada. Como diz o documento da API:

      LogProfitReset()
    

    A seguir estão alguns módulos de ferramentas usados com frequência.

    • ### 11, módulo funcional para obter uma propriedade do mercado

    可视化模块搭建交易策略–初识

    Este módulo de ferramenta deve ser usado em conjunto com o módulo de mercado no "tipo de módulo de negociação", como mostra:可视化模块搭建交易策略–初识

    Exportação de preços de transações mais recentes para transações de ticker mais recentes usando o módulo de informações de saída:可视化模块搭建交易策略–初识

    O teste mostra:可视化模块搭建交易策略–初识

    Por exemplo, o código da política do JavaScript:

      function main () {
          Log(exchange.GetTicker().Last)
      }
    
    • ### 12, obtém dados de linha K de um módulo de propriedade em Bar

    可视化模块搭建交易策略–初识

    O módulo também precisa ser usado em conjunto com o módulo de dados da linha K para obter o "tipo de módulo de transação".

    Primeiro, um módulo de variáveis é criado, chamado: K-line.可视化模块搭建交易策略–初识Em seguida, os dados da linha K são obtidos usando o módulo de dados da linha K e atribuídos ao módulo de variáveis: "K-Line".可视化模块搭建交易策略–初识Em seguida, use o módulo de comprimento de lista no "tipo de módulo da lista" para obter o comprimento do módulo de variável da linha K, para especificar em que Bar os dados da linha K devem ser obtidos.可视化模块搭建交易策略–初识O que é que ele tem a ver com isso?可视化模块搭建交易策略–初识O teste é executado e o último K-line Bar é impresso.可视化模块搭建交易策略–初识

    • ### 13 Obter um módulo de dados de uma ordem no menu de pedidos

    可视化模块搭建交易策略–初识

    Também deve ser usado junto com o módulo de acesso a dados profundos no "tipo de módulo de transação".

    可视化模块搭建交易策略–初识

    O índice é definido como 0, o pedido é definido como e o que se obtém é a informação sobre o pedido vendido.

    可视化模块搭建交易策略–初识

    Por exemplo, o código da estratégia JavaScript:

      function main () {
          Log(exchange.GetDepth().Asks[0])
      }
    
    • ### 14, um módulo para obter uma propriedade da informação do ativo

    可视化模块搭建交易策略–初识O módulo deve ser usado em conjunto com o módulo de acesso a informações de ativos.可视化模块搭建交易策略–初识

    Exemplo: número de moedas disponíveis para a conta corrente可视化模块搭建交易策略–初识

    O teste mostra:可视化模块搭建交易策略–初识

    Por exemplo, a política do JavaScript:

      function main () {
          Log(exchange.GetAccount().Stocks)
      }
    
    • ### 15 Obter um módulo de uma propriedade nos dados de pedidos

    可视化模块搭建交易策略–初识

    O módulo é usado para obter o valor de uma propriedade nos dados de pedidos, como o preço ou a quantidade de vendas em uma folha de pedidos (exemplo do número de ordem 13).可视化模块搭建交易策略–初识

    Os resultados do teste:可视化模块搭建交易策略–初识Por exemplo, a política do JavaScript:

      function main () {
          Log(exchange.GetDepth().Asks[0].Price)
      }
    

    Também pode ser usado para obter uma propriedade na informação de pedido que o "Módulo de Informação de Detalhes de Pedido de Consultas" retorna (explicado no passo a passo).

    • ### 16, Obter informações sobre posições de posições de propriedades de módulos

    可视化模块搭建交易策略–初识

    Da mesma forma, para ser usado em conjunto com o módulo de posicionamento de futuros, note que os dados de posicionamento que o módulo de posicionamento de futuros retorna são um conjunto (lista), uma estrutura de dados que contém diferentes contratos e posições em diferentes direções. Por isso, indique o índice quando usado especificamente.

    Aprendemos tanto e depois combinamos uma operação de hedge, ou seja, hedge contra contratos de curto e longo prazo ao mesmo tempo. Nós fazemos um hedge positivo, ou seja, um contrato aberto a longo prazo, um contrato aberto e um contrato aberto mais recentemente.

    可视化模块搭建交易策略–初识

    Os resultados do teste:可视化模块搭建交易策略–初识

A estratégia de visualização de paradigmas: - Não.https://www.fmz.com/strategy/121404 - https://www.fmz.com/strategy/129895 - https://www.fmz.com/strategy/123904 - https://www.fmz.com/strategy/122318

Mais estratégias podem ser encontradas em:https://www.fmz.com/square

Outros artigos desta série

A programação é chata, pode ser feita facilmente com blocos, experimente, é muito divertido!


Relacionado

Mais informações

15650463856Eu não posso criar com essa visualização se eu quiser usar isso.

NegroPor favor, veja como é usado o módulo indicador na visualização.

Inventor quantificado - sonho pequeno https://www.fmz.com/digest-topic/6182

15650463856Além de profundidade, inicialização e progressão, há outros artigos na série, por que eu não encontrei o uso de módulos personalizados e módulos de indicadores?

Inventor quantificado - sonho pequenoOs artigos desta série falam sobre como implementar módulos personalizados.

NegroMuito bem, obrigada.

Inventor quantificado - sonho pequenoA série pode ser lida e comentada novamente.