Encontre milhões de e-books, audiobooks e muito mais com um período de teste gratuito

Apenas $11.99/mês após o término do seu período de teste gratuito. Cancele a qualquer momento.

Aprendizado Profundo Para Finanças
Aprendizado Profundo Para Finanças
Aprendizado Profundo Para Finanças
E-book896 páginas5 horas

Aprendizado Profundo Para Finanças

Nota: 0 de 5 estrelas

()

Ler a amostra

Sobre este e-book

A aprendizagem profunda está ganhando impulso rapidamente no mundo das finanças e do comércio. Mas para muitos traders profissionais, este campo sofisticado tem a reputação de ser complexo e difícil. Este guia prático ensina como desenvolver um modelo de negociação de aprendizado profundo do zero usando Python e também ajuda a criar, negociar e testar algoritmos de negociação com base em aprendizado de máquina e aprendizado por reforço. O livro apresenta estratégias de aprendizagem profunda que combinam análises técnicas e quantitativas. Ao fundir conceitos de aprendizagem profunda com análise técnica, este livro exclusivo apresenta ideias inovadoras no mundo do comércio financeiro. Este guia AZ também inclui uma introdução completa à análise técnica, avaliação de algoritmos de aprendizado de máquina e otimização de algoritmos. Crie e entenda modelos de aprendizado de máquina e aprendizado profundo Explore os detalhes por trás do aprendizado por reforço e veja como ele é usado na negociação Entenda como interpretar métricas de avaliação de desempenho Examine a análise técnica e aprenda como ela funciona nos mercados financeiros Crie indicadores técnicos em Python e combine-os com modelos de ML para otimização Avaliar a rentabilidade e a previsibilidade dos modelos para compreender as suas limitações e potenciall
IdiomaPortuguês
Data de lançamento14 de jan. de 2024
Aprendizado Profundo Para Finanças

Leia mais títulos de Jideon F Marques

Relacionado a Aprendizado Profundo Para Finanças

Ebooks relacionados

Negócios para você

Visualizar mais

Artigos relacionados

Avaliações de Aprendizado Profundo Para Finanças

Nota: 0 de 5 estrelas
0 notas

0 avaliação0 avaliação

O que você achou?

Toque para dar uma nota

