Página 1 de 1

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 7/9/2017 15:44
por VirtuaGod
Ex-Bender Escreveu:Eu posso tentar colocar uma atualização ao QuoteReader, se for necessário.... tens coisas mais "importantes" para fazer Virtua ;-) ....

:mrgreen: :mrgreen: :mrgreen: :mrgreen:

Acho que aquilo é só alterares o link da yahoo (e se calhar em breve vai ser outra vez necessário). O pessoal do open source (Python/Pandas e R) foi o que fizeram. Se quiseres ponho aqui os links dos github 'issues' das respectivas bibliotecas.

Depois tenho de ver se consigo é ligar o teu programa ao metastock do meu amigo.

Como é que usam os dados? A API da yahoo só dá o fecho ajustado, o resto é tudo não ajustado. Só dá para fazer linhas e não velas OHLC!!

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 7/9/2017 13:06
por rsacramento
Ex-Bender Escreveu:Eu posso tentar colocar uma atualização ao QuoteReader, se for necessário

sinto que não te citei em vão (embora nunca tenha usado o teu programa) :D

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 7/9/2017 12:58
por Ex-Bender
Eu posso tentar colocar uma atualização ao QuoteReader, se for necessário.... tens coisas mais "importantes" para fazer Virtua ;-) ....

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 7/9/2017 8:55
por MADxMAX
Boas VirtuaGod

Eu deixo-te aqui alguns printscreens que talvez te elucidem.

Qualquer coisa, avisa para que te possa ajudar...

MADxMAX :-k

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 19:56
por rsacramento
VirtuaGod Escreveu:O pessoal que tem o metastock actualiza automaticamente as versões?

as novas versões vão sendo pagas
VirtuaGod Escreveu: É que o novo já lê CSV mas os antigos acho que não. Se não o que era que o programa do bender fazia?

não tenho ideia nenhuma daquilo que o programa do bender fazia concretamente, mas penso que usava-se para descarregar os dados do yahoo finance para ver os gráficos com o metastock

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 19:31
por VirtuaGod
MADxMAX Escreveu:Também fui um dos utilizadores do MLDownloader que desde à uns meses deixou de funcionar. Ainda consultei vários forums estrangeiros onde se reclamava deste assunto, mas o problema vinha da yahoo.
Realmente o programa era super prático que apenas com um click te actualizava a base de dados directamente no metastock

É isso que estou a tentar perceber. Sacava ficheiros CSV e o metastock lia? Os dados open high low close é o que o pessoal usava? É que esses dados na yahoo não vêm ajustados a dividendos nem splits. O único que vem ajustado é o fecho. O pessoal só usava o fecho na cotações?

como é que resolvias os ajustes a spinoffs, aumentos de capital, etc: no próprio meta? é que agora no metastock XV não consegues mexer nos dados...

Eu não faço ideia como o metastock funciona por isso nem sei se conseguia fazer isso mesmo se desse para o fazer. Os dados de fecho já vêm automaticamente ajustados da yahoo. Por outro lado serviços como a Quandl até têm os dados de empresas americanos com o OHLC ajustados, o que até seria um avanço ao software do bender.

De qualquer forma isso dá para fazer no R. Não pretendo fazer dada a dificuldade. Mas de qualquer das formas pelo menos as empresas americanas dão o OHCL ajustado, o resto só o fecho ajustado da yahoo (algumas grandes empresas a nível mundial e os ETFs americanos).

Não sei se ajuda mas por vezes uso esta função

Usas essa função onde? no programa do bender? Não conheço essa linguagem por isso é bastante mais simples da estaca zero para mim.

Agradeço a quem se ofereceu a ajudar na parte de programação mas honestamente isso é o mais simples. Tenho é de perceber como o programa funcionava e as necessidades das pessoas para poder criar um substituto. Se não sei o que é que preciso de fazer não vale a pena programar :wink: Por outro lado depois de falar melhor com quem pretende este software já deverei saber melhor as necessidades.

O pessoal que tem o metastock actualiza automaticamente as versões? É que o novo já lê CSV mas os antigos acho que não. Se não o que era que o programa do bender fazia?

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 14:49
por Thoth
Não sei se ajuda mas por vezes uso esta função

