Página 2 de 13

Re: Programação para Finanças (R/Python)

MensagemEnviado: 2/1/2018 17:48
por SFT
CFA não é para o comum dos mortais, infelizmente lol (parabéns aos dois)

Aproveito para informar que o DataCamp está com promoção de princípio do ano, para quem estiver interessado.

Abc.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 29/12/2017 16:05
por Artista Romeno
VirtuaGod Escreveu:
Aposto que para ti o level 1 do CFA foi meio boring

Ou então não. Tive de estudar as 300/350 horas que toda a gente estudou. Fiquei o 2 meses seguintes com o cérebro queimado. Só em Setembro comecei a voltar ao normal (consigo quantificar o meu nível de bem estar intelectual devido às pontuações de xadrez).

E olha que chumbei a FRA. O que me safou foi o conhecimento de mercados. Tudo o que tinha a haver com mercado foi acima de 70% :wink: (e deve ter sido bem acima porque passei mesmo com chumbo a FRA).

eu também tenho o L1, estou agora a estudar po 2

Boa sorte. O meu está programado para 2019.

mas a ti vejo te mais nas programações do que no CFA

É brinquedo novo :-) Mas é praticamente só programação associada a mercados financeiros. Lá vou fazendo outros pequenos cursos de programação on-line mas ou é de estatística ou para aprender pandas.

Mas há coisas muito úteis como webscrapping, manipulação de ficheiros excel e automatização de tarefas. Toda a gente que use excel no trabalho deveria saber Python ou R. Comecei a criar ferramentas que me poupam horas de trabalho. A mais recente foi um script de 5 linhas que me poupou horas (aí umas 7 ou 8).

:arrow: Laziness Makes The World Go Round (50 pics)

Tens um bom curso na udemy para aprender isso. Por 10 ou 12 euros é como se fosse de graça: https://www.udemy.com/automate/

A nível de apresentações ou de (shiny) apps como o site que criei é brilhante.

CFA só feito com 1 ano de estudo, em 6 meses é de cortar os pulsos :mrgreen: eu no level 1 até tive o pico de forma digamos assim 2 meses antes do exame, mas este é mais puxado o do L2. p.s: No L2 o reporting é muito menos

Re: Programação para Finanças (R/Python)

MensagemEnviado: 29/12/2017 15:37
por VirtuaGod
Aposto que para ti o level 1 do CFA foi meio boring

Ou então não. Tive de estudar as 300/350 horas que toda a gente estudou. Fiquei o 2 meses seguintes com o cérebro queimado. Só em Setembro comecei a voltar ao normal (consigo quantificar o meu nível de bem estar intelectual devido às pontuações de xadrez).

E olha que chumbei a FRA. O que me safou foi o conhecimento de mercados. Tudo o que tinha a haver com mercado foi acima de 70% :wink: (e deve ter sido bem acima porque passei mesmo com chumbo a FRA).

eu também tenho o L1, estou agora a estudar po 2

Boa sorte. O meu está programado para 2019.

mas a ti vejo te mais nas programações do que no CFA

É brinquedo novo :-) Mas é praticamente só programação associada a mercados financeiros. Lá vou fazendo outros pequenos cursos de programação on-line mas ou é de estatística ou para aprender pandas.

Mas há coisas muito úteis como webscrapping, manipulação de ficheiros excel e automatização de tarefas. Toda a gente que use excel no trabalho deveria saber Python ou R. Comecei a criar ferramentas que me poupam horas de trabalho. A mais recente foi um script de 5 linhas que me poupou horas (aí umas 7 ou 8).

:arrow: Laziness Makes The World Go Round (50 pics)

Tens um bom curso na udemy para aprender isso. Por 10 ou 12 euros é como se fosse de graça: https://www.udemy.com/automate/

A nível de apresentações ou de (shiny) apps como o site que criei é brilhante.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 29/12/2017 1:56
por Artista Romeno
VirtuaGod Escreveu:Está sim.

Tenho já nos planos uns 18 a 24 meses para gastar fazer nanodegrees da udacity (quero fazer uns 5 ou 6) mas isso só para finais de... 2020.

Tenho a mania de pensar a muito longo prazo :mrgreen: Neste momento acabei de atingir aquilo que eu considero o meu nível 1 (de 3). Que é data analyst e aplicação/programação dos conhecimentos financeiros que já tenho. Em termos de conhecimentos financeiros não tenho evoluído nada, apenas tenho aplicado o que já tinha. Assim com o o nível 1 do CFA (que tirei na Primavera) apenas foi um carimbo no meu já existente conhecimento.

