Usando Python e StrategyQuant X

Python é uma poderosa linguagem de programação de propósito geral. É utilizada em ciência de dados, prototipagem de software, aprendizado de máquinas e assim por diante. Python é usado em aplicativos e websites populares como Google, Netflix, Dropbox e muitos outros.

Felizmente para os iniciantes, Python tem uma sintaxe simples e fácil de usar. Estas características fazem de Python uma ótima linguagem para aprender programação para iniciantes. Este post é o início de uma série de artigos discutindo e demonstrando os vários usos para análise com StrategyQuantX. A cada mês acrescentaremos um, sempre focado em um problema particular.

 

Quais são os benefícios mais significativos do Python como uma linguagem de programação?

1.Fácil de ler

Python é uma linguagem visual bem estruturada e de fácil leitura. É semelhante à notação clássica em inglês. Isto torna o código mais claro até mesmo para um programador amador, o que é especialmente benéfico no início.

 

2.Eficiente

Muito importante. O que outra língua pode fazer em 60 linhas, você pode fazer em Python em 6 linhas. E como o objetivo é desenvolver estratégias comerciais e não programar muito, acho que isso é essencial. Você economiza tempo e energia. Além disso, possui gerenciamento automático de memória para que você possa se concentrar no desenvolvimento e não na arquitetura de computadores.

 

3. Forte comunidade e StackExchange

Python é uma linguagem popular e amplamente utilizada, tem uma forte comunidade e suporte, que pode ser vista na plataforma web StackExchange, uma rede de sites de perguntas e respostas (Q&A) sobre vários tópicos, cada site cobrindo um tópico específico. Para programação, há o Stack Overflow do site. Na programação, muitas vezes acontece que algo não funciona para mim ou simplesmente não consigo fazê-lo, e isto é muitas vezes um atalho para idéias ou soluções. Aqui está uma piada inteligente sobre o assunto:

 

4. Muitas Bibliotecas Externas

Python tem um ecossistema sólido e saudável. Não há necessidade de reinventar tudo. A abertura do arquivo XLS é uma questão de 1 linha.

 

Esta, tecnicamente, uma linha de código abrirá seu banco de dados StrategyQuantX exportado. Você pode trabalhar com uma enorme quantidade de dados para manipulá-los, usar algoritmos de paralelização fácil, etc. Os algoritmos de Aprendizagem de Máquina, que são freqüentemente operações matemáticas complexas, podem até ser escritos em algumas linhas.

 

5. Prototipagem de códigos e desenvolvimento rápido

A programação de um fluxo de trabalho analítico não é mais um problema após um breve treinamento em poucas horas. Você será capaz de usá-lo repetidamente e economizar um tempo significativo. Você pode automatizar a gestão da estratégia. Você pode automatizar facilmente atividades simples e economizar muito tempo. 

 

6. Jupyter Notebook IDE a Pandas.

Jupyter Notebook é uma IDE simples, que funciona a partir da janela do seu navegador. Graças a ele, você pode fácil e rapidamente criar protótipos de códigos e idéias sem ter que configurar e controlar aplicações IDE desnecessariamente complicadas.

Pandas é uma biblioteca para manipulação e apresentação de dados. Gosto dela porque pode substituir completamente o Excel e manipular dados rapidamente enquanto é mais simples do que o Excel. Tente abrir um conjunto de dados com 1,2 milhões de linhas no Excel. Em Pandas, é uma questão de segundos.

 

Como usar Python na EstratégiaQuant X

Há muitas possibilidades, e elas podem simplificar seu fluxo de trabalho.

Para que eu uso Python:

  • Análise dos bancos de dados SQX com resultados
  • Criação de scripts de fluxo de trabalho analítico
  • Trabalhando com SQX CLI (Interface de linha de comando)
  • Estratégias de decoro
  • Aprendizagem da máquina
  • Extrair regras das estratégias e criar novos blocos personalizados
  • muitos outros

Aprender a programar não é uma tarefa fácil. No entanto, se você começar com Python, é muito mais fácil. Tente instalar uma IDE Jupyter e assista a um dos muitos tutoriais, mesmo que sejam apenas 5 minutos por dia. Você ficará surpreso com o seu progresso em 1 mês.

O seguinte post explica como instalar e executar o Jupyter IDE para tornar a programação e o aprendizado o mais fácil possível. E No posto seguinte, começaremos a aproveitar ao máximo as capacidades da Panda para analisar estratégias em bancos de dados exportados da StrategyQuant X.

 

clonex / Ivan Hudec

Ivan Hudec — “Clonex” no fórum

Negocio há 15 anos e venho desenvolvendo com o StrategyQuant X desde 2014. Hoje em dia, faço três coisas: desenvolvo e testo estratégias automatizadas em condições reais de mercado, amplio o próprio SQX com indicadores personalizados, trechos de código e ferramentas em Python para aprendizado de máquina e pesquisa quantitativa, e ajudo outros traders a chegarem lá mais rápido — sem passar pelos anos de erros caros que cometi ao longo do caminho.
A maioria das estratégias de trading parece ótima em um backtest, mas desmorona na prática. Meu trabalho é exatamente o oposto: estratégias que são honestas, validadas e robustas o suficiente para que se possa confiar nelas com dinheiro real. Escrevo sobre esse processo — o que dá certo, o que dá errado e o sobreajuste de que ninguém fala — no meu site, algotrading.space.
Se você quiser se aprofundar no tema da validação, no desenvolvimento personalizado de SQX ou na criação de uma vantagem competitiva real com dados e código, é lá que eu compartilho tudo isso.  www.algotrading.space

2 Comentários
mais antigos
mais recentes Mais votado
Karish
Karish
13. 4. 2021 11:07 a.m.

A ciência dos dados é onde está!
ótimo post meu cara!

Martin
Martin
22. 4. 2021 11:14 p.m.

Acredito que uma das maiores cantorias de python e sq é via web testing, você pode automatizar todas as coisas manuais que você faz no SQ usando acesso remoto através de seu navegador e usando selênio, por exemplo. Mesmo fluxos de trabalho complexos, como a seleção de parâmetros WFM, podem ser automatizados. Esta série parece promissora, estou muito interessado em saber como você utiliza a aprendizagem de máquinas para SQ.

Última edição 5 anos atrás por Martin

Continuar lendo