Outros sites Medialivre
Caldeirão da Bolsa

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

Espaço dedicado a todo o tipo de troca de impressões sobre os mercados financeiros e ao que possa condicionar o desempenho dos mesmos.

Re: Programação em R para Finanças

por VirtuaGod » 18/5/2017 18:46

Varendia Escreveu:Ca estou novamente, agora ando a fazer passos mais pequenos, depois de umas horas ainda nao cheguei a nenhuma conclusao sobre a melhor forma de fazer sair um plot de um correlation triangle heatmap.

Fazes algum plot de correlations? e se sim como?

Ainda não fiz. Mas tenho a ideia que são simples. Estilo 2 linhas de código (para a dataframe) mais linhas para o gráfico.

Algo deste estilo:

:arrow: http://www.statmethods.net/stats/correlations.html

Mas não tendo feito nenhuma ainda não posso dar nenhum tipo de conselho nem código.

Varendia Escreveu:Tens algum B-A-BA de shiny, de como fazer sair graficos todos para Shiny? (DD, CARG, returns, ..... etc...
porque neste momento ja calculo quase tudo, se conseguir fazer as saidas, acabo de vez com o Excel! :arrow:

:arrow: https://shiny.rstudio.com/tutorial/

Shiny é relativamente mais complexo do que escrever em R simples. Extremamente OPP e muito numa perspectiva inputs/outputs. Terias que lhe aprender/fazer mais do que já fizeste para ter um shiny app porreiro.

Ter até tenho :mrgreen: Devo em breve começar a partilhar código de Quantmod e PortfolioAnalytics mas código de shiny apps não partilharei por... motivos.... :lol: :D

Para além que aprenderes as nuances todas para fazeres uns gráficos bonitos dá algum trabalho!!
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 18/5/2017 17:59

Ca estou novamente, agora ando a fazer passos mais pequenos, depois de umas horas ainda nao cheguei a nenhuma conclusao sobre a melhor forma de fazer sair um plot de um correlation triangle heatmap.

Vi as versoes do corrplot, depois vi um comment teu sobre Shiny e do plotly. Muito melhor avancar para um dashborad bem Shiny!

Fazes algum plot de correlations? e se sim como?
Tens algum B-A-BA de shiny, de como fazer sair graficos todos para Shiny? (DD, CARG, returns, ..... etc...
porque neste momento ja calculo quase tudo, se conseguir fazer as saidas, acabo de vez com o Excel!

Depois tenho de comecar a olhar a serio para como fazer seleccao, o problema de aumentar a capacidade de ter dados e computacao e que agora tenho dados a mais; tenho de criar mais criterios de seleccao.

Gracias!
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por VirtuaGod » 16/5/2017 13:05

Sim, via webscrapping é sempre possível. Mas muito provavelmente eles terão uma forma de sacar os dados que pretendes (digo eu).

De momento nem abro o vicio do R que tenho de estudar para o CFA (exame dia 3 de Junho). Por isso antes disso a minha ajuda será limitada ao que já sei e faço. Quandl não uso mas quando tiver tempo (Pós CFA) posso dar uma espreitadela.

De qualquer das formas fazeres um scrip com rvest deve ser simples (mesmo que não seja o mais eficiente)
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 16/5/2017 5:56

Tirar os dados do Quandl e facil, refiro-me a tirar o nome, dados do fundo, data de inicio, etc... essa versao webscrapping que se faz no MS. No Quandl ainda nao fui ver como fazer. Nao se se tem uma versao facil ou se tem de ser como no MS.
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por VirtuaGod » 15/5/2017 17:45

Varendia Escreveu:Ja agora como tiras do Quandl uma lista grande de dados, seleccionas os nomes que queres um a um como os MSids?
E como tiras dados como nome, categoria, etc...no Quandl?

Não trabalho com o quandl mas assumo que seja de forma idêntica ao yahoo finance

Basicamente está aqui tudo:

:arrow: https://www.quandl.com/tools/r

Queres tirar o quê de lá? Os índices NASDAQ? deve ser igual a tirar o SPY do Yahoo.

O que não estás a conseguir fazer?
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 15/5/2017 3:45

Tambem tenho a API to Quandl a funcionar para umas coisas mas achei que me ia dar mais trabalho porque do yahoo tirei uma lista de tickers, fiz um csv e foi directo, do nao sei se nao tinha de tirar o nome 'quandl' de cada coisa. Acho que o Quandl tem uma forma de tirar bulk info, mas nao cheguei la. Deve ser igualmente facil, mas e o tal vicio de se uma coisa funciona,,, :mrgreen:

Por exemplo no Quandl nao apanhei as cotacoes desde sempre do SPY sem ser em Premium.

Ja agora como tiras do Quandl uma lista grande de dados, seleccionas os nomes que queres um a um como os MSids?
E como tiras dados como nome, categoria, etc...no Quandl?

Tirar 400+ ETFs do yahoo demorou um bocado e depois limpar um data frame com 10 a 20 anos de dados de 2400+ colunas fez o computador sofrer um pouco :lol: foram alguns 20 minutos para tudo... mas mais uma vez, 20 minutos nao e nada para o que ficou feito, e agora, junto com umas coisas do FRED, do Quandl e os dados de forex, tenho uma base de dados com pinta para fazer testes e regression.

Ver se faco um triangulo de correlacoes com 500 series para benchmark + 250 fundos/ETFs ... :shock:
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por VirtuaGod » 14/5/2017 18:40

Varendia Escreveu:VG, Ja fizeste webscrapping do yahoo?

Nunca. Obtenho as cotações via API (através do quantmod).
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 14/5/2017 17:13

Webscraping dos MSids a funcionar.

Tive de usar o write.table em vez do write.csv2 para conseguir ler de volta e voltar a ter o mesmo ficheiro.

Amanha fazer a transformacao para euros de todas as bases de dados.

VG, Ja fizeste webscrapping do yahoo?
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por Varendia » 13/5/2017 15:44

Tive mesmo de recomecar as coisas, a perceber o que ja tinha feito.

Ja estou em dia com o que tinha (que e mais ou menos muita base de dados e algum calculo).
Fiz mais um script para ir buscar os ETFs que me vao servir de backtesting.

3 horas para limpar os erros dos tickers que nao funcionam e ter uma base de dados arrumada. 491 ETFs todos desde 2000/2007. Muita coisa para as minhas regressoes!

Hoje ainda me atiro a base de dados dos fundos outra vez para juntar os fundos da shortlist.
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por Varendia » 8/5/2017 16:36

Primeiro passo feito.

R Studio e o Microsoft R Open actualizados.
Packages actualizados.

Estou a ler (na versao acelerada) este livro online para me recordar do basico antes de me atirar aos scripts outra vez. Ja aprendi umas coisas...
Amanha ver se comeco a correr scripts para confirmar (e me lembrar) os que ja tenho a funcionar :shock:
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por LoneWolf » 8/5/2017 12:04

Olá! :D
Bom reanimar o topico.
Também investi pouquissimo tempo em ler e aprender sobre estatistica para finanças. Tenho apenas andado a brincar com gráficos, linhas, tendencias, etc.
Por acaso estou surpreendido com os resultados q tenho obtido mas, para já, pode ser tudo acaso da bolsa estar a subir.

Obrigado pelo link do livro. Era fixe passar aquilo para epub ou mobi para pôr no meu e-reader.

Cumps,
LoneWolf
Avatar do Utilizador
 
Mensagens: 1333
Registado: 29/4/2015 16:02

Re: Programação em R para Finanças

por Varendia » 8/5/2017 5:58

Vou ver esse livro.

Entretanto estou a ver uns livros online (atraves do meu mestrado, tenho acesso a algumas bibliotecas online)
Apanhei um portugues!

Paulo Cortez
Department of Information Systems
University of Minho
Guimarães, Portugal

O livro e 'Modern Optimization with R'. Nao e financeiro, e de optimizacao de modelos, tem uma seccao sobre time series forecasting
Mas para ja vou ter de recordar o que fiz, reler e continuar.
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por VirtuaGod » 7/5/2017 21:25

Varendia Escreveu:Ora bolas, desapareci 2 meses para acabar os trabalhos do mestrado e pensei que este topico ia acelerar, afinal nada....

Esta semana quero ver se recomeco os meus scripts.

Verdade, eu também pouco tenho programado para além do estritamente essencial (para análises minhas)

Entretanto apareceu um livro interessante:

:arrow: Processamento e Modelagem de Dados Financeiros com o R
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 7/5/2017 18:52

Ora bolas, desapareci 2 meses para acabar os trabalhos do mestrado e pensei que este topico ia acelerar, afinal nada....

Esta semana quero ver se recomeco os meus scripts.
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por VirtuaGod » 27/3/2017 22:26

O b á bá do quantmod.... engraçado para quem está a começar!!

:arrow: https://ntguardian.wordpress.com/2017/03/27/introduction-stock-market-data-r-1/
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por FredericoRocha » 27/3/2017 13:50

Até ao momento estou adorar todas as capacidades do R para se fazer AT de uma forma relativamente automática.
 
Mensagens: 235
Registado: 11/8/2016 14:08

Re: Programação em R para Finanças

por VirtuaGod » 27/3/2017 13:45

FredericoRocha Escreveu:Edit: Entretanto já percebi que para o que eu quero basta fazer o plot(rsi14) sem qualquer outro argumento.

Ainda bem que resolveste :-) Por acaso nunca tentei fazer nada de AT no R, embora saiba que dá.
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por FredericoRocha » 26/3/2017 18:07

Boas,

Estou aqui a ter dificuldade em retirar as datas que vêm da yahoo para um vector. Será que alguém me consegue dar uma ajuda?

A minha duvida esta na linha: datSan <- as.vector(dSan$Date), no objecto datSan vejo la as datas no entanto essa coluna não tem qualquer nome?!

Este é o pequeno código que estou a escrever:

require(TTR)
require(quantmod)

# getSymbols returns a xts object
dSan <- data.frame(getSymbols("SAN", src = "yahoo", from = "2016-09-23", to = "2017-03-23", auto.assign=FALSE))

# # Relative Strength Index (14)
rsi14 <- RSI(Cl(dSan), 14)

# Aqui está a minha duvida !!! Retorna nulo!
datSan <- as.vector(dSan$Date)

plot(rsi14, datSan)

sigup <- ifelse(rsi14 < 40, 1, 0)
sigdn <- ifelse(rsi14 > 60, -1, 0)


Agradeço a ajuda.

Edit: Entretanto já percebi que para o que eu quero basta fazer o plot(rsi14) sem qualquer outro argumento.

Abraço,
Frederico
 
Mensagens: 235
Registado: 11/8/2016 14:08

Re: Programação em R para Finanças

por VirtuaGod » 19/3/2017 16:31

:arrow: Introduction to R for Finance

5 capitulos. Primeiros 3 não aprendi nada (embora fossem bons eu já percebo dos temas na profundidade discutida), mas os últimos dois foram bastante interessantes 8-)
Anexos
Datacamp.PNG
Datacamp.PNG (86.86 KiB) Visualizado 11157 vezes
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por VirtuaGod » 10/3/2017 19:21

