Picador de estoque - Introdução de um novo motor em StrategyQuant X

Há muitas maneiras de negociar ações (ações, ETFs, etc.). A SQX tem a capacidade de gerar, pesquisar e negociar estratégias comerciais "padrão" de um único ativo que negocie um ativo individual - seja ele forex, contrato futuro, ações ou ETFs.

Mas a natureza das ações permite muitos outros estilos comerciais:

  • Rotação / reequilíbrio de ativos - onde você reequilibra o peso de diferentes ativos em sua carteira
  • Comércio de pares e similares - onde você negocia as diferenças entre os pares de ações correlatas ou cointegradas
  • Coleta de estoque - onde você negocia um grupo inteiro de ações. Há até mesmo múltiplos estilos diferentes de coleta de estoque.
  • ... e há outros estilos ainda mais "exóticos

 

O comum com estes diferentes estilos de algoritmos de negociação de ações é que eles geralmente negociam grupos de ações - ou várias ações em um grupo, vários pares de ações, ou centenas de ações que constituem índices como S&P 500.

 

Note que este tipo de algoritmo de negociação não é o mesmo que usar um símbolo e definir gráficos adicionais com outro símbolo. Isto é possível no SQX neste momento, mas não nos dá a possibilidade de criar este tipo especial de estratégias de ações.

 

Para oferecer aos nossos usuários acesso a esta nova vasta área de estratégias possíveis, estamos introduzindo um novo motor Stockpicker no SQX - ele estará no próximo Build 136.

 

Nosso novo motor Stockpicker utiliza o terceiro estilo mencionado de negociação de ações - ele apóia estratégias que negociam grande número de ações, por exemplo, 500 ações no índice S&P 500 ou 2000 ações no índice Russel 2000.


De acordo com nosso melhor conhecimento EstratégiaQuant X é a PRIMEIRA E ÚNICA plataforma do MUNDO que oferece geração automática e pesquisa deste tipo de estratégias e você, como nossos usuários, é o primeiro que pode se beneficiar com isso.

Nota - este novo motor e seu retrocesso e geração de estratégias ainda está em desenvolvimento no momento da redação deste artigo. A primeira visualização está disponível na versão SQX Build 136 Dev 1, mas ainda é uma primeira visualização e ainda há algum trabalho sobre ela até o lançamento final.
Este artigo é apenas um primeiro da série onde explicaremos este estilo comercial, o novo motor e suas possibilidades.

 

Introduzindo grupos de estoque

Como dito anteriormente, o motor Stockpicker cria uma estratégia que comercializa grupos de ações, não ativos individuais. A fim de apoiá-lo, adicionamos um novo Grupos de estoque característica para Gerente de dados:

Grupo de Estocadores

Ele já contém índices padrão predefinidos, e permite criar seus próprios grupos de estoque.

Para distinguir os grupos de estoque dos símbolos padrão, eles estão incluídos em [ ]por exemplo, [StockGroupName].

Os grupos de estoque padrão (não editáveis) fornecidos por nós estão contidos em cotações duplas [[ ]]

 

O grupo de ações é definido por seu nome e seus constituintes - a lista de ações que ele contém:

Grupo de estoque editar

O motor SQX Stockpicker suporta nativamente Viés de sobrevivência - o que é importante para os testes de retorno realistas (mais sobre isso em outro artigo) - assim você pode adicionar datas de - até quando o estoque pertencia ao índice.

 

Como é a estratégia da Stockpicker

Um exemplo de estratégia de Stockpicker em pseudo código:

//--------------------------------------------------------------------
// Lógica de opções comerciais
//--------------------------------------------------------------------
Tipo de entrada: Em Bar Aberto
Tipo de local de pedido: Imediatamente

//--------------------------------------------------------------------
// Regra de negociação: Longo (Em Bar Aberto)
//--------------------------------------------------------------------
Condição de entrada: (Média móvel adaptativa Kaufman(Gráfico principal, PREÇO_TÍPICO, 146)[2] está subindo para 2 barras a 3 barras atrás)
Ordem: Ordem Longa Aberta no Mercado;
Saída: No final do dia (DayClose)

