No StrategyQuant X 131, adicionamos dois novos blocos de comparação. Neste artigo, discutiremos esses blocos em mais detalhes. Os blocos de comparação são trechos que podem ser usados no Algo wizard ou no Builder e são usados para comparar dois valores. ( Esquerda e Direita )

Basicamente, Greater Count / Lower Count compara quantas barras a condição foi atendida.
- Greater Count verifica a condição de que X é maior ou igual a Y, para o número especificado de barras.
- Lower Count verifica a condição de que X é menor ou igual a Y, para o número especificado de barras.
Os blocos de comparação também são usados no Builder, onde o mecanismo genético procura novas combinações de blocos para criar uma estratégia algorítmica lucrativa.
Vamos agora mostrar dois exemplos de como criar e testar esses blocos:
Regras consecutivas do RSI
No primeiro exemplo, mostramos como criar um bloco personalizado - RSI ( 14 ) é maior que um valor de 50 X barras consecutivas em uma linha. Na primeira etapa, selecionamos o bloco de comparação É maior para barras X.

Podemos escolher várias configurações parametrizáveis para um determinado bloco
Podemos definir o Barras - um número de barras que devem atender à condição e o Permitir os mesmos valores opção. Permitir os mesmos valores é útil em uma situação em que há uma condição em que os dois valores são iguais. Por exemplo, quando o RSI tem duas barras seguidas com o mesmo valor.
Depois de selecionarmos um bloco de comparação específico, o SQX nos oferece a configuração real do bloco. Definimos o indicador esquerdo e o indicador direito.

Em nosso caso, compararemos o RSI (14) e o valor 50.

É aconselhável parametrizar também o bloco personalizado fornecido. Escolhemos o número de barras durante as quais a condição dada é válida, o período do RSI e o valor acima do qual o RSI deve estar para X barras.

É uma boa prática criar uma regra oposta. Em nosso caso, criamos uma condição de espelho que é inferior para barras X, modificando ligeiramente nos parâmetros do bloco apenas o valor variável do RSI, que mudamos para o intervalo 20-50.

Barras consecutivas para cima/para baixo
Vamos agora mostrar um exemplo de criação de barras consecutivas para cima/para baixo. Defina a barra PARA CIMA quando o preço de fechamento for maior que o preço de abertura e vice-versa.
Semelhante aos exemplos acima, o uso é Contagem maior com a condição Fechar > Abrir.

Para o bloco oposto, usamos Lower Count para criar um bloco cujo corpo contém a seguinte condição Close < Open

Detecção de falsas fugas
Outra maneira, um pouco mais complicada, é usar a contagem maior/menor para detectar falsos rompimentos. Vamos começar com a definição de rompimento de alta semanal.

Um rompimento de alta semanal pode ser definido simplesmente como uma condição em que a última alta é igual à alta semanal atual.
Neste ponto, vamos considerar quando ocorre um falso rompimento? Ele ocorre quando o preço gera uma nova máxima, mas depois fica estagnado e não se move. Essa condição pode durar várias barras. Para resolver essa situação, podemos definir neste ponto que tais situações são cobertas somente pela parametrização do parâmetro Turno parâmetro.

Ao adicionar o Barras atrás Com base nos parâmetros, podemos capturar situações em que as barras semanais High Bars Ago foram quebradas no passado.
Para poder detectar que o preço está abaixo da máxima semanal atual e também do número de barras X atrás para romper o rompimento semanal, adicionamos o bloco de comparação Lower Count.

Um bloco preparado dessa forma nos permite filtrar essas situações com eficiência. Há um pequeno problema com dois parâmetros idênticos: Bars Ago e Bars Ago Int. Normalmente, eles são as mesmas variáveis, mas devem ser declarados separadamente. Isso é necessário para a funcionalidade correta das outras funções no SQX. De qualquer forma, temos duas maneiras de resolver esse problema.
- Deixamos que o mecanismo SQX encontre uma solução por si só, mas isso leva mais tempo durante a geração da estratégia
- Ajudamos o SQX definindo conjuntos de parâmetros na configuração do construtor
Na imagem abaixo, vemos um bloco personalizado HighWeekBreakout com conjuntos de parâmetros definidos e uma maior ponderação dessas configurações que garante que o construtor priorize os conjuntos de parâmetros que definimos.

Para o bloco oposto, usamos uma lógica semelhante com Low, Weekly Low e Greater Count.
Conclusão
Os procedimentos acima podem ser usados no design da estratégia diretamente no Algo Wizard ou no StrategyQuantX builder. Ao usar blocos personalizados, você pode direcionar melhor a estratégia de negociação desejada e reduzir os graus de liberdade. É preciso ser criativo ao criar blocos como esse. O ideal é que você tenha ideias semelhantes observando os gráficos e procurando cenários possíveis.