LoneWolf Escreveu:Muito giro! é uma cena deste genero que queres fazer pra ti, certo?

Nem por isso. Isto não tem capacidade de previsão, senão estavamos todos ricos. Eu é mais estilo isto:

https://www.portfoliovisualizer.com/backtest-portfolio

O que sao os pontos pretos?

Fecho diário da acção
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por LoneWolf » 10/3/2017 17:06

Muito giro! é uma cena deste genero que queres fazer pra ti, certo?
O que sao os pontos pretos?

Em jeito de brincadeira, mete os simbolos: NVDA, PHR.LS e AKZOY

Abraço
Avatar do Utilizador
 
Mensagens: 1333
Registado: 29/4/2015 16:02

Re: Programação em R para Finanças

por VirtuaGod » 10/3/2017 17:00

Shiny app engraçada:

https://amdatascience.shinyapps.io/ShinyProphet/

Até guardei uns gráficos teste para ver se acerta :mrgreen: :mrgreen: :mrgreen:

O Prophet foi lançado para a comunidade open source há pouco tempo pela Equipa Core Data Science do Facebook's.
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 6/3/2017 4:12

Ate segui os links, mas na pagina da Quandl aparece o url para fazer o download, a explicacao da API key e etc nao vi la a funcao. Ate porque a funcao nem parece precisar do API key.
E assim, bater com a cabeca.. :wall: literalmente
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