Código: Selecionar todos
Function YahooFinance(ticker As String, item As String) As Double

    Dim strURL As String, strCSV As Double, itemFound As Integer, tag As String

    itemFound = 0
    If item = "ask" Then
        tag = "a"
        itemFound = 1
    ElseIf item = "bid" Then
        tag = "b"
        itemFound = 1
    ElseIf item = "bookvalue" Then
        tag = "b4"
        itemFound = 1
    ElseIf item = "change" Then
        tag = "c1"
        itemFound = 1
    ElseIf item = "afterhourschangerealtime" Then
        tag = "c8"
        itemFound = 1
    ElseIf item = "tradedate" Then
        tag = "d2"
        itemFound = 1
    ElseIf item = "epsestimatecurrentyear" Then
        tag = "e7"
        itemFound = 1
    ElseIf item = "floatshares" Then
        tag = "f6"
        itemFound = 1
    ElseIf item = "52weeklow" Then
        tag = "j"
        itemFound = 1
    ElseIf item = "annualizedgain" Then
        tag = "g3"
        itemFound = 1
    ElseIf item = "holdingsgainrealtime" Then
        tag = "g3"
        itemFound = 1
    ElseIf item = "marketcapitalization" Then
        tag = "j1"
        itemFound = 1
    ElseIf item = "percentchangefrom52weekhigh" Then
        tag = "k5"
        itemFound = 1
    ElseIf item = "daysrangerealtime" Then
        tag = "m2"
        itemFound = 1
    ElseIf item = "changefrom200daymovingaverage" Then
        tag = "m5"
        itemFound = 1
    ElseIf item = "percentchangefrom50daymovingaverage" Then
        tag = "m8"
        itemFound = 1
    ElseIf item = "open" Then
        tag = "o"
        itemFound = 1
    ElseIf item = "changeinpercent" Then
        tag = "p2"
        itemFound = 1
    ElseIf item = "exdividenddate" Then
        tag = " q"
        itemFound = 1
    ElseIf item = "peratiorealtime" Then
        tag = "r2"
        itemFound = 1
    ElseIf item = "priceepsestimatenextyear" Then
        tag = "r7"
        itemFound = 1
    ElseIf item = "shortratio" Then
        tag = "s7"
        itemFound = 1
    ElseIf item = "tickertrend" Then
        tag = "t7"
        itemFound = 1
    ElseIf item = "holdingsvalue" Then
        tag = "v1"
        itemFound = 1
    ElseIf item = "daysvaluechange" Then
        tag = "w1"
        itemFound = 1
    ElseIf item = "dividendyield" Then
        tag = "y"
        itemFound = 1
    ElseIf item = "averagedailyvolume" Then
        tag = "a2"
        itemFound = 1
    ElseIf item = "askrealtime" Then
        tag = "b2"
        itemFound = 1
    ElseIf item = "bidsize" Then
        tag = "b6"
        itemFound = 1
    ElseIf item = "commision" Then
        tag = "c3"
        itemFound = 1
    ElseIf item = "dividendshare" Then
        tag = "d"
        itemFound = 1
    ElseIf item = "earningspershare" Then
        tag = "e"
        itemFound = 1
    ElseIf item = "epsestimatenextyear" Then
        tag = "e8"
        itemFound = 1
    ElseIf item = "days low" Then
        tag = "g"
        itemFound = 1
    ElseIf item = "52weekhigh" Then
        tag = "k"
        itemFound = 1
    ElseIf item = "holdsingain" Then
        tag = "g4"
        itemFound = 1
    ElseIf item = "moreinfo" Then
        tag = "i"
        itemFound = 1
    ElseIf item = "marketcaprealtime" Then
        tag = "j3"
        itemFound = 1
    ElseIf item = "percentchangefrom52weeklow" Then
        tag = "j6"
        itemFound = 1
    ElseIf item = "lasttradesize" Then
        tag = "k3"
        itemFound = 1
    ElseIf item = "lasttradewithtime" Then
        tag = "l"
        itemFound = 1
    ElseIf item = "lowlimit" Then
        tag = "l3"
        itemFound = 1
    ElseIf item = "50movingaverage" Then
        tag = "m3"
        itemFound = 1
    ElseIf item = "percentchangefrom200daymovingaverage" Then
        tag = "m6"
        itemFound = 1
    ElseIf item = "name" Then
        tag = "n"
        itemFound = 1
    ElseIf item = "previousclose" Then
        tag = "p"
        itemFound = 1
    ElseIf item = "pricesales" Then
        tag = "p5"
        itemFound = 1
    ElseIf item = "peratio" Then
        tag = "r"
        itemFound = 1
    ElseIf item = "pegratio" Then
        tag = "r5"
        itemFound = 1
    ElseIf item = "symbol" Then
        tag = "s"
        itemFound = 1
    ElseIf item = "lasttradetime" Then
        tag = "t1"
        itemFound = 1
    ElseIf item = "1yeartargetprice" Then
        tag = "t8"
        itemFound = 1
    ElseIf item = "holdingsvaluerealtime" Then
        tag = "v7"
        itemFound = 1
    ElseIf item = "daysvaluechangerealtime" Then
        tag = "w4"
        itemFound = 1
    ElseIf item = "asksize" Then
        tag = "a5"
        itemFound = 1
    ElseIf item = "bidrealtime" Then
        tag = "b3"
        itemFound = 1
    ElseIf item = "change&percentchange" Then
        tag = "c"
        itemFound = 1
    ElseIf item = "changerealtime" Then
        tag = "c6"
        itemFound = 1
    ElseIf item = "lasttradedate" Then
        tag = "d1"
        itemFound = 1
    ElseIf item = "errorindication" Then
        tag = "e1"
        itemFound = 1
    ElseIf item = "epsestimatenextquarter" Then
        tag = "e9"
        itemFound = 1
    ElseIf item = "dayshigh" Then
        tag = "h"
        itemFound = 1
    ElseIf item = "holdingsgainpercent" Then
        tag = "g1"
        itemFound = 1
    ElseIf item = "holdsingsgainpercentrealtime" Then
        tag = "g5"
        itemFound = 1
    ElseIf item = "orderbookrealtime" Then
        tag = "i5"
        itemFound = 1
    ElseIf item = "ebitda" Then
        tag = "j4"
        itemFound = 1
    ElseIf item = "lasttraderealtimewithtime" Then
        tag = "k1"
        itemFound = 1
    ElseIf item = "changefrom52weekhigh" Then
        tag = "k4"
        itemFound = 1
    ElseIf item = "lasttradepriceonly" Then
        tag = "l1"
        itemFound = 1
    ElseIf item = "daysrange" Then
        tag = "m"
        itemFound = 1
    ElseIf item = "200daymovingaverage" Then
        tag = "m4"
        itemFound = 1
    ElseIf item = "notes" Then
        tag = "n4"
        itemFound = 1
    ElseIf item = "pricepaid" Then
        tag = "p1"
        itemFound = 1
    ElseIf item = "pricebook" Then
        tag = "p6"
        itemFound = 1
    ElseIf item = "dividendpaydate" Then
        tag = "r1"
        itemFound = 1
    ElseIf item = "priceepsestimatecurrentyear" Then
        tag = "r6"
        itemFound = 1
    ElseIf item = "sharesowned" Then
        tag = "s1"
        itemFound = 1
    ElseIf item = "tradelinks" Then
        tag = "t6"
        itemFound = 1
    ElseIf item = "volume" Then
        tag = "v"
        itemFound = 1
    ElseIf item = "52weekrange" Then
        tag = "w"
        itemFound = 1
    ElseIf item = "stockexchange" Then
        tag = "x"
        itemFound = 1
    ElseIf item = "changepercentrealtime" Then
        tag = "k2"
        itemFound = 1
    ElseIf item = "changefrom52weeklow" Then
        tag = "j5"
        itemFound = 1
    End If
   

    If itemFound = 1 Then
   
        strURL = "http://download.finance.yahoo.com/d/quotes.csv?s=" & ticker & "&f=" & tag
        Set XMLHTTP = CreateObject("MSXML2.XMLHTTP")
        XMLHTTP.Open "GET", strURL, False
        XMLHTTP.send
        YahooFinance = CDbl(Strings.Replace(Strings.Replace(XMLHTTP.responseText, vbLf, ""), ".", ","))
        Set XMLHTTP = Nothing
       
    Else
   
        YahooFinance = "Item Not Found"
       
    End If

    End Function