Curvas eficientes, correlações, simulações de Monte Carlo, criação e acompanhamento de carteiras de investimento e análises estatísticas para análise de risco era o objectivo que já foi concluído. Neste momento estou a preparar artigos "aprofundados" com base nisso. Em breve gostaria de (ainda no nível 1 mas a roçar o 2) fazer Random Walks e bootstrapping.

Machine Learning e Métodos econométricos está para 2018 mas vai ser mais no Datacamp (do qual sou subscritor) e quero fazer o caminho de data scientist do dataquest.io. Métodos econométricos vai ser mais à base do Coursera e livros do estilo Introductory Econometrics for Finance 3rd Edition by Chris Brooks e Financial Analytics with R: Building a Laptop Laboratory for Data Science 1st Edition by Mark J. Bennett. Isto é onde se incluiria esse curso do udacity (seria mais para o fim de 2018) mmas como planeio depois fazer os nanodegrees todos seguidos vou acabar por adiar os cursos da udacity. Mas têm muito bom aspecto.

P.S. A documentação do cufflinks é ironicamente mais simples mas a melhor que vejo em open source. Feita em Jupyter notebooks. Podes ver aqui a "oficial" do criador: https://nbviewer.jupyter.org/github/santosjorge/cufflinks/tree/master/. Clica em tudo que tenha extensão ipynb.

Aposto que para ti o level 1 do CFA foi meio boring tens bons conhecimentos, eu também tenho o L1, estou agora a estudar po 2 :) mas a ti vejo te mais nas programações do que no CFA :-k

Re: Programação para Finanças (R/Python)

MensagemEnviado: 29/12/2017 1:52
por VirtuaGod
Isso dos livros depende muito da pessoa e do caminho que pretendes seguir.

Nenhum desses 3 está sequer perto de estar na lista de compras, mesmo o de finanças é demasiado focado em derivados e não em asset allocation.

Livros que estou curioso para além dos 2 acima:

Fundamentals of Machine Learning for Predictive Data Analytics: Algorithms, Worked Examples, and Case Studies (MIT Press) 1st Edition
by John D. Kelleher (Author),‎ Brian Mac Namee (Author),‎ Aoife D'Arcy (Author)

Deep Learning (Adaptive Computation and Machine Learning series) Hardcover – November 18, 2016
by Ian Goodfellow (Author),‎ Yoshua Bengio (Author),‎ Aaron Courville (Author)

Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems 1st Edition
by Aurélien Géron (Author)

An Introduction to Statistical Learning: with Applications in R (Springer Texts in Statistics) 1st ed. 2013, Corr. 7th printing 2017 Edition
by Gareth James (Author),‎ Daniela Witten (Author),‎ Trevor Hastie (Author),‎ Robert Tibshirani (Author)

Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython 2nd Edition
by Wes McKinney (Author)

Este último sendo provavelmente o mais simples. Mas tenho que O livro sobre pandas. O Wes McKinney quando criou o pandas trabalhava num hedge fund e o pandas foi criado com dados financeiros em mente. Entretanto já evoluiu muito mas as sementes estão lá ;-)

Este livro está para o python como o

R for Data Science: Import, Tidy, Transform, Visualize, and Model Data 1st Edition
by Hadley Wickham (Author),‎ Garrett Grolemund (Author)

está para o R. O livro do Wickham é também muito bom. Aliás, só trabalho mais em python por uma questão de visualização. Engraçado como toda a gente prefere a visualização do R, por causa do ggplot 2 mas eu prefiro de longe o matplotlib. Depois acrescentando a isso o cufflinks e o seaborn tenho gráficos que nunca pensei conseguir fazer, e ainda por cima apenas em meia dúzia de linhas (porque sou picuinhas senão eram numa linha como normalmente para EDA simples).

O R com o tidyverse + reports criados pelo yihui + R Shiny é, para mim, um workflow e ferramentas complicadas de bater. As ferramentas de visualização do python são é bastante mais bonitas na minha opinião, mas o trabalhar os dados prefiro R.

Espero é daqui a uns anos haver um salto da linguagem Julia, que provavelmente será o futuro de Datascience a médio prazo.