//--------------------------------------------------------------------
// Regra de negociação: Curta (Em Bar Aberto)
//--------------------------------------------------------------------
Condição de entrada: (Média móvel adaptativa Kaufman(Gráfico principal, PREÇO_TÍPICO, 146)[2] está caindo para 2 barras a 3 barras atrás)
Ordem: Abrir ordem curta no Mercado;
Saída: No final do dia (DayClose)

//--------------------------------------------------------------------
// Regra de negociação: Pontuação da posição (Em Bar Aberto)
//--------------------------------------------------------------------
Posição Pontuação = LowDaily(Gráfico principal)[2];
Posições máximas: 5

A estratégia de estocagem consiste em Longo + Curto e Pontuação da posição regra. Ele é comercializado apenas em um período de tempo diário.

Regras longas e curtas definem:

  • Condição(ões) de entrada - quando a estratégia deve abrir o comércio
  • Ordem - tipo de ordem - Mercado, Stop, Limite
  • Saída - quando deve fechar o comércio

Em nosso exemplo, a estratégia terá um longo sinal de entrada quando:

(Kaufman Adaptive Moving Average(Gráfico principal, PRICE_TYPICAL, 146)[2] está subindo para 2 barras a 3 barras atrás), e irá fechá-lo no final do dia

 

Pontuação da posição regra é uma especialidade das estratégias do Stockpicker. Como a estratégia de Stockpicker negocia em um grupo de ações (por exemplo, 500 ações no índice S&P 500), ela deve determinar quantas posições devem ser abertas em paralelo, bem como o critério sobre como ordenar os sinais de diferentes ações:

  • Posições máximas = 5 significa que esta estratégia abrirá posições no máximo em 5 estoques diferentes em paralelo
  • Pontuação da posição A fórmula é o critério para ordenar quais estoques escolher se há mais de 5 estoques que poderiam ser abertos em um determinado dia.

 

Como funciona o motor Stockpicker:

Este tipo de motor é diferente porque, lembre-se, ele comercializa 500 ações do grupo.

  1. Na entrada - Normalmente no mercado aberto - verificará as regras de Long & Short em todas as ações do grupo que está negociando, por exemplo, em todas as 500 ações do S&P 500. Isto poderia produzir, por exemplo, 12 sinais de entrada diferentes para 12 ações diferentes - AAPL, TSLA, ..., AMZN, GOOG etc.
  2. Em seguida, utiliza o Pontuação da posição Se não houver posições em aberto, ele então escolherá as posições Max destas ações pela maior pontuação. Nosso algoritmo de exemplo seleciona 5 ações com a maior pontuação e as abre no mercado.
  3. Os negócios são fechados de acordo com o regra de saída - por exemplo, no final do dia, e uma nova avaliação é feita novamente no dia seguinte e assim por diante.

O resultado comercial desta estratégia aplicada no grupo de ações S&P 500 poderia ser o seguinte:

comércio de catadores de estoque

Você pode ver que ela abriu 5 estoques diferentes no dia 1, e depois outros 5 estoques no dia 2.

Pode acontecer que menos de 5 ou mesmo nenhum comércio seja aberto em um determinado dia - isso depende das condições de entrada, etc.

A estratégia também pode usar uma regra de entrada diferente de Fechar no final do dia - as negociações podem durar mais de um dia, mas nunca haverá mais de 5 ações abertas ao mesmo tempo.

 

Estratégia de estocagem em AlgoWizard

As estratégias de estocagem têm uma "arquitetura" completamente diferente das estratégias padrão, e acrescentamos este tipo especial de estratégia também no editor AlgoWizard.

A definição da estratégia é bastante simples, consiste em definir regras longas (e curtas):

regra de entrada do catador de estoque

e regra de pontuação da posição:

regra de pontuação da posição do selecionador de estoque

 

Limitações dos coletores de estoque no SQX

Há algumas limitações no SQX com relação ao novo motor Stockpicker e suas estratégias:

O motor do coletor só suporta os indicadores TALib

Neste momento, as estratégias de estocagem podem utilizar apenas indicadores de TALib biblioteca - TALib é uma biblioteca padronizada de indicadores técnicos que consiste em mais de 200+ indicadores mais usados.

Isto significa que os indicadores e sinais internos implementados no SQX não estão, por enquanto, disponíveis para estas estratégias. Isto pode mudar no futuro, mas por enquanto é assim.
Também não há sinais pré-definidos baseados nos indicadores TALib definidos por enquanto.