Range("B6").Value = YahooFinance("CTT.LS", "lasttradepriceonly")

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 14:26
por rsacramento
como é que resolvias os ajustes a spinoffs, aumentos de capital, etc: no próprio meta? é que agora no metastock XV não consegues mexer nos dados...

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 14:08
por MADxMAX
Boas Virtua e companhia...

Também fui um dos utilizadores do MLDownloader que desde à uns meses deixou de funcionar. Ainda consultei vários forums estrangeiros onde se reclamava deste assunto, mas o problema vinha da yahoo.
Realmente o programa era super prático que apenas com um click te actualizava a base de dados directamente no metastock, desde então ando a procurar alternativas, pois apesar dos meus investimentos serem esporádicos e de médio longo prazo, não tem a necessidade de fonte com elevado custo.

Qualquer coisa que também possa ajudar, só apitar...

MADxMAX

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 9:13
por LoneWolf
VG,
tas a dizer bater código? Se sim, gostaria de participar. Podemos falar em privado se quiseres esclarecer algumas coisas!

Cumprimentos,
LW

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 6/9/2017 0:27
por VirtuaGod
rsacramento Escreveu:se a memória não me atraiçoa havia um utilizador chamado Bender ou parecido que era uma espécie de Papa da coisa...

Li o tópico assim por alto, não tive paciência para ler tudo, mas aquilo que me proponho a fazer é algo que me parece semelhante. Dependendo se há interesse poderei fazer algo mais completo (aí não duraria apenas uma hora, mas como me parece um projecto engraçado nem me importava muito).

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 5/9/2017 22:37
por rsacramento
bruxo :lol:

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 5/9/2017 22:06
por VirtuaGod
rsacramento Escreveu:(já agora, uso o downloader da Reuters - o dataLink)