Em relação a estar tudo alinhado em termos de aprendizagem é simples, é apenas um alinhamento profissional. O caminho a percorrer é simplesmente aquele mais necessário em termos profissionais, por isso nem ligo a algo trading ou a análise fundamental. O objectivo é fazer as melhores carteiras de investimento e report das mesmas.

Tenho muita curiosidade em fazer umas análises estatísticas a volatilidades e ver o que conseguiria fazer em termos de trading com isso, mas com tanto para fazer isso está como hobby para daqui a uns (largos) anos.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 28/12/2017 23:20
por FredericoRocha
Wowo ja tens ai um plano e pêras para os próximos tempos em termos de cursos a fazer :clap:

Eu para ja quero acabar este Nanodegree e depois vou investigar quais serão uns bons potenciais próximos cursos para fazer.

Ja agora aproveito também para perguntar se tens alguma opinião/feedback relativamente a estes livros (estou a pensar mandar vir da amazon):

- Python for Finance by Hilpish
- What hedge funds really do. By Philip Romero and Tucker Balch
- Machine Learning. By Mitchell

Obrigado.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 28/12/2017 18:03
por VirtuaGod
Está sim.

Tenho já nos planos uns 18 a 24 meses para gastar fazer nanodegrees da udacity (quero fazer uns 5 ou 6) mas isso só para finais de... 2020.

Tenho a mania de pensar a muito longo prazo :mrgreen: Neste momento acabei de atingir aquilo que eu considero o meu nível 1 (de 3). Que é data analyst e aplicação/programação dos conhecimentos financeiros que já tenho. Em termos de conhecimentos financeiros não tenho evoluído nada, apenas tenho aplicado o que já tinha. Assim com o o nível 1 do CFA (que tirei na Primavera) apenas foi um carimbo no meu já existente conhecimento.

Curvas eficientes, correlações, simulações de Monte Carlo, criação e acompanhamento de carteiras de investimento e análises estatísticas para análise de risco era o objectivo que já foi concluído. Neste momento estou a preparar artigos "aprofundados" com base nisso. Em breve gostaria de (ainda no nível 1 mas a roçar o 2) fazer Random Walks e bootstrapping.

Machine Learning e Métodos econométricos está para 2018 mas vai ser mais no Datacamp (do qual sou subscritor) e quero fazer o caminho de data scientist do dataquest.io. Métodos econométricos vai ser mais à base do Coursera e livros do estilo Introductory Econometrics for Finance 3rd Edition by Chris Brooks e Financial Analytics with R: Building a Laptop Laboratory for Data Science 1st Edition by Mark J. Bennett. Isto é onde se incluiria esse curso do udacity (seria mais para o fim de 2018) mmas como planeio depois fazer os nanodegrees todos seguidos vou acabar por adiar os cursos da udacity. Mas têm muito bom aspecto.

