Type/to search
8
Follow
1364
Followers
Módulo de visualização para construir estratégias de negociação - em profundidade
Original
Created 2022-06-18 08:05:53  Updated 2023-09-18 19:58:13
 0
 2606

img

Módulo de visualização para construir estratégias de negociação - em profundidade

  • Tipo de módulo lógico

    • 1. Módulo condicional

      Este módulo é usado para julgamento condicional combinado e pode adicionar vários ramos condicionais.
      Clique no pequeno ícone de "engrenagem" para adicionar ramificações condicionais.

      img

      O exemplo de uso do módulo condicional é combinado com o próximo módulo para teste.

    • 2. Módulo de comparação numérica

      Este módulo é usado para comparar dois valores (também pode ser considerado que este módulo e o módulo de valor são combinados em um módulo de expressão) e retornar um valor booleano.
      Este módulo pode julgar se os valores em ambos os lados são "maiores que", "menores que", "maiores ou iguais a", "menores ou iguais a", "diferentes de" ou "iguais a" .
      As posições de encaixe (dente) em ambos os lados das opções da caixa suspensa podem ser incorporadas com módulos numéricos e variáveis ​​(desde que o módulo retorne um valor numérico).

      img

      Um exemplo de uso do "Módulo Condicional" e do "Módulo de Comparação de Valor" para combinar em um exemplo de julgamento de valor:

      img
      Como você pode ver, este exemplo tem um total de 3 ramificações ao julgar as condições.

      Assim como o uso de instruções if em estratégias JavaScript.

      function main () { var a = 1 var b = 2 if (a > b) { Log("a > b") } else if (a < b) { Log("a < b") } else { Log("a == b") } }
    • 3. Módulo Lógico OU, Lógico E

      Este módulo é usado para executar a "operação OR" ou "operação AND". Os módulos envolvidos na operação (que podem ser módulos que retornam valores booleanos ou módulos que retornam valores numéricos) são embutidos nas posições de espiga (tenon) em ambos os lados das opções da caixa suspensa no meio do módulo.

      img

      Antes de testarmos este módulo especificamente, vamos primeiro aprender sobre o módulo que representa o valor booleano "true"/"false" (definido usando a caixa suspensa), o módulo que representa o valor booleano "not" e o módulo que representa o valor vazio.

      img

      • Módulos vazios representamnull Valor, usado para comparar se alguma variável é nula.
      • Os módulos Booleanos True/False representamtrue / false Valor, usado para determinar o valor booleano retornado por determinados módulos ou combinações de módulos.
      • O módulo booleano "não" representa o! , usado para executar uma operação booleana NOT.

      Exemplo de teste:

      img

      Você pode ver que os módulos "OR lógico, E lógico" também podem ser aninhados.

      Exemplo de emenda de módulo aninhado:

      img

      Código de política JavaScript equivalente:

      function main () { var a = 1 var b = 2 Log((true && !false) || (a==b)) Log(null) }

      !false não é false, ou seja, é um valor true. Expressão lógica: (true && !false): dois valores true são operados e o resultado é true.
      a==b obviamente não é igual, então é falso.
      Um valor verdadeiro e um valor falso são logicamente combinados para produzir um valor verdadeiro.

      Resultados da corrida:
      img

    • 4. Módulo de operação ternário

      Este módulo também é chamado de módulo de asserção e sua função é semelhante ao operador ternário em algumas linguagens de programação.

      img

      Este módulo também pode ser aninhado. A essência do módulo de operação ternária também é lógica de julgamento condicional, e sua função é similar à do módulo condicional.

      Refatore o tutorial do Módulo Condicional acima usando o Módulo de Operação Ternária.
      O seguinte é um exemplo:

      img

      Aqui está o código da política escrito em JavaScript:

      function main () { var a = 1 var b = 2 Log(a < b ? b : (a > b ? a : "相等")) }

      Se estiver interessado, você pode ajustar os valores de a e b e executar um backtest.

  • Tipo de módulo de matemática

    Em muitos dos exemplos explicados anteriormente, usamos alguns módulos matemáticos em maior ou menor grau.
    A seguir explicaremos alguns módulos de matemática que ainda não aprendemos.

    • 1. Módulo de função trigonométrica

      Observe que os parâmetros preenchidos para a posição do encaixe (espiga) deste módulo são valores de ângulo, não valores de radianos.

      img

    • 2. Módulo numérico Pi

      img

      Impressão de backtest:
      img

    • 3. Módulo de número aleatório dentro de um determinado intervalo de valores

      Este módulo pega um número aleatório dentro de um intervalo numérico definido. A posição do módulo tenon (côncavo) pode preencher diretamente o valor numérico, ou usar uma variável como o valor inicial e final do intervalo aleatório.

      img

      Como o código de estratégia JavaScript:

      function main () { var a = 1 var b = 9 Log(_N(a + Math.random() * (b - a), 0)) }
    • 4. Módulo de intervalo de valor limite

      Este módulo limitará as variáveis ​​preenchidas na primeira posição do espigão (tenon) ao intervalo definido para as posições do segundo e terceiro espigão (tenon).
      Se o valor for maior que o valor máximo do intervalo, o módulo retorna o valor máximo do intervalo. Se o valor for menor que o valor mínimo do intervalo, o módulo retorna o valor mínimo.
      Se estiver dentro desse intervalo, o valor da própria variável que assume o valor da primeira posição do encaixe (côncavo) é retornado.

      img

      Como o código de estratégia JavaScript:

      function main () { var a = 9 Log(Math.min(Math.max(2, a), 5)) }
    • 5. Módulo restante

      Este módulo executa operações numéricas de resto nos módulos numéricos definidos para as posições de encaixe (ranhura).

      img

      64 dividido por 10 é 6 com resto 4.
      img

    • 6. Módulo de operação de lista

      Este módulo opera em um módulo de lista (calculando a soma dos elementos em uma lista, etc.).

      img

      img

      Como o código de estratégia JavaScript:

      function sum (arr) { var ret = 0 for (var i in arr) { ret += arr[i] } return ret } function main () { var b = 2 var a = 1 Log(sum([b,a,b,a,a])) }

Exemplo de estratégia de visualização:

Mais estratégias estão disponíveis em: https://www.fmz.cn/square

Outros artigos desta série

Programação chata pode ser facilmente concluída usando blocos de construção. Experimente, é muito interessante!

Related Recommendations
Comment
All comments (0)
No data
No data
  • 1
iPhone Download
Forums
PINE Language
© 2015 - ∞ INVENTOR PTE LTD (SG)