A avaliação deve ter pelo menos 10 palavras

    Pré-visualização do livro

    Aprendizado Profundo Para Finanças - Jideon F Marques

    Aprendizado profundo para finanças

    Aprendizado profundo para finanças

    Criando modelos de máquina e aprendizado

    profundo para negociação em Python

    Jideon Marques

    Copyright © 2024 Jideon Marques

    A obra, incluindo todo o conteúdo, é protegida por direitos autorais. Todos os direitos reservados. É proibida a reimpressão ou reprodução (incluindo extratos) sob qualquer forma (impressão, fotocópia ou outro processo), bem como o armazenamento, processamento, duplicação e distribuição por sistemas eletrônicos de qualquer espécie, no todo ou em extratos, sem autorização expressa. do autor.

    Todos os direitos de tradução reservados.

    Publicado de forma independente

    Este conteúdo é fornecido com o único propósito de fornecer informações relevantes sobre um tópico específico para o qual todos os esforços razoáveis foram feitos para garantir que seja preciso e razoável. No entanto, ao adquirir este conteúdo, você concorda com o fato de que o autor, assim como o editor, não são de forma alguma especialistas nos tópicos aqui contidos, independentemente de quaisquer reivindicações como tal que possam ser feitas nele. Como tal, todas as sugestões ou recomendações feitas aqui são feitas exclusivamente para fins de entretenimento. É recomendável que você sempre consulte um profissional antes de realizar qualquer um dos conselhos ou técnicas discutidos aqui.

    A reprodução, transmissão e duplicação de qualquer conteúdo aqui encontrado, incluindo qualquer informação específica ou extensa, será feita como um ato ilegal, independentemente da forma final que a informação assuma. Isso inclui versões copiadas da obra física, digital e de áudio, a menos que o consentimento expresso do Editor seja fornecido com antecedência. Quaisquer direitos adicionais reservados.

    Prefácio

    Aprender nunca esgota a mente.

    Leonardo da Vinci

    O aprendizado de máquina e o aprendizado profundo mudaram completamente o setor financeiro nos últimos anos. Os diferentes modelos de aprendizagem são adequados para um mundo onde os dados são abundantes e contínuos. Os dados são o novo ouro e o seu valor continua a aumentar à medida que análises adequadas levam a decisões empresariais importantes, que são o motor das mudanças económicas.

    A ascensão dos fundos quantitativos é a prova viva de que o mundo da ciência de dados tem muito a oferecer ao mundo comercial. Depois dos traders fundamentais e técnicos, está a emergir uma nova geração de líderes do universo. Estes são os traders quantitativos que dependem de algoritmos baseados em máquinas com operações extremamente complexas que procuram prever e superar os mercados.

    Este livro cobre em detalhes o assunto de aprendizado profundo para finanças.

    Por que este livro?

    Passei minha carreira pesquisando estratégias de negociação, técnicas e tudo relacionado ao mundo financeiro. Ao longo dos anos, familiarizei-me com alguns modelos algorítmicos que têm o potencial de agregar valor à estrutura de negociação.

    Neste livro, discuto diferentes modelos de aprendizagem e suas aplicações no mundo do comércio, com foco em aprendizagem profunda e redes neurais. Meu principal objetivo é abordá-los de forma que todos entendam como funcionam.

    As máquinas podem realizar operações e detecção melhor do que os humanos por vários motivos, um dos quais é a sua objetividade. Isso significa que uma das principais habilidades que você aprenderá é como usar Python para criar os algoritmos necessários para realizar tais operações.

    Conforme mencionado, meu objetivo é fornecer uma introdução abrangente ao uso do aprendizado profundo em finanças. Faço isso discutindo uma ampla variedade de tópicos, incluindo ciência de dados, negociação, modelos de aprendizado profundo e de máquina e aplicativos de aprendizado por reforço para negociação.

    O livro começa com uma visão geral do campo da ciência de dados e seu papel no mundo financeiro. Em seguida, ele se aprofunda nos requisitos de conhecimento, como estatística, matemática e Python, antes de se concentrar em como usar a aprendizagem automática e profunda em estratégias de negociação.

    Quem deve ler?

    Este livro destina-se a um público amplo, incluindo profissionais e acadêmicos de finanças, cientistas de dados, traders quantitativos e estudantes de finanças de qualquer nível. Ele fornece uma introdução completa ao uso de aprendizado de máquina e profundo na previsão de séries temporais e é um recurso essencial para quem deseja compreender e aplicar essas técnicas poderosas.

    O livro pressupõe que você tenha conhecimento básico em programação Python (usuários profissionais de Python acharão o código muito simples) e negociação financeira. Adoto uma abordagem clara e simples que foca nos conceitos-chave para que você entenda o propósito de cada ideia.

    Convenções utilizadas neste livro

    As seguintes convenções tipográficas são usadas neste livro:

    itálico

    Indica novos termos, URLs, endereços de e-mail, nomes de arquivos e extensões de arquivos.

    Largura constante

    Usado para listagens de programas, bem como dentro de parágrafos para se referir a elementos de programas, como nomes de variáveis ou funções, bancos de dados, tipos de dados, variáveis de ambiente, instruções e palavras-chave.

    Largura constante em negrito

    Mostra comandos ou outros textos que devem ser digitados literalmente pelo usuário.

    Largura constante em itálico

    Mostra o texto que deve ser substituído por valores fornecidos pelo usuário ou por valores determinados pelo contexto.

    Dica

    Este elemento significa uma dica ou sugestão.

    Observação

    Este elemento significa uma nota geral.

    Aviso

    Este elemento indica um aviso ou cuidado.

    Capítulo 1. Apresentando Ciência de Dados e Negociação A melhor maneira de começar a aprender sobre um tópico complexo é dividi-lo em partes menores e entendê-las primeiro. Compreender a aprendizagem profunda para finanças requer conhecimento de ciência de dados e de mercados financeiros.

    Este capítulo estabelece os alicerces necessários para compreender completamente a ciência de dados e seus usos, bem como para compreender os mercados financeiros e como o comércio e a previsão podem se beneficiar da ciência de dados.

    Ao final do capítulo, você deverá saber o que é ciência de dados, quais são suas aplicações e como usá-la em finanças para extrair valor.

    Compreendendo os dados

    É impossível compreender o campo da ciência de dados sem primeiro compreender os tipos e estruturas dos dados. Afinal, a primeira palavra para o nome desse imenso campo é dados. Então, o que são dados? E o mais importante, o que você pode fazer com isso?

    Dados em sua forma mais simples e pura é uma coleção de informações brutas que podem ser de qualquer tipo (numérica, texto, booleana, etc.).

    O objetivo final da coleta de dados é a tomada de decisões. Isso é feito por meio de um processo complexo que vai desde o ato de coletar e processar dados até interpretá-los e usar os resultados para tomar uma decisão.

    Vejamos um exemplo de uso de dados para tomar uma decisão. Suponha que você tenha um portfólio composto por cinco ações diferentes que pagam dividendos com pesos iguais, conforme detalhado emTabela 1-1.

    Tabela 1-1. Ações e seus rendimentos de dividendos Estoque Rendimento de dividendos

    A

    5,20%

    B

    3,99%

    C

    4,12%

    D

    6,94%

    E

    5,55%

    Observação

    Um dividendo é o pagamento feito aos acionistas a partir dos lucros de uma empresa.

    O rendimento de dividendos é o valor distribuído em unidades monetárias sobre o preço atual das ações da empresa.

    A análise desses dados pode ajudá-lo a compreender o rendimento médio de dividendos que você recebe de seu portfólio. A média é basicamente a soma dividida pela quantidade e fornece uma visão rápida do rendimento geral de dividendos do portfólio:

    5.20% + 3.99% + 4.12% + 6.94% + 5.55%

    Averagedividendyield =

    = 5.16%

    5

    Portanto, o rendimento médio de dividendos da sua carteira é de 5,16%. Essas informações podem ajudá-lo a comparar seu rendimento médio de dividendos com outras carteiras, para que você saiba se precisa fazer algum ajuste.

    Outra métrica que você pode calcular é o número de ações mantidas na carteira. Isto pode constituir o primeiro elemento informativo na construção de um muro de diversificação. Embora estas duas informações (rendimento médio de dividendos e número de ações na carteira) sejam muito simples, a análise complexa de dados começa com métricas simples e pode, por vezes, não exigir modelos sofisticados para interpretar adequadamente a situação.

    As duas métricas calculadas no exemplo anterior são chamadas de média (ou média) e contagem (ou número de elementos). Eles fazem parte de um campo chamado estatística descritiva, discutido emCapítulo 3, que também faz parte da ciência de dados.

    Vejamos outro exemplo de análise de dados para fins inferenciais. Suponha que você calculou uma medida de correlação anual entre duas commodities e deseja prever se a próxima correlação anual será positiva ou negativa.Tabela 1-2tem os detalhes dos cálculos.

    Tabela 1-2. Medidas de correlação anuais

    Ano

    Correlação

    2015 Positivo

    2016 Positivo

    2017 Positivo

    2018 Negativo

    2019 Positivo

    2020 Positivo

    2021 Positivo

    2022 Positivo

    2023 Positivo

    Observação

    Correlação é uma medida da confiança linear entre duas séries temporais. Uma correlação positiva geralmente significa que as duas séries temporais se movem, em média, na mesma direção, enquanto uma correlação negativa geralmente significa que

    as duas séries temporais se movem, em média, em direções opostas. A correlação é discutida emCapítulo 3.

    DeTabela 1-2, a correlação histórica entre as duas mercadorias foi maioritariamente (ou seja, 88%) positiva. Levando em conta as observações históricas, podemos dizer que há 88% de probabilidade de que a próxima medida de correlação seja positiva.

    Isto também significa que há uma probabilidade de 12% de que a próxima medida de correlação seja negativa:

    8

    𝐸(Positivecorrelation) =

    = 88.88%

    9

    Este é outro exemplo básico de como usar dados para tirar inferências de observações e tomar decisões. Claro, a suposição aqui é que os resultados históricos refletirão exatamente os resultados futuros, o que é improvável na vida real, mas ocasionalmente, para prever o futuro, tudo o que você tem é o passado.

    Agora, antes de discutir a ciência de dados, vamos revisar quais tipos de dados podem ser usados e segmentá-los em diferentes grupos:

    Dados numéricos

    Este tipo de dados é composto por números que refletem um determinado tipo de informação que é coletada em intervalos regulares ou irregulares. Os exemplos podem incluir dados de mercado (OHLC,1volume, spreads, etc.) e dados das demonstrações financeiras (ativos, receitas, custos, etc.).

    Dados categóricos

    Dados categóricos são dados que podem ser organizados em grupos ou categorias usando nomes ou rótulos. É qualitativo e não quantitativo. Por exemplo, o tipo sanguíneo dos pacientes é um tipo de dado categórico. Outro exemplo é a cor dos olhos de diferentes amostras de uma população.

    Dados de texto

    Os dados de texto têm aumentado nos últimos anos com o desenvolvimento do processamento de linguagem natural (PNL). Os modelos de aprendizado de máquina usam dados de texto para traduzir, interpretar e analisar o sentimento do texto.

    Dados visuais

    Imagens e vídeos também são considerados dados e você pode processá-los e transformá-los em informações valiosas. Por exemplo, uma rede neural convolucional (CNN) é um tipo de algoritmo (discutido emCapítulo 8) que pode reconhecer e categorizar fotos por rótulos (por exemplo, rotular fotos de gatos como gatos).

    Dados de áudio

    Os dados de áudio são muito valiosos e podem ajudar a economizar tempo nas transcrições. Por exemplo, você pode usar algoritmos de áudio para criar legendas e criar legendas automaticamente. Você também pode criar modelos que interpretam o sentimento do locutor usando o tom e o volume do áudio.

    Ciência de dados é um campo transdisciplinar que tenta extrair inteligência e conclusões de dados utilizando diferentes técnicas e modelos, sejam eles simples ou complexos. O processo de ciência de dados é composto por muitas etapas além de apenas analisar os dados. O seguinte resume essas etapas: 1. Coleta de dados: Este processo envolve a aquisição de dados de fontes confiáveis e precisas. Uma frase amplamente conhecida na ciência da computação, geralmente creditada a George Fuechsel, é Entra lixo, sai lixo e se refere à necessidade de ter dados de qualidade nos quais você possa confiar para uma análise adequada. Basicamente, se você tiver dados imprecisos ou defeituosos, todos os seus processos serão inválidos.

    2. Pré-processamento de dados: Ocasionalmente, os dados que você adquire podem estar em formato bruto e precisam ser pré-processados e limpos para que os modelos de ciência de dados possam usá-los. Por exemplo, descartar dados desnecessários, adicionar valores ausentes ou eliminar dados inválidos e duplicados pode fazer parte da etapa de pré-processamento. Outros exemplos mais complexos podem incluir normalização e eliminação de ruído de dados. O

    objetivo desta etapa é preparar os dados para análise.

    3. Exploração de dados: Durante esta etapa, é realizada pesquisa estatística básica para encontrar tendências e outras características nos dados. Um exemplo de exploração de dados é calcular a média dos dados.

    4. Visualização de dados: esta é uma etapa importante que complementa a etapa anterior. Inclui a criação de visualizações como histogramas e mapas de calor para ajudar a identificar padrões e tendências e facilitar a interpretação.

    5. Análise de dados: Este é o foco principal do processo de ciência de dados. É

    quando você ajusta (treina) os dados usando diferentes modelos de aprendizagem para que eles interpretem e prevejam o resultado futuro com base nos parâmetros fornecidos.

    6. Interpretação de dados: Esta etapa trata da compreensão do feedback e das conclusões apresentadas pelos modelos de ciência de dados. A otimização também pode fazer parte desta etapa; nesses casos, voltamos à etapa 5 e executamos os modelos novamente com os parâmetros atualizados antes de reinterpretá-los e avaliar o desempenho.

    Vejamos um exemplo simples em Python que aplica as etapas do processo de ciência de dados. Suponha que você queira analisar e prever o VIX (índice de volatilidade), um indicador de série temporal de volatilidade que representa a volatilidade implícita do índice do mercado de ações S&P 500. O VIX está disponível desde 1993 e é emitido pela Chicago Board Options Exchange (CBOE).

    Observação

    Há também uma etapa oculta no processo de ciência de dados que chamo de etapa zero, e ocorre quando você forma uma ideia com base em qual processo deve ser iniciado. Afinal, você não estaria aplicando o processo se não tivesse primeiro um motivo. Por exemplo, acreditar que os números da inflação podem impulsionar os

    retornos de determinadas commodities é uma ideia e um motivo para começar a explorar os dados em busca de números reais que comprovem esta hipótese.

    Como se destina a medir o nível de medo ou incerteza no mercado de ações, o VIX é frequentemente referido como índice do medo. É uma percentagem calculada utilizando a precificação de opções no S&P 500. Um valor VIX mais elevado está correlacionado com uma maior turbulência e incerteza do mercado, enquanto um valor mais baixo está correlacionado com uma maior estabilidade, em média.

    O primeiro passo é a coleta de dados, que neste caso pode ser automatizada usando Python. O bloco de código a seguir se conecta ao site do Federal Reserve de Saint Louis e baixa os dados históricos do VIX entre 1º de janeiro de 1990 e 23 de janeiro de 2023

    (Capítulo 6dedica-se a apresentar Python e escrever código; por enquanto, você não precisa entender o código, pois esse ainda não é o objetivo):

    # Importando a biblioteca necessária

    importar pandas_datareader como pdr

    #Definindo o início e o fim dos dados históricos

    data_inicial = '1990-01-01'

    data_final = '23/01/2023'

    # Criando um dataframe e baixando os dados VIX

    vix = pdr.DataReader('VIXCLS', 'fred', data_inicial, data_final)

    # Imprimindo as últimas cinco observações do dataframe imprimir(vix.tail())

    O código usa a biblioteca pandas para importar a função DataReader, que busca os dados históricos online de diversas fontes. A função DataReader leva o nome dos dados como primeiro argumento, seguido pela fonte e pelas datas. A saída de print(vix.tail()) é mostrada emTabela 1-3.

    Tabela 1-3. Saída de print(vix.tail())

    DATA

    VIXCLS

    17/01/2023 19h36

    01/01/2023 20h34

    19/01/2023 20.52

    2023-01-20 19h85

    23/01/2023 19.81

    Vamos para a segunda etapa: pré-processamento de dados. Divido esta parte em verificação de dados inválidos e transformação dos dados para que estejam prontos para uso. Ao lidar com séries temporais, especialmente séries temporais baixadas, às vezes você pode encontrar valores nan. NaN significa Not a Number, e os valores nan ocorrem devido a dados ausentes, inválidos ou corrompidos.

    Você pode lidar com valores nan de várias maneiras. Para fins deste exemplo, vamos usar a maneira mais simples de lidar com esses valores inválidos, que é eliminá-los.

    Mas primeiro, vamos escrever um código simples que produza o número de nan valores no dataframe para que você tenha uma ideia de quantos valores irá excluir:

    # Calculando o número de valores nan

    contagem_nan = vix['VIXCLS'].isnull().sum()

    # Imprimindo o resultado

    print('Número de valores nan no dataframe VIX: ' + str(count_nan)) O código usa a função isnull() e soma o número obtido, o que fornece o número de nan valores. A saída do trecho de código anterior é a seguinte: Número de valores nan no dataframe VIX: 292

    Agora que você tem uma ideia de quantas linhas irá excluir, você pode usar o seguinte código para eliminar as linhas inválidas:

    # Removendo os valores nan das linhas

    vix = vix.dropna()

    A segunda parte da segunda etapa é transformar os dados. Os modelos de ciência de dados normalmente requerem dados estacionários, que são dados com propriedades estatísticas estáveis, como a média.

    Observação

    O conceito de estacionariedade e as métricas estatísticas necessárias são discutidas em detalhes emCapítulo 3. Por enquanto, tudo que você precisa saber é que é provável que você tenha que transformar seus dados brutos em dados estacionários ao usar modelos de ciência de dados.

    Para transformar os dados VIX em dados estacionários, você pode simplesmente calcular as diferenças de um valor em relação ao valor anterior. O trecho de código a seguir pega o dataframe VIX e o transforma em dados estacionários teoricamente implícitos:2

    # Tomando as diferenças na tentativa de tornar os dados estacionários vix = vix.diff(períodos = 1, eixo = 0)

    # Eliminando o primeiro valor do dataframe

    vix = vix.iloc[1: , :]

    A terceira etapa é a exploração de dados, que consiste em compreender os dados que você tem à sua frente, estatisticamente falando. Como você verá métricas estatísticas em detalhes emCapítulo 3, limitarei a discussão apenas ao cálculo da média do conjunto de dados.

    A média é simplesmente o valor que pode representar os outros valores no conjunto de dados se eles elegerem um líder. É a soma dos valores dividida pela sua quantidade. A média é a estatística mais simples no mundo da estatística descritiva e é definitivamente a mais utilizada. A fórmula a seguir mostra a representação matemática da média de um conjunto de valores:

    𝑖

    1

    𝑥 =

    ∑ 𝑥

    𝑛

    𝑖

    𝑖=1

    Você pode calcular facilmente a média do conjunto de dados da seguinte maneira:

    # Calculando a média do conjunto de dados

    média = vix[VIXCLS].média()

    # Imprimindo o resultado

    print('A média do conjunto de dados = ' + str(média))

    A saída do trecho de código anterior é a seguinte:

    A média do conjunto de dados = 0,0003

    A próxima etapa é a visualização de dados, que é considerada principalmente uma etapa divertida. Vamos traçar os valores diferenciados do VIX ao longo do tempo. O

    trecho de código a seguir representa os dados VIX mostrados emFigura 1-1:

    # Importando a biblioteca necessária

    importar matplotlib.pyplot como plt

    # Plotando as últimas 250 observações em preto com um rótulo plt.plot(vix[–250:], cor = 'preto', largura de linha = 1,5, label = 'Alteração no VIX')

    # Traçando uma linha horizontal tracejada vermelha que seja igual à média plt.axhline(y = média, cor = 'vermelho', estilo de linha = 'tracejado')

    # Chamando uma grade para facilitar o componente visual grade()

    # Chamando a função de legenda para que ela apareça no gráfico plt.legenda()

    # Chamando o enredo

    plt.show()

    Figura 1-1. Mudança no VIX desde o início de 2022

    As etapas 5 e 6, análise e interpretação de dados, são o que você estudará detalhadamente neste livro, portanto, vamos ignorá-las por enquanto e nos concentrar na parte introdutória da ciência de dados.

    Voltemos ao problema dos dados inválidos ou ausentes antes de prosseguir. Às vezes, os dados estão incompletos e faltam células. Embora isto tenha o potencial de prejudicar a capacidade preditiva do algoritmo, não deve impedi-lo de continuar a análise, pois existem soluções rápidas que ajudam a diminuir o impacto negativo das células vazias. Por exemplo, considereTabela 1-4.

    Tabela 1-4. PIB trimestral

    Trimestre

    PIB

    1º trimestre de 2020 0,9%

    2º trimestre de 2020 1,2%

    3º trimestre de 2020 0,5%

    4º trimestre de 2020 0,4%

    1º trimestre de 2021 #N / D

    2º trimestre de 2021 1,0%

    3º trimestre de 2021 1,1%

    4º trimestre de 2021 0,6%

    A tabela contém o produto interno bruto (PIB) trimestral3de um país hipotético.

    Observe como falta o valor da tabela para o primeiro trimestre de 2021. Existem três maneiras básicas de resolver esse problema:

    Exclua a célula que contém o valor ausente.

    Esta é a técnica usada no exemplo VIX. Simplesmente considera que o carimbo de data/hora não existe. É a solução mais fácil.

    Suponha que a célula ausente seja igual à célula anterior.

    Esta também é uma solução simples que visa suavizar os dados em vez de ignorar completamente o problema.

    Calcule uma média ou mediana das células em torno do valor vazio.

    Esta técnica leva a suavização um passo adiante e assume que o valor ausente é igual à média entre os valores anteriores e seguintes. Além disso, pode ser a média de algumas observações anteriores.

    A ciência de dados compreende uma variedade de conceitos matemáticos e estatísticos e requer um conhecimento profundo de algoritmos de aprendizado de máquina. Neste livro, esses conceitos são discutidos detalhadamente, mas também de uma maneira fácil de entender, para beneficiar leitores técnicos e não técnicos. Muitos modelos são considerados caixas misteriosas, e há um toque de verdade nisso, mas o trabalho de um cientista de dados é compreender os modelos antes de interpretar seus resultados. Isso ajuda a compreender as limitações dos modelos.

    Este livro usa Python como linguagem de programação ideal para criar os algoritmos.

    Como mencionado,Capítulo 6apresenta Python e o conhecimento necessário para manipular e analisar os dados, mas também fornece as bases para a criação de diferentes modelos, que, como você verá, são mais simples do que você imagina.

    Antes de passar para a próxima seção, vamos dar uma olhada no conceito de armazenamento de dados. Afinal, os dados são valiosos, mas você precisa armazená-los em um local onde possam ser facilmente obtidos e analisados.

    Armazenamento de dados refere-se às técnicas e áreas utilizadas para armazenar e organizar dados para análises futuras. Os dados são armazenados em vários formatos, como CSV e XLSX. Outros tipos de formatos podem incluir XML, JSON e até JPEG para imagens. O formato é escolhido de acordo com a estrutura e organização dos dados.

    Os dados também podem ser armazenados na nuvem ou no local, dependendo da capacidade e dos custos de armazenamento. Por exemplo, você pode querer manter seu histórico de um minuto de dados de ações da Apple na nuvem, em vez de em um arquivo CSV, para economizar espaço em seu computador local.

    Ao lidar com séries temporais em Python, você lidará principalmente com dois tipos de armazenamento de dados: arrays e dataframes. Vamos dar uma olhada no que são:

    Variedade

    Um array é usado para armazenar elementos do mesmo tipo. Normalmente, é melhor manter um conjunto de dados homogêneo (como números) em uma matriz.

    Quadro de dados

    Um dataframe é uma estrutura bidimensional que pode conter dados de vários tipos.

    Pode ser comparado a uma tabela com colunas e linhas.

    Em geral, arrays devem ser usados sempre que uma coleção homogênea de dados precisar ser armazenada de forma eficiente. Ao lidar com dados heterogêneos ou quando precisar editar e analisar dados de maneira tabular, você deve usar dataframes.

    Observação

    A ciência de dados está em constante evolução. Novos métodos de armazenamento estão sendo desenvolvidos a todo momento na tentativa de torná-los mais eficientes e aumentar sua capacidade e velocidade.

    Compreendendo a ciência de dados

    A ciência de dados desempenha um papel essencial na tecnologia e no progresso. Os algoritmos dependem de informações fornecidas por ferramentas de ciência de dados para executar suas tarefas. Mas o que são algoritmos?

    Um algoritmo é um conjunto de procedimentos ordenados projetados para concluir uma determinada atividade ou resolver um problema específico. Um algoritmo pode ser tão simples quanto um cara ou coroa ou tão sofisticado quanto o algoritmo de Risch.4

    Vejamos um algoritmo muito simples que atualiza uma plataforma de gráficos com os dados financeiros necessários. Este algoritmo seguiria estas etapas: 1. Conecte o servidor e o provedor de dados online.

    2. Copie os dados financeiros com o carimbo de data/hora mais recente.

    3. Cole os dados na plataforma de gráficos.

    4. Volte à etapa 1 e refaça todo o processo.

    Essa é a natureza dos algoritmos: executar um determinado conjunto de instruções com um objetivo finito ou infinito.

    Observação

    As seis etapas da ciência de dados discutidas na seção anterior também podem ser consideradas um algoritmo.

    As estratégias de negociação também são algoritmos, pois possuem regras claras para o início e liquidação de posições. Um exemplo de estratégia de negociação é a arbitragem de mercado.

    Arbitragem é um tipo de estratégia de negociação que visa lucrar com diferenças de preços de um mesmo ativo cotado em diferentes bolsas. Estas diferenças de preços são anomalias que são apagadas pelos arbitradores através das suas atividades de compra e venda. Considere uma ação negociada na bolsa A e na bolsa B em países diferentes (por razões de simplicidade, os dois países usam a mesma moeda).

    Naturalmente, as ações devem ser negociadas ao mesmo preço em ambas as bolsas.

    Quando esta condição não se verifica, os arbitradores saem dos seus covis para caçar.

    Eles compram as ações na bolsa mais barata e as vendem imediatamente na bolsa mais cara, garantindo assim um lucro praticamente livre de risco. Essas operações são realizadas na velocidade da luz, pois as diferenças de preços não duram muito devido ao poder e à velocidade dos arbitradores. Para esclarecer, aqui está um exemplo:

    O preço da ação na bolsa A = $ 10,00.

    O preço da ação na bolsa B = $ 10,50.

    O algoritmo do arbitrador neste caso fará o seguinte:

    1. Compre as ações na bolsa A por $ 10,00.

    2. Venda as ações imediatamente na bolsa B por $ 10,50.

    3. Embolse a diferença (US$ 0,50) e repita até que a lacuna seja fechada.

    Observação

    Os algoritmos de negociação e execução podem ser altamente complexos e requerem conhecimento especializado e uma certa vantagem de mercado.

    Neste ponto, você deve estar ciente dos dois usos principais da ciência de dados: interpretação de dados e previsão de dados:

    Interpretação de dados

    Também comumente referido como business intelligence ou simplesmente inteligência de dados. O objetivo da implantação dos algoritmos é entender o quê e como dos dados.

    Previsão de dados

    Também comumente chamada de análise preditiva ou simplesmente previsão. O

    objetivo da implantação dos algoritmos é entender o que vem a seguir dos dados.

    O principal objetivo do uso de algoritmos de aprendizagem nos mercados financeiros é prever os preços futuros dos ativos para que você possa tomar uma decisão comercial informada que resulte na valorização do capital com uma taxa de sucesso superior à aleatória. Discuto muitos algoritmos de aprendizagem simples e complexos neste livro. Esses algoritmos ou modelos de aprendizagem podem ser categorizados da seguinte forma:

    Aprendizagem supervisionada

    Algoritmos de aprendizagem supervisionada são modelos que requerem dados rotulados para funcionar. Isso significa que você deve fornecer dados para que o modelo se treine nesses valores passados e compreenda os padrões ocultos para que possa fornecer resultados futuros ao encontrar novos dados. Exemplos de aprendizagem supervisionada incluem algoritmos de regressão linear e modelos florestais aleatórios.

    Aprendizagem não supervisionada

    Algoritmos de aprendizagem não supervisionados são modelos que não requerem dados rotulados para funcionar. Isso significa que eles podem fazer o trabalho com dados não rotulados, uma vez que foram criados para encontrar padrões ocultos por conta própria. Os exemplos incluem algoritmos de agrupamento e análise de componentes principais (PCA).

    Aprendizagem por reforço

    Algoritmos de aprendizagem por reforço são modelos que não necessitam de dados, pois descobrem seu ambiente e aprendem com ele por conta própria. Em contraste com os modelos de aprendizagem supervisionada e não supervisionada, os modelos de aprendizagem por reforço ganham conhecimento através do feedback obtido do ambiente através de um sistema de recompensa. Como isso geralmente se aplica a situações em que um agente interage com o ambiente e aprende a adotar comportamentos que maximizam a recompensa ao longo do tempo, pode não ser o algoritmo ideal para regressão de série temporal. Por outro lado, pode ser usado para

    desenvolver uma política que possa ser aplicada a dados de séries temporais para criar previsões.

    Como você deve ter notado, o título do livro é Deep Learning for Finance. Isso significa que, além de cobrir outros modelos de aprendizagem, passarei uma parte considerável do livro discutindo modelos de aprendizagem profunda para previsão de séries temporais. O aprendizado profundo gira principalmente em torno do uso de redes neurais, um algoritmo discutido em profundidade emCapítulo 8.

    Modelos de aprendizagem supervisionada profunda (como redes neurais profundas) podem aprender representações hierárquicas dos dados porque incluem muitas

    Está gostando da amostra?
    Página 1 de 1