P.S. A documentação do cufflinks é ironicamente mais simples mas a melhor que vejo em open source. Feita em Jupyter notebooks. Podes ver aqui a "oficial" do criador: https://nbviewer.jupyter.org/github/santosjorge/cufflinks/tree/master/. Clica em tudo que tenha extensão ipynb.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 28/12/2017 13:11
por FredericoRocha
@VirtuaGod: Nunca usei, mas seguindo o teu conselho fui ver a API (https://plot.ly/ipython-notebooks/cufflinks/) e pareceu-me bastante interessante. Ja esta no meu bookmarks para usar e explorar.

Ja agora partilho contigo o curso que estou a fazer, "Machine Learning for Trading" - https://www.udacity.com/course/machine- ... ing--ud501 - Estou a gostar bastante. Nao sei se vai de encontro ao que pretendes fazer com Python mas de qualquer forma fica aqui.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 28/12/2017 12:03
por Artista Romeno
VirtuaGod Escreveu:@FredericoRocha - Já experimentaste o cufflinks? É mais simples que o matplotlib. É só df.iplot() tes é de fazer uns imports no inicio do script (podes ver os imports nos meus scripts. Os do cufflinks e do plotly).

@Artista Romeno - De qualquer das formas tens de aprender a linguagem. Tanto faz como aprendes. Mas só depois de aprender é que podes dar o teu cunho e fazer o que pretendes com ela. Como podes imaginar o que não falta são coisas de trading (via AI, via sentimento, via AT, fundamental etc etc).

Dá uma vista de olhos à quantopian https://www.quantopian.com/tutorials

P.S. Só agora reparei que já estavas no site do Sentdex. Houve algum problema? Isso já é vocacionado para trading!!


obrigado, tenho que tentar pelo quantopian então, aquilo o site que vi ja nao estava atualizado

Re: Programação para Finanças (R/Python)

MensagemEnviado: 28/12/2017 11:40
por VirtuaGod
@FredericoRocha - Já experimentaste o cufflinks? É mais simples que o matplotlib. É só df.iplot() tes é de fazer uns imports no inicio do script (podes ver os imports nos meus scripts. Os do cufflinks e do plotly).

@Artista Romeno - De qualquer das formas tens de aprender a linguagem. Tanto faz como aprendes. Mas só depois de aprender é que podes dar o teu cunho e fazer o que pretendes com ela. Como podes imaginar o que não falta são coisas de trading (via AI, via sentimento, via AT, fundamental etc etc).

Dá uma vista de olhos à quantopian https://www.quantopian.com/tutorials

P.S. Só agora reparei que já estavas no site do Sentdex. Houve algum problema? Isso já é vocacionado para trading!!

Re: Programação para Finanças (R/Python)

MensagemEnviado: 28/12/2017 0:18
por Artista Romeno
eu rendo-me as evidencias, quem não souber isto, é um info excluido :shock: tentei aprender por aqui https://pythonprogramming.net/python-fu ... investing/, mas a integração com o yahoo finance começou logo bem, eu vi o site que disses te virtua e pá mas eu nao quero porfolio eficiente para nada, quero é uma cena que funcione ao contrario dessa teoria :mrgreen: se souberes de um curso disso, agradecia no fundo algo que me ajude a procurar empresas :)

Re: Programação para Finanças (R/Python)

MensagemEnviado: 27/12/2017 23:58
por FredericoRocha
Depois de ter feito um curso inicial de iniciação a Python na Udacity. Comecei um outro curso de Python mas agora mais ligado ao trading onde tenho usado bastante a biblioteca Pandas, Matplotlib e a NumPy.

Alguns exemplos do que tenho andado a brincar:
Imagem
Imagem
Imagem

Re: Programação para Finanças (R/Python)

MensagemEnviado: 10/12/2017 16:38
por VirtuaGod

Re: Programação para Finanças (R/Python)

MensagemEnviado: 6/12/2017 21:04
por VirtuaGod
Depois de cursos/livros em R/Python mais vocacionados para a aplicação financeiras de conhecimentos que tinha estou agora a começar com machine learning e posteriormente deep learning (estou particularmente curioso com recurrent neural networks).

Se alguém quiser umas dicas com o caminho a tomar (mesmo estando a começar) esteja à vontade em questionar.

Tenho essencialmente usado cursos da udemy que compro por 10 euros (façam pesquisa google "udemy 10") com o browser em incognito mode. Tenho encontrado óptimos cursos. Vou complementando uns com os outros e com o datacamp.

Abr

Re: Programação para Finanças (R/Python)

MensagemEnviado: 15/10/2017 15:42
por VirtuaGod
FredericoRocha Escreveu:começar a fazer a regressão linear dos mínimos de cotação de um dado espaço temporal.

Porqueê dos mínimos? Não faria mais sentido a partir do fecho?

Re: Programação para Finanças (R/Python)

MensagemEnviado: 13/10/2017 21:01
por FredericoRocha
Aqui está o código no GitHub:
https://github.com/FredericoRocha/python.git

Este fim de semana tenciono ver a biblioteca que mencionaste (cufflinks), fazer alguma limpeza do código e começar a fazer a regressão linear dos mínimos de cotação de um dado espaço temporal.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 10/10/2017 22:54
por FredericoRocha
Ahah muito bom!

Claro que vou meter aqui o código, tenho só que o meter no GitHub, estou apertado de tempo mas assim que tiver tempo meto aqui.

Obrigado também por essas funções para calcular as médias móveis.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 10/10/2017 14:44
por VirtuaGod
Eu à procura da documentação da função .rolling do pandas e vem isto na primeira página do google :mrgreen: :mrgreen: :mrgreen:

https://www.youtube.com/watch?v=Hbdi4702zvQ

Re: Programação para Finanças (R/Python)

MensagemEnviado: 10/10/2017 13:29
por VirtuaGod
@FredericoRocha

Para fazer médias móveis facilmente.

Assumo um ficheiro SPY.csv com colunas price e date

Código: Selecionar todos
# Importar SPY e reconhecer coluna data como indíce e datas
SPY= pd.read_csv('SPY.csv', index_col = 'date', parse_dates = ['date'])
print(SPY.head()) # sneek preview da data
print(SPY.info()) # Para ver se a coluna date está correctamente reconhecida como datas

# Calcular médias móveis de 90 e 360 dias
SPY['MM90'] = SPY.price.rolling(window='90').mean()
SPY['MM360'] = SPY.price.rolling(window='360').mean()

Re: Programação para Finanças (R/Python)

MensagemEnviado: 10/10/2017 1:07
por VirtuaGod
Não esquecer de partilhar código sff :wink: Só assim aprendemos e nos ajudamos :!:

Re: Programação para Finanças (R/Python)

MensagemEnviado: 9/10/2017 23:42
por FredericoRocha
Aqui temos os primeiros gráficos:

Adj Close:

Imagem

Clandlestick OHLC

Imagem

Próximo passo começar a tentar traçar linhas de tendência

Re: Programação para Finanças (R/Python)

MensagemEnviado: 8/10/2017 21:44
por VirtuaGod
Alternativa à yahoo:

http://blog.fosstrading.com/2017/10/getsymbols-and-alpha-vantage.html

Tenho de testar. Tb deve dar em python porque pode-se ir buscar em .csv 8-)

