3.4 Iniciação rápida da programação visual

Autora:Bem-estar, Criado: 2019-06-25 12:10:36, Atualizado: 2023-11-11 17:02:59

img

Iniciação rápida de programação visual

Resumo

Muitos traders subjetivos estão interessados em negociação quantitativa, no início, eles começam com total confiança. Após aprender a gramática básica, operações de dados, estrutura de dados, controle lógico de linguagens de programação tradicionais e o código longo e complicado, eles começam a se confundir.

Estratégia completa

Para ajudá-lo a entender rapidamente os pontos-chave desta seção, antes de introduzir a programação visual FMZ Quant, vamos descobrir qual é a lógica da estratégia? e ter uma compreensão preliminar do conceito de substantivo nesta seção.

  • abertura de posição longa: se não houver atualmente nenhuma posição e o preço de fechamento for superior à média móvel de 50 períodos.

  • Posição curta de abertura: se não houver atualmente nenhuma posição e o preço de fechamento for inferior à média móvel de 50 períodos.

  • Posições longas de encerramento: se a posição longa for actualmente detida e o preço de encerramento for inferior à média móvel de 50 períodos.

  • Posição curta de encerramento: se a posição curta for actualmente detida e o preço de encerramento for superior à média móvel de 50 períodos.

Se você escrever a lógica estratégica acima na programação visual, como mostrado abaixo:

img

Conforme mostrado acima, todo o processo de concepção consiste em: definir as variedades de mercado, adquirir uma matriz de linhas K, adquirir o preço médio de 50 períodos da linha K permeável, obter o preço de fechamento da linha K permeável, obter uma matriz de posições de detenção, determinar o status da posição de detenção, julgar se o preço de fechamento é maior ou menor que a média móvel e, finalmente, realizar a posição de abertura ou fechamento.

Aqui você precisa prestar atenção ao conceito de array, que é uma das estruturas de dados importantes para todas as linguagens de programação. Uma matriz é como um contêiner, que contém uma série de valores.

//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.

arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040}, 
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]

O código acima é uma matriz de linha K de um total de três dados, Há 3 dados nele: os dados da linha K anterior, os dados da linha K anterior, os dados da linha K atual, e atribuiu esses valores à variável arr.

//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.

arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040}, 
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]

k0_1 = arr[2]; // get the data of current k line, this is the first method
k0_2 = arr[arr.length - 1]; // get the data of current k line, this is the second method
k1 = arr[arr.length - 2]; // get the data of pervious k line

Nós devemos usar o segundo (quinta linha) método, porque existem centenas de dados de linha K na realidade, e a nova linha K está aumentando continuamente. então você deve obter o comprimento da matriz primeiro, arr.length significa obter o comprimento da matriz, e então subtrair 1, que é o mais recente dados da linha K. Se você quiser obter os dados da linha K anterior, subtrair 2.

Você pode achar que esses dados em {} com nome em inglês correspondem respectivamente ao significado: o tempo, o preço de abertura, o preço mais alto, o preço mais baixo, o preço de fechamento, o volume de negociação.

//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.

arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040}, 
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]

k0_1 = arr[2]; // get the data of current k line, this is the first method
k0_2 = arr[arr.length - 1]; // get the data of current k line, this is the second method
k1 = arr[arr.length - 2]; // get the data of pervious k line

k1.Close; // get the pervious k line closing price
k2.Time; // get the pervious k line time
k1.Volume; // get the pervious k line trading volume

Porquê usar uma linguagem de programação visual?

Com esses conceitos acima, vamos escrever um programa de saída hello, world com a linguagem de programação Java, para sentir a programação tradicional, como mostrado abaixo:

public class HelloWorld {
    public static void main(string[] ages) {
        system.out.println("hello world!");
    }
}

Saiba apenas um programa de string, precisa de cinco linhas de código. Acredito que a maioria dos iniciantes só conhece a palavra em inglês "hello, world!" entre parênteses, e outros estão apenas confusos como o inferno. Portanto, é melhor usar programação visual como ponto de partida.

O que é programação visual?

Este tipo de "o que você vê é o que você obtém" ideia de programação, equipado com uma variedade de módulos de controle, apenas por arrastar e soltar, você pode construir lógica de código, completar o projeto de estratégia de negociação, o processo é como blocos de construção.

img

Como mostrado acima, o mesmo programa, a programação visual requer apenas uma linha de code.

Quais são as características das linguagens de programação visual?

Blockly ((o nome desta ferramenta de programação visual) não é um brinquedo de programação, é como um tipo de editor, não o tipo de editor disfarçado do sistema operacional, suporta muitos elementos básicos de programação, como: variáveis, funções, matrizes e blocos personalizados fáceis de estender, você pode usá-lo para completar tarefas de programação complexas.

A ferramenta de programação visual FMZ Quant Blockly foi publicada pelo Google. semelhante ao design de Scratch, que foi lançado pela Universidade de Massachusetts, o verdadeiro limiar zero para programação (veja abaixo).

img

Na interface de programação visual FMZ Quant, existem centenas de módulos de negociação comuns incorporados, e mais módulos de negociação serão adicionados mais tarde para apoiar as novas ideias e novas aplicações do comerciante, que serão desenvolvidos e mantidos em conjunto pelos desenvolvedores.

Embora a sintaxe seja simples e não perca desempenho. Ele pode satisfazer quase todos os simples desenvolvimento de estratégia quantitativa de negociação. Não importa na função ou velocidade, é tão bom quanto linguagens de programação regulares como Python e JavaScript. no futuro, ele suportará aplicações financeiras logicamente complexas.

Como usar

img img

Escreve um olá, programa mundial

img img

Corra, imprima "olá, mundo"

img img

Resumindo

Desde o início de uma estratégia completa de programação visual, até a introdução e características da linguagem de programação visual, mostramos como usar essa ferramenta na plataforma FMZ Quant, e escrevemos um exemplo de "hello world". No entanto, precisamos lembrar a todos que, como um passo para a negociação quantitativa, atualmente tem apenas uma interface API limitada na plataforma FMZ Quant. Para a negociação quantitativa, é melhor tratá-lo como uma ferramenta, que para ajudá-lo a classificar a lógica de sua estratégia.

Anúncio da secção seguinte

A programação visual não é diferente dos fundamentos das linguagens de programação de alto nível, e até mesmo alguns lugares são universais. Aprender programação visual é um passo para a aprendizagem de programação avançada.

Exercícios após a escola

  1. Na interface de programação visual da plataforma quântica FMZ, use a API e entenda o que elas significam.

  2. Obter o preço de abertura mais recente pela linguagem de programação visual e a saída para o log.


Relacionados

Mais.