Suponho que isso seja pago :?

Re: ML Downloader e softwares semelhantes

MensagemEnviado: 5/9/2017 22:02
por rsacramento
se a memória não me atraiçoa havia um utilizador chamado Bender ou parecido que era uma espécie de Papa da coisa...

o que afectou muitos utilizadores aqui do fórum foi ficarem pendurados quando esse software que referes deixou de trabalhar como deve ser...

(já agora, uso o downloader da Reuters - o dataLink)

ML Downloader e softwares semelhantes

MensagemEnviado: 5/9/2017 21:51
por VirtuaGod
Já há uns meses falei com um amigo que se queixou de o ML downloader ter deixado de funcionar mas como apenas o usava esporadicamente nem se aborreceu com o sucedido e eu nem liguei. Mas hoje falei com outra pessoa que se queixou do mesmo MAS que o usava com frequência e lhe dava imenso jeito.

Venho fazer este post com dois intuitos:
. Saber como é que o programa funcionava/funciona e qual a integração dele noutros softwares como o metastock/metatrader. No metastock dá para importar dados de CSV ou tem de ser numa extensão proprietária qualquer deles?
. Qual seria o interesse da comunidade ter um software que fizesse o download de dados diários de longo prazo (nomeadamente americano) para .CSV?

A minha ideia é mesmo saber como aquilo funciona porque não conseguindo com certeza consertar um software fechado queria saber até que ponto conseguiria fazer um semelhante, porque sei que aquilo apenas usava a API da Yahoo. Se o software apenas fazia um ficheiro .CSV para importar no metastock faço isso numa hora e partilho aqui na boa, mas suponho que haja mais alguma nuance para fazer as pessoas pagar 50 euros por aquilo.

Se usam outro software que esteja funcional podem dizer. Partilhem o vosso workflow 8-)

Obr