Re: Programação para Finanças (R/Python)

MensagemEnviado: 8/10/2017 19:19
por VirtuaGod
FredericoRocha Escreveu:Obrigado! Bela ajuda, vou ver em mais detalhe essas bibliotecas.

Possivelmente vou ter que adaptar os meus dados para apenas ficar com os mínimos de um dado temporal e depois fazer a regressão linear só desses pontos e assim talvez consiga obter a linha de tendência que quero. Mas vou investigar e testar.

Sim eu vou querer os meus gráficos com velas.

Quando obtiver algo minimamente venho aqui postar.

Aconselho mesmo que dês uma olhadela ao cufflinks. Para dados financeiros é das melhores coisinhas que encontrei (quem criou foi um indivíduo que trabalha na reuters na secção que é tipo bloomberg).

Tudo interactivo, mais simples que matplotlib (que para todos os efeitos adoro para gráficos estáticos), e tem essa funcionalidade das velas. Não sei é como se faz um gráfico linear com velas (imagino que seja com base nos fechos mas não sei como programar isso).

Fico a aguardar o teu código e outputs. Dá uma vista de olhos à possibilidade de fazeres em jupyter notebooks e colocares no github para partilhares com o pessoal (não faço ideia do teu workflow por isso não sei se te dá muito trabalho mas se já usas Jupyter notebooks é muito simples de partilhar).

Re: Programação para Finanças (R/Python)

MensagemEnviado: 8/10/2017 18:00
por FredericoRocha
Obrigado! Bela ajuda, vou ver em mais detalhe essas bibliotecas.

Possivelmente vou ter que adaptar os meus dados para apenas ficar com os mínimos de um dado temporal e depois fazer a regressão linear só desses pontos e assim talvez consiga obter a linha de tendência que quero. Mas vou investigar e testar.

Sim eu vou querer os meus gráficos com velas.

Quando obtiver algo minimamente venho aqui postar.

Re: Programação para Finanças (R/Python)

MensagemEnviado: 8/10/2017 0:01
por VirtuaGod
Ainda não ando muito por esses lados mas já faço algumas regressões lineares básicas directamente em gráfico graças à espectacular biblioteca cufflinks. Esta é uma biblioteca cujo objectivo é simplesmente simplificar a escrita de código para plotly, que é uma biblioteca de gráficos D3.js (que por sua vez é uma biblioteca de gráficos javascript :shock: )

Tens aqui o código para fazer o gráfico em anexo: https://nbviewer.jupyter.org/github/LuisSousaSilva/Mini-tutorials/blob/master/On%20%27cufflinks%27%20linear%20regression%20%28Python%29.ipynb

Se quiseres algo mais complexo só mesmo com o google :D

P.S: O gráfico é o fecho (ajustado) do SPY nos últimos 10 anos, esqueci-me de colocar título. Tb dá para fazeres velas e gráfico OHLC sem grandes dificuldades graças à biblioteca cufflinks. Eu é que costumo trabalhar só com fecho (ajustado se for necessário)