O código fonte da estratégia Stockpicker está disponível apenas em Pseudo código

Isto está relacionado com a próxima seção - comerciabilidade desta classe de estratégias.

Estratégias de estocagem funcionam apenas em prazos diários

Este tipo de estratégias é comercializado geralmente em um prazo diário, e é o único prazo que é permitido para eles no SQX por enquanto.

A geração e retrocesso das estratégias de Stockpicker é mais lenta que as estratégias "normais

O motor ainda está em desenvolvimento, e será otimizado ainda mais.
Além disso, com o Stockpicker um backtest de estratégia significa que a estratégia é de fato testada em centenas de ações em um determinado grupo de Ações, portanto deve ser um pouco mais lenta que o backtest em um símbolo.

Recursos avançados como ATM e cheques cruzados ainda não funcionam em estratégias de Estocagem

Ainda não há suporte para estas características mais avançadas, mas estamos trabalhando para isso.

 

A negociabilidade das estratégias de Stockpicker e a necessidade de uma nova plataforma de nuvem

Este tipo de estratégias é difícil de negociar automaticamente - não porque seria impossível, mas porque as plataformas de negociação são geralmente voltadas para uma abordagem de uma estratégia por carta.
Não é tão simples como abrir um gráfico em MetaTrader ou Tradestation e anexar uma estratégia a ele, como poderíamos fazer com estratégias "padrão" de algo.

Há programas como o AmiBroker, que poderia retroceder e, para alguns, ampliar o comércio deste tipo de estratégias, há um comerciante de Portfólio em MultiCharts que poderia teoricamente comercializar estas estratégias ao vivo.
Alguns comerciantes que comercializam este tipo de estratégias o fazem manualmente - é possível porque normalmente é preciso verificar o sinal apenas uma ou duas vezes por dia.
Comerciantes mais "avançados" (e alguns dos membros da equipe SQX) que atualmente comercializam estratégias similares usam Python e muita programação e hacks para poder comercializá-los.

Todas estas opções são muito incômodas de usar e propensas a erros. Queremos oferecer uma maneira melhor - não apenas para você, mas também para nós mesmos - porque já comercializamos este tipo de estratégias para.

 

Temos o prazer de anunciar que estamos desenvolvendo nossa própria plataforma de negociação em nuvem que terá um suporte direto para as estratégias de Stockpicker produzidas pela SQX e tornará a negociação extremamente simples.

Uma versão Beta desta plataforma está muito próxima de ser concluída, e será anunciada em breve. Nosso plano é tê-la pronta com o lançamento final do StrategyQuant X Build 136, que oferecerá suporte a estas novas estratégias de Stockpicker.

Assine
Notificação de
8 Comentários
Mais antigo
Novidades Mais Votados
Feedbacks em linha
Ver todos os comentários
Emmanuel
11. 4. 2022 6:01 pm

Excelente! Eu gostaria de testá-lo !!!!

Vishwa
13. 6. 2022 9:53 am

favor enviar-nos o link da versão experimental 136 para testá-la.

Redlock55
3. 2. 2023 1:30 pm

Consegui o novo coletor de estoque SQX build 136. Também temos analisado o AlgoWizard Beta com o comércio via web.

P: Como você importa os strats Stockpicker desenvolvidos na plataforma StratQuantX para o AlgoWizard beta?

tomas262
Admin
Responder a  Redlock55
6. 2. 2023 10:06 pm

Hi,
você precisa salvar as estratégias para os arquivos SQX. Você pode carregar arquivos sqx para a plataforma AlgoWizard

Lluís Hill Planas
Lluís Hill Planas
9. 9. 2023 9:31 am

Excelente! Mas, por favor, adicione um período de tempo semanal e mensal! Além disso, um tutorial sobre a configuração de grupos de ações! Muito obrigado!!!

aeroknight
20. 3. 2024 1:22 pm

Stockpicker (SQX ver 138.1837) is missing MAX and MIN functions from the TA-Lib functions. Cannot make even the most basic breakout strategies on stocks without these.

tomas262
Admin
Responder a  aeroknight
20. 3. 2024 8:41 pm

You can find that under “Functions” -> MAX / MIN

aeroknight
Responder a  tomas262
21. 3. 2024 4:34 am

Obrigado!

Continuar lendo