Re: Programação em R para Finanças

por VirtuaGod » 5/3/2017 17:22

Varendia Escreveu:tinha procurado mais 5 minutos e tinha feito aquilo numa corrida.

Não tens de procurar. Só tens de clicar nos links que aqui vou deixando quando te respondo e te tento levar pelo caminho que vais precisar no futuro :mrgreen: Eu já fiz o caminho,e tenho-te tentando informar sobre os atalhos mas teimas em querer fazer à tua maneira :mrgreen: Ao menos tens vontade de aprender e eventualmente vais faze-lo por ti próprio, como eu o fiz, mas às vezes tento-te evitar essas 2 horas de seca 8-)
Artigos e estudos: Página repositório dos meus estudos e análises que vou fazendo. Regularmente actualizada. É costume pelo menos mais um estudo por semana. Inclui a análise e acompanhamento das carteiras 4 e 8Fundos.
Portfolio Analyser: Ferramenta para backtests de Fundos e ETFs Europeus

"We don’t need a crystal ball to be successful investors. However, investing as if you have one is almost guaranteed to lead to sub-par results." The Irrelevant Investor
Avatar do Utilizador
 
Mensagens: 5707
Registado: 20/11/2002 21:56
Localização: Porto

Re: Programação em R para Finanças

por Varendia » 5/3/2017 16:16

Descobri uns indices de bonds da ML, junto com uns NAsdaq, os da FRED e mais umas coisas ja devem dar para fazer o primeira simulacao de historico para esticar fundos ate 1999...

Entretanto passei duas horas a fazer um loop para descarregar coisas do Quandl, quando ficou a funcionar .. fui fazer mais uma busca e descobri uma funcao chamada Quandl(), 4 linhas e pronto.. isto ja esta tudo inventado, e preciso e procurar muito antes de comecar para evitar perder tempo, se calhar em vez de levar 2 horas a por o loop a funcionar, limpar as colunas automaticamente, e ficar tudo prontinho, tinha procurado mais 5 minutos e tinha feito aquilo numa corrida.
"Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat." Sun Tzu
 
Mensagens: 215
Registado: 10/12/2012 12:12

AnteriorPróximo

Quem está ligado:
Utilizadores a ver este Fórum: Garfield, jlmt, JoeP, latbal, m-m, macau5m, malakas, nunorpsilva, OCTAMA, PAULOJOAO, peterteam2, xstopper e 134 visitantes